core: restore stacktraces for UI 'view logs'. resolves #14585 (#14619)

This commit is contained in:
ilike2burnthing
2023-08-10 23:14:37 +01:00
committed by GitHub
parent 8b30469255
commit 073d0e27a8
2 changed files with 10 additions and 7 deletions

View File

@@ -9,7 +9,7 @@ using NLog.Targets;
namespace Jackett.Common.Services
{
[Target("LogService")]
public class LogCacheService : TargetWithLayout, ILogCacheService
public sealed class LogCacheService : TargetWithLayout, ILogCacheService
{
private static List<CachedLog> _Logs = new List<CachedLog>();
@@ -24,16 +24,16 @@ namespace Jackett.Common.Services
}
}
protected override void Write(LogEventInfo logEvent) => AddLog(logEvent);
protected override void Write(LogEventInfo logEvent) => AddLog(logEvent, Layout.Render(logEvent));
private static void AddLog(LogEventInfo logEvent)
private static void AddLog(LogEventInfo logEvent, string logMessage)
{
lock (_Logs)
{
_Logs.Insert(0, new CachedLog
{
Level = logEvent.Level.Name,
Message = CleanseLogMessage.Cleanse(logEvent.FormattedMessage),
Message = CleanseLogMessage.Cleanse(logMessage),
When = logEvent.TimeStamp
});

View File

@@ -22,7 +22,7 @@ namespace Jackett.Common.Utils
var logFile = new CleanseFileTarget
{
Layout = "${longdate} ${level} ${message} ${onexception:inner=${newline}${newline}[v${assembly-version}] ${exception:format=ToString}${newline}}",
Layout = "${longdate} ${level} ${message}${onexception:inner=${newline}${newline}[v${assembly-version}] ${exception:format=ToString}${newline}}",
FileName = Path.Combine(settings.DataFolder, logFileName),
ArchiveFileName = Path.Combine(settings.DataFolder, logFileName + ".{#####}.txt"),
ArchiveAboveSize = 2097152, // 2 MB
@@ -59,14 +59,17 @@ namespace Jackett.Common.Utils
{
var logConsole = new ColoredConsoleTarget
{
Layout = "${date:format=MM-dd HH\\:mm\\:ss} ${level} ${message} ${onexception:inner=${newline}${newline}[v${assembly-version}] ${exception:format=ToString}${newline}}"
Layout = "${date:format=MM-dd HH\\:mm\\:ss} ${level} ${message}${onexception:inner=${newline}${newline}[v${assembly-version}] ${exception:format=ToString}${newline}}"
};
logConfig.AddTarget("console", logConsole);
var logConsoleRule = new LoggingRule("*", logLevel, logConsole);
logConfig.LoggingRules.Add(logConsoleRule);
var logService = new LogCacheService();
var logService = new LogCacheService
{
Layout = "${message}${onexception:inner=${newline}${newline}[v${assembly-version}] ${exception:format=ToString}${newline}}"
};
logConfig.AddTarget("service", logService);
var serviceRule = new LoggingRule("*", logLevel, logService);