Log4NetMongo.AspNetCore 1.0.2

.NET Core 2.2
There is a newer version of this package available.
See the version list below for details.
Install-Package Log4NetMongo.AspNetCore -Version 1.0.2
dotnet add package Log4NetMongo.AspNetCore --version 1.0.2
<PackageReference Include="Log4NetMongo.AspNetCore" Version="1.0.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Log4NetMongo.AspNetCore --version 1.0.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Log4NetMongo.AspNetCore, 1.0.2"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install Log4NetMongo.AspNetCore as a Cake Addin
#addin nuget:?package=Log4NetMongo.AspNetCore&version=1.0.2

// Install Log4NetMongo.AspNetCore as a Cake Tool
#tool nuget:?package=Log4NetMongo.AspNetCore&version=1.0.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Log4NetMongo.AspNetCore

Includes all Log4Net methods with MongoDbAppender configuration for creating application logs for multiple applications and environments with user_id from ClaimsIdentity. Supports multi-tenancy by logging tenant information from ClaimsIdentity.

Updated log4mongo-net classes to work with .Net Core 2.2.

Installation

  1. Add Log4NetMongo.Core package.
  2. Set MongoLogConnection in ConnectionStrings and MongoLogCollectionName in ApplicationSettings.
  3. Add ApplicationName and Environment values in ApplicationSettings, if you choose to you can initialize the class as shown in the first example.

Configuration

appsettings.json
{
  "ConnectionStrings": {
    "MongoLogConnection": "mongodb://localhost"
  },
  "ApplicationSettings": {
    "ApplicationName": "Log4netMongo.Core",
    "Environment": "Test",
    "MongoLogCollectionName": "application.log"
  }
}

Usage

  1. Initialize class with ApplicationName and Environment
using Log4NetMongo;

AppLogger logger = new AppLogger("Test Application", "Dev");
logger.LogInfo("Test Info");
  1. Initialize class with ApplicationName and Environment in ApplicationSettings
using Log4NetMongo;

//Configuration from appsettings.json
AppLogger logger = new AppLogger();
logger.LogInfo("Test Info");

Log Model

  1. Timestamp (System Time)
  2. Level
  3. Thread
  4. Application
  5. Environment
  6. User (Application's user from ClaimsPrincipal.Current.Identity.Name)
  7. Tenant (User's tenant from ClaimsPrincipal.Current.FindFirst("tenant"))
  8. Message
  9. Data (JSON string of object passed in Data parameter)
  10. Exception
  11. Method Name (Calling method's name)
  12. File Name (Calling log's file name)
  13. Line Number (Calling log's line number)
Product Versions
.NET net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows
.NET Core netcoreapp2.2 netcoreapp3.0 netcoreapp3.1
Compatible target framework(s)
Additional computed target framework(s)
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.2.0 650 10/3/2019
1.1.3 376 10/3/2019
1.1.2 375 10/3/2019
1.1.0 388 10/3/2019
1.0.4 364 9/29/2019
1.0.3 389 9/24/2019
1.0.2 373 9/19/2019