瀏覽代碼

Add logging of URL being processed when logging an error
This might help diagnosing stuff like "Operation was cancelled"

Vasily 5 年之前
父節點
當前提交
71d8e66d9f
共有 1 個文件被更改,包括 9 次插入5 次删除
  1. 9 5
      Emby.Server.Implementations/HttpServer/HttpListenerHost.cs

+ 9 - 5
Emby.Server.Implementations/HttpServer/HttpListenerHost.cs

@@ -3,6 +3,7 @@
 using System;
 using System.Collections.Generic;
 using System.Diagnostics;
+using System.Globalization;
 using System.IO;
 using System.Linq;
 using System.Net.Sockets;
@@ -239,19 +240,22 @@ namespace Emby.Server.Implementations.HttpServer
             }
         }
 
-        private async Task ErrorHandler(Exception ex, IRequest httpReq, bool logExceptionStackTrace)
+        private async Task ErrorHandler(Exception ex, IRequest httpReq, bool logExceptionStackTrace, string urlToLog)
         {
+            string urlSuffix = string.IsNullOrWhiteSpace(urlToLog)
+                ? string.Format(CultureInfo.InvariantCulture, "; URL being processed: {0}", urlToLog)
+                : "";
             try
             {
                 ex = GetActualException(ex);
 
                 if (logExceptionStackTrace)
                 {
-                    _logger.LogError(ex, "Error processing request");
+                    _logger.LogError(ex, "Error processing request{Suffix}", urlSuffix);
                 }
                 else
                 {
-                    _logger.LogError("Error processing request: {Message}", ex.Message);
+                    _logger.LogError("Error processing request: {Message}{Suffix}", ex.Message, urlSuffix);
                 }
 
                 var httpRes = httpReq.Response;
@@ -271,7 +275,7 @@ namespace Emby.Server.Implementations.HttpServer
             }
             catch (Exception errorEx)
             {
-                _logger.LogError(errorEx, "Error this.ProcessRequest(context)(Exception while writing error to the response)");
+                _logger.LogError(errorEx, "Error this.ProcessRequest(context)(Exception while writing error to the response){Suffix}", urlSuffix);
             }
         }
 
@@ -553,7 +557,7 @@ namespace Emby.Server.Implementations.HttpServer
                     || ex is OperationCanceledException
                     || ex is SecurityException
                     || ex is FileNotFoundException;
-                await ErrorHandler(ex, httpReq, ignoreStackTrace).ConfigureAwait(false);
+                await ErrorHandler(ex, httpReq, ignoreStackTrace, urlToLog).ConfigureAwait(false);
             }
             finally
             {