Lessla is a central logging system to unify logging across multiple applications with actual insightful data.
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
- Deploy Server Instance
- Deploy UI Instance
On SSMS Server run
ALTER DATABASE lessla SET ENABLE_BROKER
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***********"
]
}
}
- SSMS Server
- .NET 7
- 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