プログラムのログを書き込むために log4cplus を使用しています。ただし、DailyRollingFileAppender は期待どおりに機能しないようです。ログ ファイルは午前 0 時にロールされません。代わりに、午前 0 時以降に最初のログ メッセージが書き込まれたときに、ファイルがロールされます。私のアプリケーションでは、新しい日の「最初のメッセージ」は真夜中の数時間後になる可能性があります。しかし、ログ ファイルを正確に真夜中の 00:00 にローテーションする必要があります。以下は、log4cplus の構成ファイルです。
log4cplus.rootLogger=TRACE, ROLLING, STDOUT
log4cplus.appender.STDOUT=log4cplus::ConsoleAppender
log4cplus.appender.STDOUT.layout=log4cplus::PatternLayout
log4cplus.appender.STDOUT.layout.ConversionPattern=%D{%Y-%m-%d %H:%M:%S.%q} %-5p - %m [%l]%n
log4cplus.appender.ROLLING=log4cplus::DailyRollingFileAppender
log4cplus.appender.ROLLING.Schedule=DAILY
log4cplus.appender.ROLLING.File=/var/log/myprog/myprog1/ldapproxy
log4cplus.appender.ROLLING.Append=true
log4cplus.appender.ROLLING.DatePattern='.'yyyy-MM-dd
log4cplus.appender.ROLLING.layout=log4cplus::PatternLayout
log4cplus.appender.ROLLING.layout.ConversionPattern=[%T] %D{%Y-%m-%d %H:%M:%S.%q} %-5p - %m [%l]%n