Git Product home page Git Product logo

Comments (6)

huorswords avatar huorswords commented on July 23, 2024

Hello @cezarypiatek ,

No, it is not a justified reason, it is only a business decission when I adapted the original version of the Logger implementation.

Sorry by my ignorance, but do you have any example of what you are expecting for in order to be able to sepparate log message from the exception stack trace?

Thank you. Regards,

from microsoft.extensions.logging.log4net.aspnetcore.

cezarypiatek avatar cezarypiatek commented on July 23, 2024

hi @huorswords

Thanks for replay. Log4net has a few conversion patterns (such as %exception, %stactrace, %stactracedetail) which are not populated when you omit the exception argument in logging method. You can read more about these conversion patters here https://logging.apache.org/log4net/log4net-1.2.13/release/sdk/log4net.Layout.PatternLayout.html

When the exception is not merged into single message field I can separated message from the stacktrace on the layout pattern level and use it later for log parsing.

from microsoft.extensions.logging.log4net.aspnetcore.

huorswords avatar huorswords commented on July 23, 2024

Hello @cezarypiatek ,

Thank you by your explanation.

I have pushed a branch https://github.com/huorswords/Microsoft.Extensions.Logging.Log4Net.AspNetCore/tree/feature/15 that includes a simple test to check how the exception stacktrace is formatted using pattern layout. But unfortunately, I am not able to configure it properly to use the stacktrace pattern...

Can you check out the branch and let me know if I'm missing something?

Thank you.

from microsoft.extensions.logging.log4net.aspnetcore.

cezarypiatek avatar cezarypiatek commented on July 23, 2024

@huorswords I will check that later

from microsoft.extensions.logging.log4net.aspnetcore.

cezarypiatek avatar cezarypiatek commented on July 23, 2024

I have no idea why StackTracePatternConverter is not working but the stacktrace can be obtained using ExceptionPatternConverter with stacktrace parameter as follows

<layout type="log4net.Layout.PatternLayout">
    <conversionPattern value="%level %thread - STACK: %exception{stacktrace} - MESSAGE: %message%newline" />
</layout>

I've tested it with your UT and it seems to work

ExceptionPatternConverter has the following options:

  • message
  • source
  • helplink
  • stacktrace

from microsoft.extensions.logging.log4net.aspnetcore.

huorswords avatar huorswords commented on July 23, 2024

Hello @cezarypiatek ,

Thank you by your help & suggestions.

I have merged the changes on branch feature/15 into develop and master, and deploy the resulting nuget package into nuget.org.

Now, the Exception Pattern converter should be available and working properly throught the log4net logger on the nuget package.

Regards

from microsoft.extensions.logging.log4net.aspnetcore.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.