BPP.AWS.Logger.AspNetCore.Structured
1.0.7
dotnet add package BPP.AWS.Logger.AspNetCore.Structured --version 1.0.7
NuGet\Install-Package BPP.AWS.Logger.AspNetCore.Structured -Version 1.0.7
<PackageReference Include="BPP.AWS.Logger.AspNetCore.Structured" Version="1.0.7" />
paket add BPP.AWS.Logger.AspNetCore.Structured --version 1.0.7
#r "nuget: BPP.AWS.Logger.AspNetCore.Structured, 1.0.7"
// Install BPP.AWS.Logger.AspNetCore.Structured as a Cake Addin
#addin nuget:?package=BPP.AWS.Logger.AspNetCore.Structured&version=1.0.7
// Install BPP.AWS.Logger.AspNetCore.Structured as a Cake Tool
#tool nuget:?package=BPP.AWS.Logger.AspNetCore.Structured&version=1.0.7
aws-logging-dotnet-structured
enhances .NET Libraries for integrating Amazon CloudWatch Logs with Structured Logging support, using JSON.
This library provides structured Logging support suitable for AWS Logging from within AspNetCore. Structured Logs are in JSON form, including a rendered message, unary scope properties (tags), and KeyValuePair scope properties. An extention method is provided to register a structed AWS log provider; other than that there's no real AWS dependency here. The AWS Logging configuration provided should NOT include a custom formatter.
Use AddAwsLoggingStructured extension method (namespace AWS.Logger.AspNetCore.Structured) to add structured AWS logging to an ILoggingBuilder. Use AddAwsLoggingSimple extension method to add AWS logging that isn't structured (and isn't JSON), but is augmented with the log level and category name, in the form LEVEL [Category] - Rest of message Optionally, implement IAugmentingRenderer, and pass it to an AugmentingLoggerProvider instance, in order to provide structured or unstructured (augmented with additional facts as desired) AWS logging.
AWS CloudWatch Insight query service works great for querying the resulting structured logs, including discovered property support. Example filter: scope.RequestID like /123/
Product | Versions |
---|---|
.NET | net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows net7.0 net7.0-android net7.0-ios net7.0-maccatalyst net7.0-macos net7.0-tvos net7.0-windows |
.NET Core | netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1 |
.NET Standard | netstandard2.0 netstandard2.1 |
.NET Framework | net461 net462 net463 net47 net471 net472 net48 net481 |
MonoAndroid | monoandroid |
MonoMac | monomac |
MonoTouch | monotouch |
Tizen | tizen40 tizen60 |
Xamarin.iOS | xamarinios |
Xamarin.Mac | xamarinmac |
Xamarin.TVOS | xamarintvos |
Xamarin.WatchOS | xamarinwatchos |
-
.NETCoreApp 2.1
- AWS.Logger.AspNetCore (>= 1.4.1)
- Microsoft.Extensions.Logging (>= 2.1.1)
- Microsoft.Extensions.Logging.Abstractions (>= 2.1.1)
- newtonsoft.json (>= 10.0.3)
- system.collections.immutable (>= 1.3.1)
-
.NETStandard 2.0
- AWS.Logger.AspNetCore (>= 1.4.1)
- Microsoft.Extensions.Logging (>= 2.1.1)
- Microsoft.Extensions.Logging.Abstractions (>= 2.1.1)
- newtonsoft.json (>= 10.0.3)
- system.collections.immutable (>= 1.3.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
don't write copy of exception after structured part