Skip to content
/ LESSLA Public

Central Logging Dashboard for .NET applications - Utilize Serilog's sinks

Notifications You must be signed in to change notification settings

yrezehi/LESSLA

Repository files navigation

LESSLA

Lessla is a central logging system to unify logging across multiple applications with actual insightful data.


Overview




Features

There are few neat futures of LESSLA and you might think it's the definition of ReInVeNtInG tHe wHeEL might be yes, but I took into account the cabibility to monitor mutiple applications with least amount of LOC possible and neat insightful logs.

  • Log aggregation
  • Health check

Deployment Checklist

  • Deploy Server Instance
  • Deploy UI Instance

Database Permission

On SSMS Server run

ALTER DATABASE lessla SET ENABLE_BROKER

Hooking up with the server

To be able to integerate with the server, install below Nuget packages

  • Serilog.AspNetCore
  • Serilog.Enrichers.Environment
  • Serilog.Exceptions
  • Serilog.Sinks.Http

Setup serilog in Program.cs


builder.Host.UseSerilog();
Log.Logger = new LoggerConfiguration()
    .ReadFrom.Configuration(
    new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory())
        .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
        .AddJsonFile($"apsettings.{Environment.GetEnvironmentVariable("DOTNET_ENVIRONMENT") ?? "Production"}.json", optional: true, reloadOnChange: true)
        .AddEnvironmentVariables().Build()
    ).CreateLogger();

And put below in appsettings.json


  "Serilog": {
    "Using": [ "Serilog.Sinks.Http", "Serilog.Exceptions" ],
    "MinimumLevel": "Error",
    "WriteTo": [
      {
        "Name": "DurableHttpUsingFileSizeRolledBuffers",
        "Args": {
          "requestUri": "http***********"
        }
      }
    ],
    "Enrich": [ "FromLogContext", "WithExceptionDetails" ],
    "Properties": {
      "Application": "Sample"
    }
  },
  "Lessla": {
    "HealthCheck": {
      "endpoints": [
        "http***********"
      ]
    }
  }

Deployment Requirements

  • SSMS Server
  • .NET 7

Road Map

  • Durable logger on client and server sides
  • Notification center
  • Logger insights for dashboard
  • Health check center
  • LLama integration

⚠️ Project was tested on .NET 7 projects

About

Central Logging Dashboard for .NET applications - Utilize Serilog's sinks

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published