Reputation: 150
I use Serilog on a .NET Core application with RollingFile. I wonder, if there are different filename placeholders? I only know {Date}.
For example, I have code like
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Information()
.WriteTo.RollingFile("Logs/{Date}.log")
.CreateLogger();
Are there any other options for the filename like {Date}? I'd like to have log files by hour.
Upvotes: 7
Views: 22364
Reputation: 51
You can also add environment variables into the appsettings.json as %USERNAME%
Upvotes: 0
Reputation: 914
UPDATE : 2022
Because "Serilog.Sinks.RollingFile" is obsolete now you should use "Serilog.Sinks.File" It's as easy though :
var log = new LoggerConfiguration()
.WriteTo.File("log.txt", rollingInterval: RollingInterval.Day)
.CreateLogger();
This will append the time period to the filename, creating a file set like:
log20180631.txt
log20180701.txt
log20180702.txt
For differentes choices :
https://github.com/serilog/serilog-sinks-file
Upvotes: 11
Reputation: 27878
At the time of this writing, Serilog's Rolling File sink supports 3 (three) specifiers:
{Date}
, which is formatted as yyyyMMdd
{Hour}
, which is formatted as yyyyMMddHH
{HalfHour}
, which is formatted as yyyyMMddHHmm
You can see it in the README of the Rolling File sink, as well as in the source code of the Rolling File sink.
Upvotes: 17