Computer data logging is the process of recording events in a computer program or computer system, usually with a certain scope, in order to provide an audit trail that can be used to understand the activity of the system and to diagnose problems.
- Stackoverflow.com Wiki
Lessons from NYC's improperly anonymized taxi logs
Serilog is not just another logging framework. Writing JSON to a variety of output providers will enable you to get meaningful objects (and not just strings) that can be used to analyse the state of your application in much more detail.
JSON is the most popular log type used by Loggly customers because it makes it relatively easy for you to benefit from automated parsing and analytics.
“Your application is broken”, they say. You ask what doesn’t work, and they say: “We get an error”. Fantastic. What sort of error? “Well, it’s on a blue screen”. Aha…
In previous versions of ASP.NET we were mostly on our own when it came to logging. Typically we would pull in a third party library like log4net or NLog and use that throughout our application. This worked pretty well, however it also meant that we had likely coupled our code to a particular logging framework and replacing or adding to that framework was quite difficult.
Inevitably, if you’re building an API, you’re going to want to monitor requests made to that API. A big step in doing that is logging each API request so that you can capture and determine important information about your endpoints, such as data being sent in, data being returned, how many times endpoints were invoked, and how long it took endpoints to serve their requests.
Logging and instrumentation are two perennially hot topics in software development generally, and seem to be enjoying a certain renaissance in the context of microservices particularly.
Logging is a critical feature in any peace of software. Logging is really so boring but it is so important to have logging in place when starting a new solution, it will save you so much time and be a significant help in location the essence of problems.
Fundamentally, your logs should tell a story. They need to paint as clear a picture as possible as to what is going on.
A good log saves debugging time – particularly in production, by quickly helping us to pin point the root of a problem. A log containing a wealth of relevant information, reduces the amount of “I can’t reproduce” issues.