EggEgg.CSharp-Logger
3.0.0
See the version list below for details.
dotnet add package EggEgg.CSharp-Logger --version 3.0.0
NuGet\Install-Package EggEgg.CSharp-Logger -Version 3.0.0
<PackageReference Include="EggEgg.CSharp-Logger" Version="3.0.0" />
paket add EggEgg.CSharp-Logger --version 3.0.0
#r "nuget: EggEgg.CSharp-Logger, 3.0.0"
// Install EggEgg.CSharp-Logger as a Cake Addin #addin nuget:?package=EggEgg.CSharp-Logger&version=3.0.0 // Install EggEgg.CSharp-Logger as a Cake Tool #tool nuget:?package=EggEgg.CSharp-Logger&version=3.0.0
csharp-logger
A bussy but convenient C# Logger implement.
You can download it on nuget.org by searching EggEgg.CSharp-Logger.
Update
v3.0.0
- Fixed the issue where unprocessed logs in the waiting queue would be lost when the program is closed.
- Fixed the issue where
debug.log
were not written to disk whenDebug_LogWriter_AutoFlush
is set tofalse
and the program is terminated. - Properly supported the functionality of pasting text using Ctrl+V in
ConsoleWrapper
. - Fixed the issue where the console could not scroll to view previous input/output when using the
ConsoleWrapper.ReadLine
series of methods. - Fixed the issue where the
ConsoleWrapper.ReadLine
series of methods would repeatedly output theInputPrefix
content when the program ends. - Fixed the issue where the log processing thread would be blocked when the user selects content on the console while using the default configuration of logging with the native
Console
. - Fixed the issue where the automatic log compression feature ignored logs with empty content.
- Fixed the issue where logs with empty content were ignored when the automatic log compression feature was unable to compress into an existing log compression package and created a new zip file.
- Other fixes and improvements related to the logger and
ConsoleWrapper
. - Known issue: Significant problems exist with the functionality of using the Home/End keys in
ConsoleWrapper
when there are multiple lines of input.
This will be fixed in the next major version after thorough testing.
Features
- Common logger implements
Usage: FirstlyLog.Initialize(LoggerConfig)
, thenLog.Info(content, sender)
,Log.Erro(...)
,Log.Warn(...)
,Log.Dbug(...)
. - Color output Support
Just add xml tags in text, like:<color=Red>Output as red color</color>
.
The Color value should be a valid value in ConsoleColor, e.g. "Red", "Green".
Recognized color tags will be removed in the log file. - Parallel input Support
if you wants to read the user's input while outputing logs parallel (e.g. making a CLI program),ConsoleWrapper
is provided.
You can set the value ofConsoleWrapper.InputPrefix
as a waiting-input prefix, just likemysql>
orubuntu ~$
, and useConsoleWrapper.ReadLineAsync
to read inputs from the user.
_Notice that it will impact the performance when the user's input is very large. It's disabled as default, and you can enable it byLoggerConfig(use_Console_Wrapper: true)
. - Output amount limit
Large infomation outputing can severely impact the performance. You can set the maximum output amount per line byLoggerConfig.Max_Output_Char_Count
.
You can also disable this by setting it to-1
. - Auto compress logs
If there're logs created 1 day ago, they will be compressed into a zip file likelogs.[Date].zip
.
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 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. |
-
net6.0
- TextCopy (>= 6.2.1)
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 | |
---|---|---|---|
5.0.0 | 264 | 7/16/2024 | |
4.0.2 | 351 | 12/22/2023 | |
4.0.1 | 370 | 11/6/2023 | |
4.0.0 | 358 | 9/23/2023 | |
3.0.0 | 343 | 7/13/2023 | |
2.2.3 | 316 | 6/9/2023 | |
2.2.2 | 203 | 5/31/2023 | |
2.2.1 | 217 | 5/6/2023 | |
2.1.4 | 267 | 4/15/2023 | |
2.1.3 | 228 | 4/15/2023 | |
2.1.2 | 223 | 4/9/2023 | |
2.1.1 | 226 | 4/9/2023 | |
2.1.0 | 236 | 4/8/2023 | |
2.0.1 | 224 | 4/8/2023 | |
2.0.0 | 276 | 4/8/2023 |
Changes in v3.0.0
- Fixed the issue where unprocessed logs in the waiting queue would be lost when the program is closed.
- Fixed the issue where `debug.log` were not written to disk when `Debug_LogWriter_AutoFlush` is set to `false` and the program is terminated.
- Properly supported the functionality of pasting text using Ctrl+V in `ConsoleWrapper`.
- Fixed the issue where the console could not scroll to view previous input/output when using the `ConsoleWrapper.ReadLine` series of methods.
- Fixed the issue where the `ConsoleWrapper.ReadLine` series of methods would repeatedly output the `InputPrefix` content when the program ends.
- Fixed the issue where the log processing thread would be blocked when the user selects content on the console while using the default configuration of logging with the native `Console`.
- Fixed the issue where the automatic log compression feature ignored logs with empty content.
- Fixed the issue where logs with empty content were ignored when the automatic log compression feature was unable to compress into an existing log compression package and created a new zip file.
- Other fixes and improvements related to the logger and `ConsoleWrapper`.
- Known issue: Significant problems exist with the functionality of using the Home/End keys in `ConsoleWrapper` when there are multiple lines of input.
This will be fixed in the next major version after thorough testing.