diff --git a/src/Admin/Models/LogModel.cs b/src/Admin/Models/LogModel.cs index 744f0e8767..c4ddc8c1c5 100644 --- a/src/Admin/Models/LogModel.cs +++ b/src/Admin/Models/LogModel.cs @@ -16,6 +16,7 @@ namespace Bit.Admin.Models public string MessageTemplate { get; set; } public Error Exception { get; set; } public IDictionary Properties { get; set; } + public string Project => Properties?.ContainsKey("Project") ?? false ? Properties["Project"].ToString() : null; [JsonObject(MemberSerialization.OptIn)] public class Error : Exception, ISerializable diff --git a/src/Admin/Views/Logs/Index.cshtml b/src/Admin/Views/Logs/Index.cshtml index 6cb18d9762..98a294de4a 100644 --- a/src/Admin/Views/Logs/Index.cshtml +++ b/src/Admin/Views/Logs/Index.cshtml @@ -13,6 +13,7 @@   Timestamp + Project Level Message @@ -21,7 +22,7 @@ @if(!Model.Items.Any()) { - No results to list. + No results to list. } else @@ -35,6 +36,7 @@ @log.Timestamp.ToString() + @(string.IsNullOrWhiteSpace(log.Project) ? "-" : log.Project) @log.Level @log.MessageTruncated diff --git a/src/Core/Utilities/LoggerFactoryExtensions.cs b/src/Core/Utilities/LoggerFactoryExtensions.cs index face7b0f08..aabb65d031 100644 --- a/src/Core/Utilities/LoggerFactoryExtensions.cs +++ b/src/Core/Utilities/LoggerFactoryExtensions.cs @@ -35,7 +35,9 @@ namespace Bit.Core.Utilities CoreHelpers.SettingHasValue(globalSettings?.DocumentDb.Key)) { config.WriteTo.AzureDocumentDB(new Uri(globalSettings.DocumentDb.Uri), - globalSettings.DocumentDb.Key, timeToLive: TimeSpan.FromDays(7)); + globalSettings.DocumentDb.Key, timeToLive: TimeSpan.FromDays(7)) + .Enrich.FromLogContext() + .Enrich.WithProperty("Project", globalSettings.ProjectName); } else if(CoreHelpers.SettingHasValue(globalSettings?.Sentry.Dsn)) { @@ -49,7 +51,9 @@ namespace Bit.Core.Utilities } else if(CoreHelpers.SettingHasValue(globalSettings.LogDirectory)) { - config.WriteTo.RollingFile($"{globalSettings.LogDirectory}/{globalSettings.ProjectName}/{{Date}}.txt"); + config.WriteTo.RollingFile($"{globalSettings.LogDirectory}/{globalSettings.ProjectName}/{{Date}}.txt") + .Enrich.FromLogContext() + .Enrich.WithProperty("Project", globalSettings.ProjectName); } var serilog = config.CreateLogger();