diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index 467ba1522..3a2c229d1 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -7,6 +7,7 @@ - [EraYaN](https://github.com/EraYaN) - [flemse](https://github.com/flemse) - [bfayers](https://github.com/bfayers) + - [Bond_009](https://github.com/Bond-009) # Emby Contributors diff --git a/MediaBrowser.Server.Mono/EmbyServer.csproj b/MediaBrowser.Server.Mono/EmbyServer.csproj index da7883e6b..609af9674 100644 --- a/MediaBrowser.Server.Mono/EmbyServer.csproj +++ b/MediaBrowser.Server.Mono/EmbyServer.csproj @@ -17,6 +17,7 @@ + diff --git a/MediaBrowser.Server.Mono/Program.cs b/MediaBrowser.Server.Mono/Program.cs index 1e47322f1..32953e89d 100644 --- a/MediaBrowser.Server.Mono/Program.cs +++ b/MediaBrowser.Server.Mono/Program.cs @@ -154,8 +154,13 @@ namespace MediaBrowser.Server.Mono } } - private static async Task createLogger() + private static void createLogger() { + var logDir = Environment.GetEnvironmentVariable("JELLYFIN_LOG_DIR"); + if (string.IsNullOrEmpty(logDir)){ + logDir = Path.Combine(_appPaths.ProgramDataPath, "logs"); + Environment.SetEnvironmentVariable("JELLYFIN_LOG_DIR", logDir); + } try { string path = Path.Combine(_appPaths.ProgramDataPath, "logging.json"); @@ -168,11 +173,13 @@ namespace MediaBrowser.Server.Mono using (Stream rscstr = assembly.GetManifestResourceStream(resourcePath)) using (Stream fstr = File.Open(path, FileMode.CreateNew)) { - await rscstr.CopyToAsync(fstr); + rscstr.CopyTo(fstr); } } var configuration = new ConfigurationBuilder() - .AddJsonFile(path) + .SetBasePath(_appPaths.ProgramDataPath) + .AddJsonFile("logging.json") + .AddEnvironmentVariables("JELLYFIN_") .Build(); Serilog.Log.Logger = new LoggerConfiguration() @@ -185,7 +192,7 @@ namespace MediaBrowser.Server.Mono Serilog.Log.Logger = new LoggerConfiguration() .WriteTo.Console(outputTemplate: "[{Timestamp:HH:mm:ss}] [{Level:u3}] {Message:lj}{NewLine}{Exception}") .WriteTo.File( - Path.Combine(AppContext.BaseDirectory, "logs", "log_.log"), + Path.Combine(logDir, "logs", "log_.log"), rollingInterval: RollingInterval.Day, outputTemplate: "[{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz}] [{Level:u3}] {Message}{NewLine}{Exception}") .Enrich.FromLogContext() diff --git a/MediaBrowser.Server.Mono/Resources/Configuration/logging.json b/MediaBrowser.Server.Mono/Resources/Configuration/logging.json index 68b57b276..78f99b2ad 100644 --- a/MediaBrowser.Server.Mono/Resources/Configuration/logging.json +++ b/MediaBrowser.Server.Mono/Resources/Configuration/logging.json @@ -4,12 +4,12 @@ "WriteTo": [ { "Name": "Console", "Args": { - "outputTemplate": "[{Timestamp:HH:mm:ss}] [{Level:u3}] {Message}{NewLine}{Exception}" + "outputTemplate": "[{Timestamp:HH:mm:ss}] [{Level:u3}] {Message:lj}{NewLine}{Exception}" } }, { "Name": "File", "Args": { - "path": "logs//log_.log", + "path": "%JELLYFIN_LOG_DIR%//log_.log", "rollingInterval": "Day", "outputTemplate": "[{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz}] [{Level:u3}] {Message}{NewLine}{Exception}" }