HDByte.Logger
2.0.0
See the version list below for details.
dotnet add package HDByte.Logger --version 2.0.0
NuGet\Install-Package HDByte.Logger -Version 2.0.0
<PackageReference Include="HDByte.Logger" Version="2.0.0" />
<PackageVersion Include="HDByte.Logger" Version="2.0.0" />
<PackageReference Include="HDByte.Logger" />
paket add HDByte.Logger --version 2.0.0
#r "nuget: HDByte.Logger, 2.0.0"
#:package HDByte.Logger@2.0.0
#addin nuget:?package=HDByte.Logger&version=2.0.0
#tool nuget:?package=HDByte.Logger&version=2.0.0
Logger
Getting Started
This project is still in the early stages of development. Semantic versision will start with 2.0.0 release. For the 1.x.x release, expect backwards compatiblity changes with minor updates, but not patch updates.
Notes
Add EnableTraceLogger() to enable the DefaultTraceLogger to create a seperate file for trace level logging. Must use EnableTraceLogger() before GetDefaultLogger() is ever called
1.4.0 → 2.0.0
Added LoggerManager unit tests. Add RemoveLogger(string name) Changed LoggerService.Information to LoggerService.Info (bug from v1.4) Changed 'timestamp' in FileListener to use the current Datetime.Now instead of launch time Added 'launchtimestamp' in FileListener that uses the DateTime of when the app was first loaded Fixed bug in FileListener which prevented $$[processname]$$ from being evaluated if there was no valid $$[timestamp=xxxxx]$$ to be evaluated
LoggerService Log;
var manager = LoggerManager.GetLoggerManager();
Log = manager.CreateLogger("TestLogger")
.AttachListener(LoggingLevel.Debug, new ConsoleListener())
.AttachListener(LoggingLevel.Debug, new FileListener(@"C:\Logs\$$[processname]$$\$$[timestamp=yyyy-MM-dd HH_mm_ss]$$.txt"));
Examples
Log.Debug("Button 1 Clicked!");
Log.Fatal("fatal error, blah blah happened");
Logging Levels
Log.Trace
Log.Debug
Log.Info
Log.Warning
Log.Error
Log.Fatal
Advanced Examples (Custom Message Formats)
LoggerService Log;
var manager = LoggerManager.GetLoggerManager();
Log = manager.CreateLogger("TestLogger")
.AttachListener(LoggingLevel.Debug, new ConsoleListener(@"$$[shorttimestamp]$$ - $$[level]$$ - $$[message]$$"))
.AttachListener(LoggingLevel.Debug, new FileListener(@"C:\Logs\$$[processname]$$\$$[timestamp=yyyy-MM-dd HH_mm_ss]$$.txt", "$$[timestamp]$$ - $$[level]$$ - $$[message]$$"));
Custom Filename Formats for FileListener
Acceptable Variables
- processname Name of process currently being ran.
- launchtimestamp= Uses the DateTime.Now of when LoggerConfig was first initialized
- timestamp=HH_mm_ss This uses Datetime.ToString() formatting, customize it to your hearts content.
- custom=NAMEHERE Replace NAMEHERE with the variable name used by using LoggerConfig.AddCustomVariable("NAMEHERE", "value");
Custom Message Formats
Acceptable Variables
- timestamp = 04/05/2020 20:38:01.1312
- shorttimestamp = 20:38:01.1312
- level - FATAL
- message - The actual log message to be logged.
Default Debugging Logger
This logger stores files in C:\Logs{processname}{timestamp}\debug.txt which logs all Log.Debug level and above messages.
If EnableTraceLogger() is performed then Default Logger will also create a trace.txt file which logs all Log.Trace level and above messages.
var Log = LoggerManager.GetLoggerManager().GetDefaultLogger();
Log.Info("information only.......");
var Log = LoggerManager.GetLoggerManager().EnableTraceLogger().GetDefaultLogger(;
Log.Info("information only.......");
Log.Trace("trace test log");
| 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. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.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 | net461 was computed. net462 was computed. 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. |
-
.NETStandard 2.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.