Minor logging class improvements

This commit is contained in:
Stone-Red-Code
2021-04-16 20:37:56 +02:00
parent 031c04510b
commit 6d2222d207
34 changed files with 113 additions and 138 deletions
Binary file not shown.
+1 -8
View File
@@ -188,14 +188,7 @@ https://www.nuget.org/packages/Stone_Red-C-Sharp-Utilities
True
```
### Stone_Red_Utilities.Logging
#### Constructors:
* Logger
* Initializes the logger with the default format.
* Parameters: `LogTarget logTarg`, `string defaultFormat`
* Example usage:
```cs
Logger logger = new Logger(LogTarget.Console, "{<dateTime>:HH:mm:ss} | {<level>,-7} | {<source>,-15} | {<message>}");
```
#### Constructor:
* Logger
* Initializes the logger with the default format and a file path.
* Parameters: `LogTarget logTarg`, `string file`, `string defaultFormat`
+15 -55
View File
@@ -26,16 +26,6 @@ namespace Stone_Red_Utilities.Logging
/// </summary>
File,
/// <summary>
/// Writes log to console and file
/// </summary>
ConsoleAndFile,
/// <summary>
/// Writes log to debug console and file
/// </summary>
DebugAndFile,
/// <summary>
/// Writes log to console debug console and file
/// </summary>
@@ -104,7 +94,7 @@ namespace Stone_Red_Utilities.Logging
/// <param name="file"></param>
public Logger(LogTarget logTarg = LogTarget.Console, string file = null, string defaultFormat = "{<dateTime>:HH:mm:ss} | {<level>,-7} | {<source>,-15} | {<message>}")
{
if (logTarg == LogTarget.ConsoleAndFile || logTarg == LogTarget.DebugAndFile || logTarg == LogTarget.File || logTarg == LogTarget.All)
if ((logTarg & LogTarget.File) == LogTarget.File || (logTarg & LogTarget.All) == LogTarget.All)
logPath = file ?? throw new ArgumentNullException(nameof(file), $"file can't be null!");
logTarget = logTarg;
@@ -113,22 +103,6 @@ namespace Stone_Red_Utilities.Logging
FileLogFormat = defaultFormat;
}
/// <summary>
/// Initializes the logger with the default format
/// </summary>
/// <param name="defaultFormat"></param>
/// <param name="logTarg"></param>
public Logger(LogTarget logTarg = LogTarget.Console, string defaultFormat = "{<dateTime:HH:mm:ss>} | {<level>,-7} | {<source>,-15} | {<message>}")
{
if (logTarg == LogTarget.ConsoleAndFile || logTarg == LogTarget.DebugAndFile || logTarg == LogTarget.File || logTarg == LogTarget.All)
throw new ArgumentNullException("file", $"file can't be null!");
logTarget = logTarg;
ConsoleLogFormat = defaultFormat;
DebugConsoleLogFormat = defaultFormat;
FileLogFormat = defaultFormat;
}
/// <summary>
/// Log the message to the specified output
/// </summary>
@@ -174,38 +148,24 @@ namespace Stone_Red_Utilities.Logging
string debugOutput = GetFormattedString(DebugConsoleLogFormat, logSeverity, source, message, memberName, sourceFilePath, sourceLineNumber);
string fileOutput = GetFormattedString(FileLogFormat, logSeverity, source, message, memberName, sourceFilePath, sourceLineNumber);
switch (logTarget)
if ((logTarget & LogTarget.Console) == LogTarget.Console)
{
case LogTarget.Console:
ConsoleExt.WriteLine(consoleOutput, GetColor(logSeverity));
break;
ConsoleExt.WriteLine(consoleOutput, GetColor(logSeverity));
}
case LogTarget.DebugConsole:
Debug.WriteLine(debugOutput);
break;
if ((logTarget & LogTarget.DebugConsole) == LogTarget.DebugConsole)
{
Debug.WriteLine(debugOutput);
}
case LogTarget.File:
File.AppendAllLines(logPath, new[] { fileOutput });
break;
if ((logTarget & LogTarget.File) == LogTarget.File)
File.AppendAllLines(logPath, new[] { fileOutput });
case LogTarget.ConsoleAndFile:
ConsoleExt.WriteLine(consoleOutput, GetColor(logSeverity));
File.AppendAllLines(logPath, new[] { fileOutput });
break;
case LogTarget.DebugAndFile:
Debug.WriteLine(debugOutput);
File.AppendAllLines(logPath, new[] { fileOutput });
break;
case LogTarget.All:
Debug.WriteLine(debugOutput);
ConsoleExt.WriteLine(consoleOutput, GetColor(logSeverity));
File.AppendAllLines(logPath, new[] { fileOutput });
break;
default:
throw new ArgumentException("Log target type not valid!");
if ((logTarget & LogTarget.All) == LogTarget.All)
{
Debug.WriteLine(debugOutput);
ConsoleExt.WriteLine(consoleOutput, GetColor(logSeverity));
File.AppendAllLines(logPath, new[] { fileOutput });
}
}
@@ -6,15 +6,15 @@
<Authors>Stone_Red</Authors>
<PackageTags>Console, Table, Print</PackageTags>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Description>Adds useful extentions.</Description>
<Description>Adds useful methods</Description>
<PackageProjectUrl></PackageProjectUrl>
<RepositoryUrl>https://github.com/Stone-Red-Code/Stone_Red-C-Sharp-Utilities</RepositoryUrl>
<NeutralLanguage>en</NeutralLanguage>
<PackageLicenseFile>LICENSE</PackageLicenseFile>
<PackageRequireLicenseAcceptance>false</PackageRequireLicenseAcceptance>
<AssemblyVersion>1.0.0.2</AssemblyVersion>
<FileVersion>1.0.0.2</FileVersion>
<Version>1.0.1.0</Version>
<AssemblyVersion>1.0.1.1</AssemblyVersion>
<FileVersion>1.0.1.1</FileVersion>
<Version>1.0.1.1</Version>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
@@ -123,16 +123,6 @@
Writes log to file
</summary>
</member>
<member name="F:Stone_Red_Utilities.Logging.LogTarget.ConsoleAndFile">
<summary>
Writes log to console and file
</summary>
</member>
<member name="F:Stone_Red_Utilities.Logging.LogTarget.DebugAndFile">
<summary>
Writes log to debug console and file
</summary>
</member>
<member name="F:Stone_Red_Utilities.Logging.LogTarget.All">
<summary>
Writes log to console debug console and file
@@ -196,13 +186,6 @@
<param name="logTarg"></param>
<param name="file"></param>
</member>
<member name="M:Stone_Red_Utilities.Logging.Logger.#ctor(Stone_Red_Utilities.Logging.LogTarget,System.String)">
<summary>
Initializes the logger with the default format
</summary>
<param name="defaultFormat"></param>
<param name="logTarg"></param>
</member>
<member name="M:Stone_Red_Utilities.Logging.Logger.Log(System.String,System.String,Stone_Red_Utilities.Logging.LogSeverity,System.String,System.String,System.Int32)">
<summary>
Log the message to the specified output
@@ -7,7 +7,7 @@
"targets": {
".NETStandard,Version=v2.1": {},
".NETStandard,Version=v2.1/": {
"Stone_Red-C-Sharp-Utilities/1.0.0.2": {
"Stone_Red-C-Sharp-Utilities/1.0.1.1": {
"runtime": {
"Stone_Red-C-Sharp-Utilities.dll": {}
}
@@ -15,7 +15,7 @@
}
},
"libraries": {
"Stone_Red-C-Sharp-Utilities/1.0.0.2": {
"Stone_Red-C-Sharp-Utilities/1.0.1.1": {
"type": "project",
"serviceable": false,
"sha512": ""
@@ -96,6 +96,13 @@
<param name="value"></param>
<param name="color"></param>
</member>
<member name="M:Stone_Red_Utilities.ConsoleExtentions.ConsoleExt.Pause(System.Boolean,System.String)">
<summary>
Suspends execution until the user presses a key
</summary>
<param name="enterKeyOnly"></param>
<param name="customMessage"></param>
</member>
<member name="T:Stone_Red_Utilities.Logging.LogTarget">
<summary>
Specifies the severity of the log target.
@@ -116,16 +123,6 @@
Writes log to file
</summary>
</member>
<member name="F:Stone_Red_Utilities.Logging.LogTarget.ConsoleAndFile">
<summary>
Writes log to console and file
</summary>
</member>
<member name="F:Stone_Red_Utilities.Logging.LogTarget.DebugAndFile">
<summary>
Writes log to debug console and file
</summary>
</member>
<member name="F:Stone_Red_Utilities.Logging.LogTarget.All">
<summary>
Writes log to console debug console and file
@@ -183,19 +180,12 @@
</member>
<member name="M:Stone_Red_Utilities.Logging.Logger.#ctor(Stone_Red_Utilities.Logging.LogTarget,System.String,System.String)">
<summary>
Initializes the logger with the default format
Initializes the logger with the default format and a file path
</summary>
<param name="defaultFormat"></param>
<param name="logTarg"></param>
<param name="file"></param>
</member>
<member name="M:Stone_Red_Utilities.Logging.Logger.#ctor(Stone_Red_Utilities.Logging.LogTarget,System.String)">
<summary>
Initializes the logger with the default format
</summary>
<param name="defaultFormat"></param>
<param name="logTarg"></param>
</member>
<member name="M:Stone_Red_Utilities.Logging.Logger.Log(System.String,System.String,Stone_Red_Utilities.Logging.LogSeverity,System.String,System.String,System.Int32)">
<summary>
Log the message to the specified output
@@ -209,7 +199,7 @@
</member>
<member name="M:Stone_Red_Utilities.Logging.Logger.LogIf(System.Boolean,System.String,System.String,Stone_Red_Utilities.Logging.LogSeverity,System.String,System.String,System.Int32)">
<summary>
Log the message to the specified output when the condition is met
Log the message to the specified output if the condition is met
</summary>
<param name="condition"></param>
<param name="message"></param>
@@ -221,7 +211,7 @@
</member>
<member name="M:Stone_Red_Utilities.Logging.Logger.ClearLogFile">
<summary>
Clears log file
Clears the log file
</summary>
</member>
<member name="T:Stone_Red_Utilities.StringExtentions.StringExt">
@@ -7,7 +7,7 @@
"targets": {
".NETStandard,Version=v2.1": {},
".NETStandard,Version=v2.1/": {
"Stone_Red-C-Sharp-Utilities/1.0.1.0": {
"Stone_Red-C-Sharp-Utilities/1.0.1.1": {
"runtime": {
"Stone_Red-C-Sharp-Utilities.dll": {}
}
@@ -15,7 +15,7 @@
}
},
"libraries": {
"Stone_Red-C-Sharp-Utilities/1.0.1.0": {
"Stone_Red-C-Sharp-Utilities/1.0.1.1": {
"type": "project",
"serviceable": false,
"sha512": ""
@@ -123,16 +123,6 @@
Writes log to file
</summary>
</member>
<member name="F:Stone_Red_Utilities.Logging.LogTarget.ConsoleAndFile">
<summary>
Writes log to console and file
</summary>
</member>
<member name="F:Stone_Red_Utilities.Logging.LogTarget.DebugAndFile">
<summary>
Writes log to debug console and file
</summary>
</member>
<member name="F:Stone_Red_Utilities.Logging.LogTarget.All">
<summary>
Writes log to console debug console and file
@@ -196,13 +186,6 @@
<param name="logTarg"></param>
<param name="file"></param>
</member>
<member name="M:Stone_Red_Utilities.Logging.Logger.#ctor(Stone_Red_Utilities.Logging.LogTarget,System.String)">
<summary>
Initializes the logger with the default format
</summary>
<param name="defaultFormat"></param>
<param name="logTarg"></param>
</member>
<member name="M:Stone_Red_Utilities.Logging.Logger.Log(System.String,System.String,Stone_Red_Utilities.Logging.LogSeverity,System.String,System.String,System.Int32)">
<summary>
Log the message to the specified output
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd">
<metadata>
<id>Stone_Red-C-Sharp-Utilities</id>
<version>1.0.1.1</version>
<authors>Stone_Red</authors>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<license type="file">LICENSE</license>
<licenseUrl>https://aka.ms/deprecateLicenseUrl</licenseUrl>
<description>Adds useful methods</description>
<tags>Console, Table, Print</tags>
<repository url="https://github.com/Stone-Red-Code/Stone_Red-C-Sharp-Utilities" />
<dependencies>
<group targetFramework=".NETStandard2.1" />
</dependencies>
</metadata>
<files>
<file src="C:\Users\David\Google Drive\Programmieren\Stone_Red-C-Sharp-Utilities\Stone_Red-C-Sharp-Utilities\bin\Debug\netstandard2.1\Stone_Red-C-Sharp-Utilities.dll" target="lib\netstandard2.1\Stone_Red-C-Sharp-Utilities.dll" />
<file src="C:\Users\David\Google Drive\Programmieren\Stone_Red-C-Sharp-Utilities\Stone_Red-C-Sharp-Utilities\bin\Debug\netstandard2.1\Stone_Red-C-Sharp-Utilities.xml" target="lib\netstandard2.1\Stone_Red-C-Sharp-Utilities.xml" />
<file src="C:\Users\David\Google Drive\Programmieren\Stone_Red-C-Sharp-Utilities\LICENSE" target="LICENSE" />
</files>
</package>
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd">
<metadata>
<id>Stone_Red-C-Sharp-Utilities</id>
<version>1.0.1</version>
<authors>Stone_Red</authors>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<license type="file">LICENSE</license>
<licenseUrl>https://aka.ms/deprecateLicenseUrl</licenseUrl>
<description>Adds useful extentions.</description>
<tags>Console, Table, Print</tags>
<repository url="https://github.com/Stone-Red-Code/Stone_Red-C-Sharp-Utilities" />
<dependencies>
<group targetFramework=".NETStandard2.1" />
</dependencies>
</metadata>
<files>
<file src="C:\Users\David\Google Drive\Programmieren\Stone_Red-C-Sharp-Utilities\Stone_Red-C-Sharp-Utilities\bin\Debug\netstandard2.1\Stone_Red-C-Sharp-Utilities.dll" target="lib\netstandard2.1\Stone_Red-C-Sharp-Utilities.dll" />
<file src="C:\Users\David\Google Drive\Programmieren\Stone_Red-C-Sharp-Utilities\Stone_Red-C-Sharp-Utilities\bin\Debug\netstandard2.1\Stone_Red-C-Sharp-Utilities.xml" target="lib\netstandard2.1\Stone_Red-C-Sharp-Utilities.xml" />
<file src="C:\Users\David\Google Drive\Programmieren\Stone_Red-C-Sharp-Utilities\LICENSE" target="LICENSE" />
</files>
</package>
@@ -13,12 +13,12 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("Stone_Red")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyDescriptionAttribute("Adds useful extentions.")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.2")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0.2")]
[assembly: System.Reflection.AssemblyDescriptionAttribute("Adds useful methods")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.1.1")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.1.1")]
[assembly: System.Reflection.AssemblyProductAttribute("Stone_Red-C-Sharp-Utilities")]
[assembly: System.Reflection.AssemblyTitleAttribute("Stone_Red-C-Sharp-Utilities")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.2")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.1.1")]
[assembly: System.Reflection.AssemblyMetadataAttribute("RepositoryUrl", "https://github.com/Stone-Red-Code/Stone_Red-C-Sharp-Utilities")]
[assembly: System.Resources.NeutralResourcesLanguageAttribute("en")]
@@ -1 +1 @@
b9bbba780995045ee0e07cb8d0fe99b0882b90f8
a3dcfdd1a37a276a89a7dc6e510a1e222a45e18c
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd">
<metadata>
<id>Stone_Red-C-Sharp-Utilities</id>
<version>1.0.1.1</version>
<authors>Stone_Red</authors>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<license type="file">LICENSE</license>
<licenseUrl>https://aka.ms/deprecateLicenseUrl</licenseUrl>
<description>Adds useful methods</description>
<tags>Console, Table, Print</tags>
<repository url="https://github.com/Stone-Red-Code/Stone_Red-C-Sharp-Utilities" />
<dependencies>
<group targetFramework=".NETStandard2.1" />
</dependencies>
</metadata>
<files>
<file src="C:\Users\David\Google Drive\Programmieren\Stone_Red-C-Sharp-Utilities\Stone_Red-C-Sharp-Utilities\bin\Release\netstandard2.1\Stone_Red-C-Sharp-Utilities.dll" target="lib\netstandard2.1\Stone_Red-C-Sharp-Utilities.dll" />
<file src="C:\Users\David\Google Drive\Programmieren\Stone_Red-C-Sharp-Utilities\Stone_Red-C-Sharp-Utilities\bin\Release\netstandard2.1\Stone_Red-C-Sharp-Utilities.xml" target="lib\netstandard2.1\Stone_Red-C-Sharp-Utilities.xml" />
<file src="C:\Users\David\Google Drive\Programmieren\Stone_Red-C-Sharp-Utilities\LICENSE" target="LICENSE" />
</files>
</package>
@@ -13,12 +13,12 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("Stone_Red")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Release")]
[assembly: System.Reflection.AssemblyDescriptionAttribute("Adds useful extentions.")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.2")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.1.0")]
[assembly: System.Reflection.AssemblyDescriptionAttribute("Adds useful methods")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.1.1")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.1.1")]
[assembly: System.Reflection.AssemblyProductAttribute("Stone_Red-C-Sharp-Utilities")]
[assembly: System.Reflection.AssemblyTitleAttribute("Stone_Red-C-Sharp-Utilities")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.2")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.1.1")]
[assembly: System.Reflection.AssemblyMetadataAttribute("RepositoryUrl", "https://github.com/Stone-Red-Code/Stone_Red-C-Sharp-Utilities")]
[assembly: System.Resources.NeutralResourcesLanguageAttribute("en")]
@@ -1 +1 @@
86ed32e371a4832ff8ffcde04e090abd3861fffd
bedbe864b47b33264dd1a74cec3ab965f23ecb76
@@ -5,7 +5,7 @@
},
"projects": {
"C:\\Users\\David\\Google Drive\\Programmieren\\Stone_Red-C-Sharp-Utilities\\Stone_Red-C-Sharp-Utilities\\Stone_Red-C-Sharp-Utilities.csproj": {
"version": "1.0.1",
"version": "1.0.1.1",
"restore": {
"projectUniqueName": "C:\\Users\\David\\Google Drive\\Programmieren\\Stone_Red-C-Sharp-Utilities\\Stone_Red-C-Sharp-Utilities\\Stone_Red-C-Sharp-Utilities.csproj",
"projectName": "Stone_Red-C-Sharp-Utilities",
@@ -12,7 +12,7 @@
"C:\\Microsoft\\Xamarin\\NuGet\\": {}
},
"project": {
"version": "1.0.1",
"version": "1.0.1.1",
"restore": {
"projectUniqueName": "C:\\Users\\David\\Google Drive\\Programmieren\\Stone_Red-C-Sharp-Utilities\\Stone_Red-C-Sharp-Utilities\\Stone_Red-C-Sharp-Utilities.csproj",
"projectName": "Stone_Red-C-Sharp-Utilities",
@@ -1,6 +1,6 @@
{
"version": 2,
"dgSpecHash": "9bUdOQXkoJVmBHKtXL8WIV2wGOGQ2ZUNAipYzs4vkTUUx7it6qWwjRlEnfdvkceTSY3j3kyImDuhrb0sCF5omw==",
"dgSpecHash": "OCorf4dA0laiwZvXM3MOab9IJ1fDO9ZjZiu5LzBWWVhaWliIFQdh1aRWHcfoxyrHUqXL1v73DMUfIxv/J9Xz1Q==",
"success": true,
"projectFilePath": "C:\\Users\\David\\Google Drive\\Programmieren\\Stone_Red-C-Sharp-Utilities\\Stone_Red-C-Sharp-Utilities\\Stone_Red-C-Sharp-Utilities.csproj",
"expectedPackageFiles": [],