RockLib.Logging
2.0.0
Prefix Reserved
See the version list below for details.
dotnet add package RockLib.Logging --version 2.0.0
NuGet\Install-Package RockLib.Logging -Version 2.0.0
<PackageReference Include="RockLib.Logging" Version="2.0.0" />
paket add RockLib.Logging --version 2.0.0
#r "nuget: RockLib.Logging, 2.0.0"
// Install RockLib.Logging as a Cake Addin #addin nuget:?package=RockLib.Logging&version=2.0.0 // Install RockLib.Logging as a Cake Tool #tool nuget:?package=RockLib.Logging&version=2.0.0
A simple logging library.
This package was built from the source code at https://github.com/RockLib/RockLib.Logging/tree/5cf56003bab409762f40a0994a5d7aaa79b09ade
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. 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 was computed. 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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net451 is compatible. net452 was computed. net46 was computed. net461 was computed. net462 is compatible. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 4.5.1
- RockLib.Configuration (>= 2.4.1)
- RockLib.Configuration.ObjectFactory (>= 1.6.1)
- RockLib.Diagnostics (>= 1.0.2)
- System.ValueTuple (>= 4.5.0)
-
.NETFramework 4.6.2
- RockLib.Configuration (>= 2.4.1)
- RockLib.Configuration.ObjectFactory (>= 1.6.1)
- RockLib.Diagnostics (>= 1.0.2)
-
.NETStandard 2.0
- RockLib.Configuration (>= 2.4.1)
- RockLib.Configuration.ObjectFactory (>= 1.6.1)
- RockLib.Diagnostics (>= 1.0.2)
NuGet packages (5)
Showing the top 5 NuGet packages that depend on RockLib.Logging:
Package | Downloads |
---|---|
RockLib.Logging.AspNetCore
RockLib.Logging for AspNetCore. Includes context providers and a logging action filter. |
|
RockLib.Logging.DependencyInjection
Extensions to register RockLib.Logging with Microsoft.Extensions.DependencyInjection. This package was built from the source code at https://github.com/RockLib/RockLib.Logging/tree/bb58b941269b28e850343ec55de84ce6236b6a26 |
|
RockLib.Logging.Moq
Extensions for verifying logging operations with Moq. |
|
RockLib.Logging.Microsoft.Extensions
An implementation of Microsoft.Extensions.Logging that uses RockLib.Logging. |
|
RockLib.Logging.Http
RockLib.Logging extension methods and context providers related to and HTTP. This package was built from the source code at https://github.com/RockLib/RockLib.Logging/tree/94865cd4e462466e2508fc4aaea340eca38d0913 |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
6.0.0 | 201 | 1/31/2025 |
6.0.0-alpha.1 | 49 | 1/30/2025 |
5.1.2 | 7,267 | 10/22/2024 |
5.1.1 | 26,811 | 7/16/2024 |
5.1.0 | 30,616 | 2/26/2024 |
5.1.0-alpha.1 | 135 | 2/22/2024 |
5.0.0 | 2,144 | 2/14/2024 |
5.0.0-alpha.1 | 207 | 1/31/2024 |
4.0.2 | 112,199 | 2/6/2023 |
4.0.1 | 53,470 | 10/20/2022 |
4.0.0 | 17,344 | 9/16/2022 |
3.1.0 | 112,310 | 7/1/2022 |
3.0.8 | 232,351 | 8/11/2021 |
3.0.7 | 28,915 | 7/30/2021 |
3.0.6 | 6,570 | 7/22/2021 |
3.0.5 | 5,022 | 7/14/2021 |
3.0.4 | 1,937 | 7/13/2021 |
3.0.3 | 10,466 | 6/9/2021 |
3.0.2 | 61,881 | 5/6/2021 |
3.0.1 | 13,676 | 4/12/2021 |
3.0.0 | 1,817 | 4/12/2021 |
2.3.1 | 39,807 | 2/25/2021 |
2.3.0 | 52,020 | 2/19/2021 |
2.3.0-alpha02 | 798 | 2/19/2021 |
2.3.0-alpha01 | 1,718 | 1/14/2021 |
2.2.0 | 136,150 | 9/23/2020 |
2.1.5 | 50,819 | 8/27/2020 |
2.1.4 | 11,495 | 8/27/2020 |
2.1.3 | 12,455 | 8/14/2020 |
2.1.2 | 5,883 | 8/11/2020 |
2.1.1 | 83,939 | 7/30/2020 |
2.1.0 | 14,184 | 7/16/2020 |
2.0.0 | 733,219 | 4/25/2019 |
2.0.0-alpha11 | 1,221 | 4/19/2019 |
2.0.0-alpha10 | 1,568 | 4/5/2019 |
2.0.0-alpha09 | 1,484 | 3/27/2019 |
2.0.0-alpha08 | 1,058 | 3/26/2019 |
2.0.0-alpha07 | 1,036 | 3/21/2019 |
2.0.0-alpha06 | 2,236 | 3/4/2019 |
2.0.0-alpha05 | 1,068 | 3/1/2019 |
2.0.0-alpha04 | 1,077 | 2/28/2019 |
2.0.0-alpha03 | 3,245 | 1/4/2019 |
2.0.0-alpha02 | 1,174 | 1/3/2019 |
2.0.0-alpha01 | 1,182 | 10/22/2018 |
1.2.0 | 164,567 | 10/5/2018 |
1.1.0 | 79,300 | 8/3/2018 |
1.0.1 | 18,519 | 6/29/2018 |
1.0.0 | 11,449 | 6/19/2018 |
1.0.0-alpha08 | 2,951 | 5/24/2018 |
RockLib.Logging version 2.0.0
**Changes to ILogger interface**
- Add `LogProviders` property
- The collection of log providers had been a private field of the Logger class; now it is exposed in the interface.
- Add `ErrorHandler` property
- When set, it handles errors from log providers.
- Can also be set using a delegate by calling the `SetErrorHandler` extension method for the `ILogger` interface.
- Add `ContextProviders` property
- A collection of objects for customizing (e.g. adding extended properties to) outgoing logs before they are sent.
- Add `LogProcessor` property
- Instead of the `Logger` class handling the processing of logs, either synchronously or asynchronously depending on the value of the `isSynchronous` constructor parameter, it delegates the main processing of logs to its log processor.
- Can be set directly with an implementation of `ILogProcessor`, or by specifying the logger's processing mode - `Background`, `Synchronous`, or `FireAndForget`.
- Implement `IDisposable`
- Previously, the `Logger` class implemented `IDisposable`, but not the `ILogger` interface.
**Changes to LoggerFactory**
- `LoggerFactory` is configuration-based instead of "configuration-based by default, otherwise able to specify collection of logger objects from which to choose from".
- Has a `Configuration` property whose value determines what loggers the factory can produce.
- The default configuration comes from the "RockLib.Logging" or "RockLib_Logging" section under `RockLib.Configuration.Config.Root`.
- Can specify a custom configuration with the `SetConfiguration` method.
- Renames methods to be simpler and more explicit: `CreateFromConfig` -> `Create`; `GetInstance` -> `GetCached`
- Methods return `ILogger` instead of `Logger`
- Adds optional parameters to `LoggerFactory` methods
- `defaultTypes`, `valueConverters`, and `resolver`
- LoggerFactory uses the `RockLib.Configuration.ObjectFactory` library to actually create the `ILogger`.
- These values are used by the library to customize how the logger is created.
- `reloadOnConfigChange`
- The `RockLib.Configuration.ObjectFactory` library has the ability to create objects from configuration such that, when the configuration changes, the objects reload themselves automatically. `LoggerFactory` can use this ability.
- Default is `true`, meaning loggers will reload themselves when their configuration changes. Set to `false` if a config-reloading logger is not desired.
**Changes to LogEntry**
- Add new properties: correlationId, businessProcessId, and businessActivityId
- These are also exposed as optional parameters in the logging extension methods.
- Make CallerInfo first-class property of LogEntry
**Changes to log providers**
- `FileLogProvider` synchronizes across all instances that use the same file
- This means all instances of `FileLogProvider` that use the same file can write concurrently.
- `ConsoleLogProvider` can target either stdout or stderr