mirror of
https://github.com/Jackett/Jackett.git
synced 2025-09-17 17:34:09 +02:00
Add logging
This commit is contained in:
53
src/Jackett/Utils/WebAPIToNLogTracer.cs
Normal file
53
src/Jackett/Utils/WebAPIToNLogTracer.cs
Normal file
@@ -0,0 +1,53 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Net.Http;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web.Http.Tracing;
|
||||
|
||||
namespace Jackett.Utils
|
||||
{
|
||||
public class WebAPIToNLogTracer : ITraceWriter
|
||||
{
|
||||
public void Trace(HttpRequestMessage request, string category, TraceLevel level,
|
||||
Action<TraceRecord> traceAction)
|
||||
{
|
||||
if (Engine.TracingEnabled)
|
||||
{
|
||||
TraceRecord rec = new TraceRecord(request, category, level);
|
||||
traceAction(rec);
|
||||
WriteTrace(rec);
|
||||
}
|
||||
}
|
||||
|
||||
protected void WriteTrace(TraceRecord rec)
|
||||
{
|
||||
var message = string.Format("{0} {1} {2}", rec.Operator, rec.Operation, rec.Message);
|
||||
switch (rec.Level)
|
||||
{
|
||||
case TraceLevel.Debug:
|
||||
Engine.Logger.Debug(message);
|
||||
break;
|
||||
case TraceLevel.Error:
|
||||
Engine.Logger.Error(message);
|
||||
break;
|
||||
case TraceLevel.Fatal:
|
||||
Engine.Logger.Fatal(message);
|
||||
break;
|
||||
case TraceLevel.Info:
|
||||
Engine.Logger.Info(message);
|
||||
break;
|
||||
case TraceLevel.Off:
|
||||
// Do nothing?
|
||||
break;
|
||||
case TraceLevel.Warn:
|
||||
Engine.Logger.Warn(message);
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
System.Diagnostics.Trace.WriteLine(message, rec.Category);
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user