logrotateはとても便利ですが、ローテーションの周期に今まで一番小さい単位でもdaily(日毎)しかありませんでした。 そのため、時間ごとのローテートを行う際にはpostrotateなどでごにょごにょしたり、cronなど設定する必要がありました。。。 /var/log/nginx/*log { create 0644 nginx nginx daily rotate 10 missingok notifempty #compress size 1 nodateext sharedscripts postrotate EXT=`date +%Y%m%d%H%M` for f in $1 do ls $f.1 >/dev/null 2>&1 if [ $? -eq 0 ] ; then mv $f.1 $f.$EXT gzip $f.$EXT fi done /etc/init.d/ng