|
@@ -1,72 +0,0 @@
|
|
|
-using System.Diagnostics;
|
|
|
-using Serilog;
|
|
|
-using WingServerCommon.Config;
|
|
|
-using WingServerCommon.Config.Parameters;
|
|
|
-
|
|
|
-namespace WingServerCommon.Log
|
|
|
-{
|
|
|
- public class ServerLoggerEngine : ILogEngine
|
|
|
- {
|
|
|
- private Serilog.Core.Logger _logger;
|
|
|
-
|
|
|
- private static string _server = ConfigurationManager.GetParammeter<StringParameter>("Database", "Server").Value;
|
|
|
-
|
|
|
- private static int _port = ConfigurationManager.GetParammeter<IntParameter>("Database", "Port").Value;
|
|
|
-
|
|
|
- private static bool _debugMode = ConfigurationManager.GetParammeter<BoolParameter>("Log", "Debug").Value;
|
|
|
-
|
|
|
-
|
|
|
- public ServerLoggerEngine()
|
|
|
- {
|
|
|
- var settings = ConfigurationManager.LogSettings;
|
|
|
-
|
|
|
- if (_debugMode)
|
|
|
- {
|
|
|
- _logger = new LoggerConfiguration()
|
|
|
- .MinimumLevel.Debug()
|
|
|
- .MinimumLevel.Verbose()
|
|
|
- .WriteTo.MongoDB($"mongodb://{_server}:{_port}/WingCloudLogs", batchPostingLimit: 1000)
|
|
|
- .WriteTo.Console()
|
|
|
- .CreateLogger();
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- _logger = new LoggerConfiguration()
|
|
|
- .MinimumLevel.Debug()
|
|
|
- .MinimumLevel.Verbose()
|
|
|
- .WriteTo.MongoDB($"mongodb://{_server}:{_port}/WingCloudLogs", batchPostingLimit: 1000)
|
|
|
- .CreateLogger();
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- /// <summary>
|
|
|
- /// Write the log
|
|
|
- /// </summary>
|
|
|
- /// <param name="level">Log's level see <see cref="TraceLevel"/></param>
|
|
|
- /// <param name="msg">The message to write</param>
|
|
|
- public void Write(TraceLevel level, string msg)
|
|
|
- {
|
|
|
- var threadId = Thread.CurrentThread.ManagedThreadId;
|
|
|
- var log = $"Thead({threadId})-{msg}";
|
|
|
- switch (level)
|
|
|
- {
|
|
|
- case TraceLevel.Error:
|
|
|
- _logger.Error(log);
|
|
|
- break;
|
|
|
- case TraceLevel.Warning:
|
|
|
- _logger.Warning(log);
|
|
|
- break;
|
|
|
- case TraceLevel.Info:
|
|
|
- _logger.Information(log);
|
|
|
- break;
|
|
|
- case TraceLevel.Verbose:
|
|
|
- _logger.Verbose(log);
|
|
|
- break;
|
|
|
- case TraceLevel.Off:
|
|
|
- _logger.Debug(log);
|
|
|
- break;
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
-}
|