Ich möchte die vollständig qualifizierte URL der Anfrage bei der Anmeldung einbeziehen. Wenn verfügbar, möchte ich einen Ereignisprotokollierungsbereich (Kontexteigenschaft in Serilog) wie {RequestUrl}
in meiner Protokollierungsvorlage verwenden. Woher weiß ich, ob bereits eine Eigenschaft verfügbar ist, die ich verwenden kann, oder wenn ich dies manuell tun muss?Welche Protokollbereiche sind standardmäßig verfügbar?
Ich kenne den folgenden Eigenschaften:
ActionId
ActionName // Like ActionId from aspnet/Mvc (Microsoft.AspNetCore.Mvc.Internal.MvcCoreLoggerExtensions.ActionLogScope)
Level // Gives the level e.g. Warning
RequestId // Can be used for event correlation
RequestPath // Like RequestId from aspnet/Hosting (Microsoft.AspNetCore.Hosting.Internal.HostingLoggerExtensions.HostingLogScope)
SourceContext // Probably from serilog. Gives the TCategoryName of the ILogger e.g. MyNamespace.MyController
Wo ist eine Übersicht über alle Eigenschaften während einer Anforderung standardmäßig unterstützt? Oder ist es möglich, alle verfügbaren Eigenschaften zur Laufzeit zu bekommen?
Amts [docs] (https://docs.microsoft.com/en-us/aspnet/core/fundamentals/logging # scopes) nicht viel erwähnen ... –
Wenn Sie Seq angeschlossen haben, können Sie wählen Sie Namen() aus Stream, um eine eindeutige Liste der Eigenschaften, die protokolliert wurden erhalten. Nicht sicher, ob das hilft, aber nicht viel anderes, woran ich denken kann. Viel Glück! –
@NicholasBlumhardt Leider benutze ich Seq nicht :(Vielleicht kann jemand, der es verwendet, die vollständige Liste der Eigenschaften geben. – user764754