TheOmenDen.Shared.Logging
2.3.20.1750
Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package TheOmenDen.Shared.Logging --version 2.3.20.1750
NuGet\Install-Package TheOmenDen.Shared.Logging -Version 2.3.20.1750
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="TheOmenDen.Shared.Logging" Version="2.3.20.1750" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add TheOmenDen.Shared.Logging --version 2.3.20.1750
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: TheOmenDen.Shared.Logging, 2.3.20.1750"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install TheOmenDen.Shared.Logging as a Cake Addin #addin nuget:?package=TheOmenDen.Shared.Logging&version=2.3.20.1750 // Install TheOmenDen.Shared.Logging as a Cake Tool #tool nuget:?package=TheOmenDen.Shared.Logging&version=2.3.20.1750
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
TheOmenDen Shared Logging
This library contains a basic logging implementation and some simple extensions that can be used in addition to your normal logging providers.
1st note: this library depends on The Omen Den Shared Library.
2nd note, this library is not affiliated with the fine folks at Serilog, however it does define an enricher and extensions for Serilog consumers. Credit to Serilog
3rd note, this library makes use of MurmurHash which can be found here: MurmurHash
We hope to accomplish the following things within the library, and will continue to provide maintenance and a plan for future improvements.
1. Templates
Errors
- Custom constant string error message templates.- Allows for custom error messages to be displayed and logged out more efficiently.
EventIds
- Our custom extensions onMicrosoft.Extensions.Logging.EventId
struct.- Allows for more accurate tracing of events and where they occurred in an application.
Logging
- Provides basic constant string logging messaging templates.- This enables you to list Request Pathing, and Logging context Pathing with these templates.
StartUp
- Provides basic constant string templates for bootstrapping an application.
2. Extensions
LoggerExtensions
- Provides extensions on the
Microsoft.Extensions.Logging.ILogger
interfaceTraceMessageProfiling
- Allows for the logging of milliseconds an operation within the application took to finish.
TraceMessageValidationFailed
- Allows for the logging of validation failures.
TraceBeforeValidatingMessage
- Allows for the logging before a validation event takes place.
TraceMessageModelBinderUsed
- Allows the logging of a Model binder operation that was used in the process of validation.
TraceMessageValidationPassed
- Logs out a successful message when a validation event is successful.
- Provides extensions on the
3. Serilog
EventTypeEnricher
- A naive implementation for enriching a logging context with a hashed Id.
RequestLoggingConfigurer
- EnrichFromRequest
- Allows for the
Serilog.IDiagnosticContext
to log out properties from a providedMicrosoft.AspNetCire.Http.HttpContext
- Allows for the
- EnrichFromRequest
EnvironmentLoggerConfigurationExtensions
- Allows for registering the
EventTypeEnricher
using theEnrich().WithEventType()
syntax in your Serilog logger configuration.
- Allows for registering the
4. Http Message Logging
MetaData
- A simple structure meant to provide basic metadata information for Http Request and Responses.
- Provides a way to see the information logged in a more structured form.
DelegatingLogHandler
- A
DelegatingHandler
implementation that allows for logging of specific properties in anHttpMessage
. - Comes with a set of of extensions in
HttpMessageHandlerRegistrationExtensions.cs
to allow you to register the handler itself as aTransient
service, then onto HttpClients.- Can also be configured to register on ALL clients defined in the same service collection.
- A
5. Options
ApiExceptionOptions
andOptionsDelegates
- A simple container for actions that allow for log level adjustments and exception detail customizations
- These can be configured within middleware in your .NET applications.
AddResponseDetails
- Allows one to define how specific exceptions are logged out to a Payload's message.
- Meant to be used in conjunction with
OptionsDelegates.UpdateApiErrorResponse
DetermineLogLevel
- A way to determine how certain exceptions are reported in the logs
- Meant to be combined with
OptionsDelegates.DetermineLogLevel
- which allows for certain exceptions to be reported with aLogLevel.Critical
instead ofLogLevel.Error
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net6.0
- Microsoft.Data.SqlClient (>= 5.1.0)
- murmurhash (>= 1.0.3)
- Serilog (>= 2.12.0)
- Serilog.AspNetCore (>= 6.1.0)
- TheOmenDen.Shared (>= 2023.3.17.2238)
-
net7.0
- Microsoft.Data.SqlClient (>= 5.1.0)
- murmurhash (>= 1.0.3)
- Serilog (>= 2.12.0)
- Serilog.AspNetCore (>= 6.1.0)
- TheOmenDen.Shared (>= 2023.3.17.2238)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
2.12.24.2336 | 276 | 12/25/2023 |
2.3.20.1750 | 2,675 | 3/20/2023 |
2.2.10.2201 | 361 | 2/11/2023 |
1.11.13.2247 | 492 | 11/14/2022 |
1.10.8.134 | 2,180 | 10/8/2022 |
1.8.27.435 | 967 | 8/27/2022 |
1.7.26.1426 | 704 | 7/26/2022 |
Updating underlying dependencies for Serilog.AspNetCore and TheOmenDen.Shared main library