https://github.com/angelodotnet/serilogcustomextensions
https://github.com/angelodotnet/serilogcustomextensions
custom extension library net6 serilog
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/angelodotnet/serilogcustomextensions
- Owner: AngeloDotNet
- Created: 2023-03-10T15:07:09.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-03-15T19:30:40.000Z (over 3 years ago)
- Last Synced: 2025-06-13T05:02:08.957Z (about 1 year ago)
- Topics: custom, extension, library, net6, serilog
- Language: C#
- Homepage:
- Size: 23.4 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Serilog custom extensions
If you like this repository, please drop a :star: on Github!
## Installation
The library is available on [NuGet](https://www.nuget.org/packages/SerilogCustomExtensions) or run the following command in the .NET CLI:
```bash
dotnet add package SerilogCustomExtensions
```
## Configuration to add to the appsettings.json file
```json
"Serilog": {
"MinimumLevel": "Warning",
"WriteTo": [
{
"Name": "Console",
"Args": {
"outputTemplate": "{Timestamp:HH:mm:ss}\t{Level:u3}\t{SourceContext}\t{Message}{NewLine}{Exception}"
}
},
{
"Name": "File",
"Args": {
"path": "Logs/log.txt",
"rollingInterval": "Day",
"retainedFileCountLimit": 14,
"restrictedToMinimumLevel": "Warning",
"formatter": "Serilog.Formatting.Json.JsonFormatter, Serilog"
}
}
]
}
```
## Registering services at Startup
```csharp
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public IConfiguration Configuration { get; }
public void ConfigureServices(IServiceCollection services)
{
services.AddSerilogServices();
}
//OMISSIS
public void Configure(WebApplication app)
{
app.AddSerilogConfigureServices();
}
```
## Registering services at Program
```csharp
public static void Main(string[] args)
{
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
builder.AddSerilogOptionsBuilder();
Startup startup = new(builder.Configuration);
//OMISSIS
}
```
## Example of use in a web api controller
```csharp
[ApiController]
[Route("api/[controller]")]
public class EmailController : ControllerBase
{
private readonly ILoggerService loggerService;
public EmailController(ILoggerService loggerService)
{
this.loggerService = loggerService;
}
//OMISSIS
}
```