Serilog.UI 2.5.0

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

// Install Serilog.UI as a Cake Tool
#tool nuget:?package=Serilog.UI&version=2.5.0                

serilog-ui GitHub release (latest by date) alternate text is missing from this package README image

DotNET-build DotNET Coverage Quality Gate Status

JS-build Coverage Quality Gate Status

A simple Serilog log viewer for the following sinks:

  • Serilog.Sinks.MSSqlServer (Nuget)
  • Serilog.Sinks.MySql (Nuget)
  • Serilog.Sinks.Postgresql (Nuget)
  • Serilog.Sinks.MongoDB (Nuget)
  • Serilog.Sinks.ElasticSearch (Nuget)

<img src="https://raw.githubusercontent.com/mo-esmp/serilog-ui/master/assets/serilog-ui.jpg" width="100%" />

Read the Wiki 📘

Quick Start 💨

Nuget packages installation

Install the Serilog.UI NuGet package:

# using dotnet cli
dotnet add package Serilog.UI

# using package manager:
Install-Package Serilog.UI

Install one of the available providers, based upon your sink:

Provider install: dotnet install: pkg manager
Serilog.UI.MsSqlServerProvider [NuGet] dotnet add package Serilog.UI.MsSqlServerProvider Install-Package Serilog.UI.MsSqlServerProvider
Serilog.UI.MySqlProvider [NuGet] dotnet add package Serilog.UI.MySqlProvider Install-Package Serilog.UI.MySqlProvider
Serilog.UI.PostgreSqlProvider [NuGet] dotnet add package Serilog.UI.PostgreSqlProvider Install-Package Serilog.UI.PostgreSqlProvider
Serilog.UI.MongoDbProvider [NuGet] dotnet add package Serilog.UI.MongoDbProvider Install-Package Serilog.UI.MongoDbProvider
Serilog.UI.ElasticSearchProvider [NuGet] dotnet add package Serilog.UI.ElasticSearchProvider Install-Package Serilog.UI.ElasticSearcProvider

DI registration

Add AddSerilogUi() to IServiceCollection in your Startup.ConfigureServices method:

public void ConfigureServices(IServiceCollection services)
{
    // Register the serilog UI services
    services.AddSerilogUi(options => 
      // each provider exposes extension methods to configure.
      // example with MSSqlServerProvider:
      options.UseSqlServer("ConnectionString", "LogTableName"));
}

In the Startup.Configure method, enable the middleware to serve the log UI page. Note: call to the UseSerilogUi middleware must be placed after any Authentication and Authorization middleware, otherwise the authentication may not work:

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
    (...)

    app.UseRouting();
    app.UseAuthentication();
    app.UseAuthorization();
        
    // Enable middleware to serve log-ui (HTML, JS, CSS, etc.).
    app.UseSerilogUi();

    (...)

    app.UseEndpoints(endpoints =>
    {
        endpoints.MapControllerRoute(
            name: "default",
            pattern: "{controller=Home}/{action=Index}/{id?}");
    });
}

For further configuration: :fast_forward:

Running the Tests: :test_tube:

License

See LICENSE.

Issues and Contribution

Everything is welcome! 🏆 See the contribution guidelines for details.

Product Compatible and additional computed target framework versions.
.NET net5.0 is compatible.  net5.0-windows was computed.  net6.0 is compatible.  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 is compatible.  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 netcoreapp3.1 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on Serilog.UI:

Package Downloads
Pina.SharedApi

Package Description

WGM.Infrastructure.Core

Package Description

base-app.packages.log

base-app serilog and elmah

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
3.1.0 3,849 10/10/2024
3.1.0-beta.1 825 8/15/2024
3.0.2 1,657 9/21/2024
3.0.1 3,689 8/15/2024
3.0.0 998 8/10/2024
2.6.0 33,738 1/29/2024
2.5.1 12,307 11/8/2023
2.5.0 7,356 10/3/2023
2.4.0 29,717 3/16/2023 2.4.0 is deprecated because it has critical bugs.
2.3.0 454 3/13/2023
2.2.3 11,681 11/25/2022
2.2.1 16,132 9/9/2022
2.2.0 1,790 8/25/2022
2.1.3 3,129 7/20/2022
2.1.2 2,729 5/28/2022
2.1.1 27,572 11/29/2021
2.1.0 13,302 4/20/2021
2.0.1 26,209 2/2/2021
2.0.0 3,635 1/15/2021
1.0.5 1,116 12/23/2020
1.0.4 3,077 10/25/2020
1.0.3 771 5/23/2020
1.0.2 1,338 4/11/2020