{ "timestamp": "2026-04-14 04:27:00.8024", "level": "Error", "severity": "ERROR", "message": "An item with the same key has already been added.", "stackTrace": "System.ArgumentException: An item with the same key has already been added.\r\n   at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)\r\n   at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)\r\n   at System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](IEnumerable`1 source, Func`2 keySelector, Func`2 elementSelector, IEqualityComparer`1 comparer)\r\n   at IncidentReporter.API.BLL.OsmoguardBLL.<UpdateRoleAsync>d__12.MoveNext() in C:\\GitLab-Runner\\builds\\27n6lYj0J\\0\\incident-reporter\\incident-reporter-api\\IncidentReporter\\IncidentReporter.API\\BLL\\OsmoguardBLL.cs:line 499" }
{ "timestamp": "2026-04-14 04:27:00.8689", "level": "Error", "severity": "ERROR" }
{ "timestamp": "2026-04-14 04:27:24.7154", "level": "Error", "severity": "ERROR", "message": "An item with the same key has already been added.", "stackTrace": "System.ArgumentException: An item with the same key has already been added.\r\n   at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)\r\n   at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)\r\n   at System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](IEnumerable`1 source, Func`2 keySelector, Func`2 elementSelector, IEqualityComparer`1 comparer)\r\n   at IncidentReporter.API.BLL.OsmoguardBLL.<UpdateRoleAsync>d__12.MoveNext() in C:\\GitLab-Runner\\builds\\27n6lYj0J\\0\\incident-reporter\\incident-reporter-api\\IncidentReporter\\IncidentReporter.API\\BLL\\OsmoguardBLL.cs:line 499" }
{ "timestamp": "2026-04-14 04:27:24.7154", "level": "Error", "severity": "ERROR" }
{ "timestamp": "2026-04-14 04:37:55.6408", "level": "Error", "severity": "ERROR", "message": "The given header was not found.", "stackTrace": "System.InvalidOperationException: The given header was not found.\r\n   at System.Net.Http.Headers.HttpHeaders.GetValues(String name)\r\n   at IncidentReporter.API.Handlers.AcmAuthorise.GetToken(HttpActionContext actionContext) in C:\\GitLab-Runner\\builds\\27n6lYj0J\\0\\incident-reporter\\incident-reporter-api\\IncidentReporter\\IncidentReporter.API\\Handlers\\AcmAuthorise.cs:line 214\r\n   at IncidentReporter.API.Handlers.AcmAuthorise.OnActionExecuting(HttpActionContext actionContext) in C:\\GitLab-Runner\\builds\\27n6lYj0J\\0\\incident-reporter\\incident-reporter-api\\IncidentReporter\\IncidentReporter.API\\Handlers\\AcmAuthorise.cs:line 37\r\n   at System.Web.Http.Filters.ActionFilterAttribute.OnActionExecutingAsync(HttpActionContext actionContext, CancellationToken cancellationToken)\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Web.Http.Filters.ActionFilterAttribute.<ExecuteActionFilterAsyncCore>d__0.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Web.Http.Filters.ActionFilterAttribute.<ExecuteActionFilterAsyncCore>d__0.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Web.Http.Controllers.ActionFilterResult.<ExecuteAsync>d__2.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Web.Http.Controllers.ExceptionFilterResult.<ExecuteAsync>d__0.MoveNext()" }
{ "timestamp": "2026-04-14 06:47:18.1517", "level": "Error", "severity": "ERROR", "message": "Cannot add or update a child row: a foreign key constraint fails (`qa_stg_oqsha`.`user_history`, CONSTRAINT `user_history_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE)", "stackTrace": "MySql.Data.MySqlClient.MySqlException (0x80004005): Cannot add or update a child row: a foreign key constraint fails (`qa_stg_oqsha`.`user_history`, CONSTRAINT `user_history_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE)\r\n   at MySql.Data.MySqlClient.MySqlStream.ReadPacket()\r\n   at MySql.Data.MySqlClient.NativeDriver.GetResult(Int32& affectedRow, Int64& insertedId)\r\n   at MySql.Data.MySqlClient.Driver.NextResult(Int32 statementId, Boolean force)\r\n   at MySql.Data.MySqlClient.MySqlDataReader.NextResult()\r\n   at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior behavior)\r\n   at MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuery()\r\n   at System.Data.Common.DbCommand.ExecuteNonQueryAsync(CancellationToken cancellationToken)\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at Dapper.SqlMapper.<ExecuteImplAsync>d__39.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at IncidentReporter.DAL.Repositories.VersionsRepo.<InsertUserHistoryAsync>d__9.MoveNext() in C:\\GitLab-Runner\\builds\\27n6lYj0J\\0\\incident-reporter\\incident-reporter-api\\IncidentReporter\\IncidentReporter.DAL\\Repositories\\VersionsRepo.cs:line 194\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at IncidentReporter.API.BLL.VersionsBLL.<GetAllModuleVersions>d__6.MoveNext() in C:\\GitLab-Runner\\builds\\27n6lYj0J\\0\\incident-reporter\\incident-reporter-api\\IncidentReporter\\IncidentReporter.API\\BLL\\VersionsBLL.cs:line 68" }
{ "timestamp": "2026-04-14 06:47:18.1964", "level": "Error", "severity": "ERROR" }
{ "timestamp": "2026-04-14 13:07:24.3590", "level": "Error", "severity": "ERROR", "message": "Invalid salt version", "stackTrace": "BCrypt.Net.SaltParseException: Invalid salt version\r\n   at BCrypt.Net.BCrypt.HashPassword(String inputKey, String salt, Boolean enhancedEntropy, HashType hashType)\r\n   at BCrypt.Net.BCrypt.Verify(String text, String hash, Boolean enhancedEntropy, HashType hashType)\r\n   at IncidentReporter.DAL.Repositories.UsersRepo.GetUserIDByEmailPassword(String email, String password) in C:\\GitLab-Runner\\builds\\27n6lYj0J\\0\\incident-reporter\\incident-reporter-api\\IncidentReporter\\IncidentReporter.DAL\\Repositories\\UsersRepo.cs:line 354\r\n   at IncidentReporter.API.BLL.UsersBLL.<LoginUsingPassword>d__22.MoveNext() in C:\\GitLab-Runner\\builds\\27n6lYj0J\\0\\incident-reporter\\incident-reporter-api\\IncidentReporter\\IncidentReporter.API\\BLL\\UsersBLL.cs:line 1132" }
{ "timestamp": "2026-04-14 13:07:24.5260", "level": "Error", "severity": "ERROR" }
{ "timestamp": "2026-04-14 17:58:51.5453", "level": "Error", "severity": "ERROR", "message": "Error converting value {null} to type 'System.Int32'. Path 'ConfigChecksJson.Sections[0].OrganisationId', line 1, position 343.", "stackTrace": "Newtonsoft.Json.JsonSerializationException: Error converting value {null} to type 'System.Int32'. Path 'ConfigChecksJson.Sections[0].OrganisationId', line 1, position 343. ---> System.InvalidCastException: Null object cannot be converted to a value type.\r\n   at System.Convert.ChangeType(Object value, Type conversionType, IFormatProvider provider)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.EnsureType(JsonReader reader, Object value, CultureInfo culture, JsonContract contract, Type targetType)\r\n   --- End of inner exception stack trace ---\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.EnsureType(JsonReader reader, Object value, CultureInfo culture, JsonContract contract, Type targetType)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, Object target)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList(IList list, JsonReader reader, JsonArrayContract contract, JsonProperty containerProperty, String id)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, Object target)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, Object target)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)\r\n   at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)\r\n   at Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)\r\n   at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)\r\n   at IncidentReporter.API.BLL.LibraryBLL.<CreateLibraryDocumentAsync>d__12.MoveNext() in C:\\GitLab-Runner\\builds\\27n6lYj0J\\0\\incident-reporter\\incident-reporter-api\\IncidentReporter\\IncidentReporter.API\\BLL\\LibraryBLL.cs:line 319" }
{ "timestamp": "2026-04-14 17:58:51.5936", "level": "Error", "severity": "ERROR" }
{ "timestamp": "2026-04-14 18:00:02.2491", "level": "Error", "severity": "ERROR", "message": "Error converting value {null} to type 'System.Int32'. Path 'ConfigChecksJson.Sections[0].OrganisationId', line 1, position 346.", "stackTrace": "Newtonsoft.Json.JsonSerializationException: Error converting value {null} to type 'System.Int32'. Path 'ConfigChecksJson.Sections[0].OrganisationId', line 1, position 346. ---> System.InvalidCastException: Null object cannot be converted to a value type.\r\n   at System.Convert.ChangeType(Object value, Type conversionType, IFormatProvider provider)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.EnsureType(JsonReader reader, Object value, CultureInfo culture, JsonContract contract, Type targetType)\r\n   --- End of inner exception stack trace ---\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.EnsureType(JsonReader reader, Object value, CultureInfo culture, JsonContract contract, Type targetType)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, Object target)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList(IList list, JsonReader reader, JsonArrayContract contract, JsonProperty containerProperty, String id)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, Object target)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, Object target)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)\r\n   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)\r\n   at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)\r\n   at Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)\r\n   at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)\r\n   at IncidentReporter.API.BLL.LibraryBLL.<CreateLibraryDocumentAsync>d__12.MoveNext() in C:\\GitLab-Runner\\builds\\27n6lYj0J\\0\\incident-reporter\\incident-reporter-api\\IncidentReporter\\IncidentReporter.API\\BLL\\LibraryBLL.cs:line 319" }
{ "timestamp": "2026-04-14 18:00:02.2491", "level": "Error", "severity": "ERROR" }
{ "timestamp": "2026-04-14 18:03:46.4000", "level": "Error", "severity": "ERROR", "stackTrace": "System.Web.HttpException (0x80004005)\r\n   at System.Web.Util.FileUtil.CheckSuspiciousPhysicalPath(String physicalPath)\r\n   at System.Web.HttpApplication.PipelineStepManager.ValidateHelper(HttpContext context)" }
{ "timestamp": "2026-04-14 18:03:46.4581", "level": "Error", "severity": "ERROR", "stackTrace": "System.Web.HttpException (0x80004005)\r\n   at System.Web.Util.FileUtil.CheckSuspiciousPhysicalPath(String physicalPath)\r\n   at System.Web.HttpApplication.PipelineStepManager.ValidateHelper(HttpContext context)" }
