logback在名称为当前日期的文件夹中创建日志文件

在我目前的项目中,我希望日期创建日志文件,即日志文件应该驻留在里面
名称为日期的文件夹。 归档也应该在该特定文件夹中进行。

我正在使用的当前appender看起来像这样(它根据大小存档日志文件)。

 ${PROJECT_HOME}\\projectname\\audits\\myproject.log true  ${PROJECT_HOME}\\projectname\\audits\\myproject_%d{yyyy-MM-dd}.%i.zip  10  10KB    %date %msg%n    

如fileNamePattern文档中所述,您可以指定多个%d标记,以便将日期放在存档文件名的文件夹名称中:

 ${PROJECT_HOME}\\projectname\\audits\\%d{yyyy-MM, aux}\\myproject_%d{yyyy-MM-dd}.%i.zip 

请注意,只有一个%d标记可以是主标记,所有其他标记必须通过传递’aux’参数标记为辅助标记。

但是,如果您还想将其放在非归档文件名的文件名中,那么您有两个选择:

  1. 使用元素设置您在路径中使用的变量。 但是这个时间戳只会在启动时设置一次,所以它对批处理运行有好处,但不适用于服务。

  2. 如上所述(1),但使用SiftingAppender包装 ,如果使用logback> = 1.0.12的版本,则可以重新评估时间戳。 不确定您要如何配置SiftingAppender 。 但希望这会让你走上正轨。