DropBear.Codex.AppLogger 2024.4.5

There is a newer version of this package available.
See the version list below for details.
dotnet add package DropBear.Codex.AppLogger --version 2024.4.5                
NuGet\Install-Package DropBear.Codex.AppLogger -Version 2024.4.5                
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="DropBear.Codex.AppLogger" Version="2024.4.5" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DropBear.Codex.AppLogger --version 2024.4.5                
#r "nuget: DropBear.Codex.AppLogger, 2024.4.5"                
#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 DropBear.Codex.AppLogger as a Cake Addin
#addin nuget:?package=DropBear.Codex.AppLogger&version=2024.4.5

// Install DropBear.Codex.AppLogger as a Cake Tool
#tool nuget:?package=DropBear.Codex.AppLogger&version=2024.4.5                

DropBear.Codex.AppLogger

Description

DropBear.Codex.AppLogger is a flexible and configurable logging library designed to wrap around existing logging frameworks. It provides a fluent API for configuring logging behavior, including support for console and file outputs, custom log formats, and more. The library aims to make logging in .NET applications straightforward and adaptable.

Features

  • Fluent API for easy configuration
  • Supports console and file logging
  • Customizable log formats
  • Integrates with Microsoft.Extensions.Logging and ZLogger
  • Provides extension methods for easy setup with dependency injection containers

Getting Started

To use DropBear.Codex.AppLogger in your project, start by configuring the logger factory according to your needs:

Basic Configuration

var loggerFactory = new LoggerConfigurationBuilder()
    .SetLogLevel(LogLevel.Information)
    .EnableConsoleOutput(true)
    .Build();

var logger = loggerFactory.CreateLogger<MyClass>();
logger.LogInformation("Hello, World!");

Advanced Configuration with File Logging

var loggerFactory = new LoggerConfigurationBuilder()
    .SetLogLevel(LogLevel.Debug)
    .EnableConsoleOutput(true)
    .UseJsonFormatter()
    .ConfigureRollingFile("logs/", 1024)
    .Build();

var logger = loggerFactory.CreateLogger<MyClass>();
logger.LogDebug("Debugging information.");

Integration with ASP.NET Core

DropBear.Codex.AppLogger can be easily integrated into ASP.NET Core applications using the provided extension method:

public void ConfigureServices(IServiceCollection services)
{
    services.AddAppLogger(builder =>
    {
        builder.SetLogLevel(LogLevel.Information)
               .EnableConsoleOutput(true)
               .UseJsonFormatter()
               .ConfigureRollingFile("logs/", 1024);
    });
}

Warning

This code is under active pre-development and is subject to change. It may or may not work as expected and should be used with caution in production environments.

Contributing

We welcome contributions and suggestions! Please submit issues and pull requests on our GitHub repository for any features or bug fixes.

License

This project is licensed under the LGPLv3 License - see the https://www.gnu.org/licenses/lgpl-3.0.en.html for details.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  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. 
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.