完善日志
This commit is contained in:
@@ -5,11 +5,14 @@ using Spine;
|
|||||||
using Spine.Exporters;
|
using Spine.Exporters;
|
||||||
using System.CommandLine;
|
using System.CommandLine;
|
||||||
using System.Globalization;
|
using System.Globalization;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
|
||||||
namespace SpineViewerCLI
|
namespace SpineViewerCLI
|
||||||
{
|
{
|
||||||
public static class SpineViewerCLI
|
public static class SpineViewerCLI
|
||||||
{
|
{
|
||||||
|
private static readonly Logger _logger = LogManager.GetCurrentClassLogger();
|
||||||
|
|
||||||
public static Option<bool> OptQuiet { get; } = new("--quiet", "-q")
|
public static Option<bool> OptQuiet { get; } = new("--quiet", "-q")
|
||||||
{
|
{
|
||||||
Description = "Suppress console logging (quiet mode).",
|
Description = "Suppress console logging (quiet mode).",
|
||||||
@@ -33,11 +36,21 @@ namespace SpineViewerCLI
|
|||||||
if (!result.GetValue(OptQuiet))
|
if (!result.GetValue(OptQuiet))
|
||||||
InitializeConsoleLog();
|
InitializeConsoleLog();
|
||||||
|
|
||||||
return result.Invoke();
|
try
|
||||||
|
{
|
||||||
|
return result.Invoke();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
_logger.Trace(ex.ToString());
|
||||||
|
_logger.Fatal("Failed to execute, {0}", ex.Message);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void InitializeFileLog()
|
private static void InitializeFileLog()
|
||||||
{
|
{
|
||||||
|
// XXX: δ֪ԭ<D6AA><D4AD> linux ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD>ļ<EFBFBD>
|
||||||
var config = new NLog.Config.LoggingConfiguration();
|
var config = new NLog.Config.LoggingConfiguration();
|
||||||
var fileTarget = new NLog.Targets.FileTarget("fileTarget")
|
var fileTarget = new NLog.Targets.FileTarget("fileTarget")
|
||||||
{
|
{
|
||||||
@@ -72,13 +85,15 @@ namespace SpineViewerCLI
|
|||||||
DetectOutputRedirected = true,
|
DetectOutputRedirected = true,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
consoleTarget.RowHighlightingRules.Add(new("level == LogLevel.Trace", NLog.Targets.ConsoleOutputColor.DarkGray, NLog.Targets.ConsoleOutputColor.NoChange));
|
||||||
|
consoleTarget.RowHighlightingRules.Add(new("level == LogLevel.Debug", NLog.Targets.ConsoleOutputColor.DarkGray, NLog.Targets.ConsoleOutputColor.NoChange));
|
||||||
consoleTarget.RowHighlightingRules.Add(new("level == LogLevel.Info", NLog.Targets.ConsoleOutputColor.DarkGray, NLog.Targets.ConsoleOutputColor.NoChange));
|
consoleTarget.RowHighlightingRules.Add(new("level == LogLevel.Info", NLog.Targets.ConsoleOutputColor.DarkGray, NLog.Targets.ConsoleOutputColor.NoChange));
|
||||||
consoleTarget.RowHighlightingRules.Add(new("level == LogLevel.Warn", NLog.Targets.ConsoleOutputColor.DarkYellow, NLog.Targets.ConsoleOutputColor.NoChange));
|
consoleTarget.RowHighlightingRules.Add(new("level == LogLevel.Warn", NLog.Targets.ConsoleOutputColor.DarkYellow, NLog.Targets.ConsoleOutputColor.NoChange));
|
||||||
consoleTarget.RowHighlightingRules.Add(new("level == LogLevel.Error", NLog.Targets.ConsoleOutputColor.Red, NLog.Targets.ConsoleOutputColor.NoChange));
|
consoleTarget.RowHighlightingRules.Add(new("level == LogLevel.Error", NLog.Targets.ConsoleOutputColor.Red, NLog.Targets.ConsoleOutputColor.NoChange));
|
||||||
consoleTarget.RowHighlightingRules.Add(new("level == LogLevel.Fatal", NLog.Targets.ConsoleOutputColor.White, NLog.Targets.ConsoleOutputColor.DarkRed));
|
consoleTarget.RowHighlightingRules.Add(new("level == LogLevel.Fatal", NLog.Targets.ConsoleOutputColor.White, NLog.Targets.ConsoleOutputColor.DarkRed));
|
||||||
|
|
||||||
config.AddTarget(consoleTarget);
|
config.AddTarget(consoleTarget);
|
||||||
config.AddRule(LogLevel.Info, LogLevel.Fatal, consoleTarget);
|
config.AddRule(LogLevel.Trace, LogLevel.Fatal, consoleTarget);
|
||||||
LogManager.Configuration = config;
|
LogManager.Configuration = config;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user