Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Serilog - how to customize date in rolling file name?

Tags:

c#

serilog

In Serilog, you can easily enable rolling log files:

Log.Logger = new LoggerConfiguration()
    .WriteTo.File("log-.txt", rollingInterval: RollingInterval.Day)
    .CreateLogger();

This will create a new log file every day in the following format:

  • log-20200214.txt
  • log-20200215.txt
  • log-20200216.txt

My question: is it possible to customize where the date is placed in the file name, and to customize how the date is formatted?

e.g. I want the file names to look like this:

  • 2020-02-14-log.txt
  • 2020-02-15-log.txt
  • 2020-02-16-log.txt

I was hoping replacing "log-.txt" with "{Date:yyyy-MM-dd}-log.txt" would work, but it doesn't.

like image 571
Phil K Avatar asked Dec 08 '25 01:12

Phil K


1 Answers

This is not currently supported by the Serilog.Sinks.File sink. If you really want this feature, you can try to send a pull-request, or fork the repository and use your own custom implementation.

Links you might be interested in:

  • Support {Date} for log path
  • Serilog {Date} format when using RollingFile
  • Ability to use DateTime format strings in Rolling File Sinks file names
  • Support for path by date
like image 199
C. Augusto Proiete Avatar answered Dec 10 '25 14:12

C. Augusto Proiete