Skip to content

Commit 6fae6f8

Browse files
author
Bart Koelman
committed
Tweaks in error logging
1 parent 9676990 commit 6fae6f8

File tree

3 files changed

+7
-3
lines changed

3 files changed

+7
-3
lines changed

src/JsonApiDotNetCore/Exceptions/JsonApiException.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
using System;
22
using System.Net;
33
using JsonApiDotNetCore.Models.JsonApiDocuments;
4+
using Newtonsoft.Json;
45

56
namespace JsonApiDotNetCore.Exceptions
67
{
@@ -22,5 +23,7 @@ public JsonApiException(HttpStatusCode status, string message)
2223
Title = message
2324
};
2425
}
26+
27+
public override string Message => "Error = " + JsonConvert.SerializeObject(Error, Formatting.Indented);
2528
}
2629
}

src/JsonApiDotNetCore/Middleware/DefaultExceptionHandler.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
using System;
2+
using System.Diagnostics;
23
using System.Net;
34
using JsonApiDotNetCore.Configuration;
45
using JsonApiDotNetCore.Exceptions;
5-
using JsonApiDotNetCore.Internal;
66
using JsonApiDotNetCore.Models.JsonApiDocuments;
77
using Microsoft.Extensions.Logging;
88

@@ -30,7 +30,8 @@ private void LogException(Exception exception)
3030
{
3131
var level = GetLogLevel(exception);
3232

33-
_logger.Log(level, exception, exception.Message);
33+
Exception demystified = exception.Demystify();
34+
_logger.Log(level, demystified, $"Intercepted {demystified.GetType().Name}: {demystified.Message}");
3435
}
3536

3637
protected virtual LogLevel GetLogLevel(Exception exception)

test/JsonApiDotNetCoreExampleTests/Acceptance/Extensibility/CustomErrorHandlingTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ public void When_using_custom_exception_handler_it_must_create_error_document_an
3131

3232
Assert.Single(loggerFactory.Logger.Messages);
3333
Assert.Equal(LogLevel.Warning, loggerFactory.Logger.Messages[0].LogLevel);
34-
Assert.Equal("Access is denied.", loggerFactory.Logger.Messages[0].Text);
34+
Assert.Contains("Access is denied.", loggerFactory.Logger.Messages[0].Text);
3535
}
3636

3737
public class CustomExceptionHandler : DefaultExceptionHandler

0 commit comments

Comments
 (0)