WonderTools.JitLogger 1.1.1

dotnet add package WonderTools.JitLogger --version 1.1.1                
NuGet\Install-Package WonderTools.JitLogger -Version 1.1.1                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="WonderTools.JitLogger" Version="1.1.1" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add WonderTools.JitLogger --version 1.1.1                
#r "nuget: WonderTools.JitLogger, 1.1.1"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install WonderTools.JitLogger as a Cake Addin
#addin nuget:?package=WonderTools.JitLogger&version=1.1.1

// Install WonderTools.JitLogger as a Cake Tool
#tool nuget:?package=WonderTools.JitLogger&version=1.1.1                

JitLogger

Just in time logger for ASP.NET Core applications

Logging in ASP.NET Core

Microsoft has modularized logging in ASP.Net core application. Logging could be done in ASP.Net core by injecting an interface "ILogger" to your business code. When logged in ILogger, the logs are available to the logging providers in the system. The logging providers could take the log and put it to the console, or debug or application insights or to a file or anywhere else. Logging providers could be easily added by one or two lines of code. This has made accessing of application logs very easy.

There are many logging providers provided by default such as Console, Debug, ApplicationInsights, etc... There are also other logging providers such as Serilog, NLog, etc... It is also very easy to implement your own logging provider.

Philosophy of Jit Logger

Most of the logger that are now available are making sure that logs are safely stored, and are analysable in the futher. They are doing a fantastic job. Most of the loggers are taking some time (few minutes) to make the log available. There were no logger that makes the logs instantaneously available. (Or at least I wasn't able to find). With Jit Logger a latest portion of your logs are instantaneous available in in a web page in your own application.

Jit logger's philosophy is quick and easy access to recent logs in an analysable form.

Expected benefits of Jit Logger

  1. Speed up developement by reducing debugging time
  2. Speed up testing
  3. Assists in debugging in enviroments where break points are not possible.
  4. Aggregating of logs from a bunch of micro services

How to use it

  1. In your asp.net core application install the nuget package "Nachiappan.JitLogger"
  2. In ConfigureServices method in Startup.cs, add JitLogger by "services.AddJitLogger();"
  3. In Configure method in Startup.cs, inject ILoggerFactory by "ILoggerFactory loggerFactory"
  4. In Configure method in Startup.cs, add JitLogger Middleware by "app.UseJitLogger(loggerFactory);"
  5. When all the above steps are done, the logs are available you asp.net application in YOUR_HOST/jit-logger/ui.

Sample

Sample application using jit logger is also available in the below link https://github.com/WonderTools/JitLoggerUsageSample#jitloggerusagesample

Releases

All releases are planned to be done through nuget. https://www.nuget.org/packages/Nachiappan.JitLogger

Features

  1. Just in Time logging for asp.net core applications (Available from 1.0.0)
  2. Aggregation of Just in Time logs from multiple services (To be done)
  3. Modifiying the Jit logging parameters at run-time (To be done)
  4. Adding authentication for Jit Logger (To be done)
Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.1.1 1,416 9/23/2018
1.1.0 1,309 9/22/2018
1.0.0 1,280 9/18/2018

bug fix for json data in ajax call