Serilog.UI.MsSqlServerProvider

Package Description


Keywords
serilog, serilog-sink, serilog-ui
License
MIT
Install
Install-Package Serilog.UI.MsSqlServerProvider -Version 2.2.3-beta.1

Documentation

serilog-ui GitHub release (latest by date)

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) and Serilog.Sinks.MariaDB Nuget
  • Serilog.Sinks.Postgresql (Nuget)
  • Serilog.Sinks.MongoDB (Nuget)
  • Serilog.Sinks.ElasticSearch (Nuget)

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:

Running the Tests: 🧪

License

See LICENSE.

Issues and Contribution

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

Support

Thank you JetBrains for supporting this project.

JetBrains Logo (Main) logo