ufw 0000644 00000000321 15237770452 0005300 0 ustar 00 /var/log/ufw.log
{
rotate 4
weekly
missingok
notifempty
compress
delaycompress
sharedscripts
postrotate
[ -x /usr/lib/rsyslog/rsyslog-rotate ] && /usr/lib/rsyslog/rsyslog-rotate || true
endscript
}
mariadb 0000644 00000003503 15237770452 0006103 0 ustar 00 # This is the MariaDB configuration for the logrotate utility
#
# Note that on most Linux systems logs are written to journald, which has its
# own rotation scheme.
#
# Read https://mariadb.com/kb/en/error-log/ to learn more about logging and
# https://mariadb.com/kb/en/rotating-logs-on-unix-and-linux/ about rotating logs.
/var/lib/mysql/mysqld.log /var/lib/mysql/mariadb.log /var/log/mysql/*.log {
# Depends on a mysql@localhost unix_socket authenticated user with RELOAD privilege
#su mysql mysql
# If any of the files listed above is missing, skip them silently without
# emitting any errors
missingok
# If file exists but is empty, don't rotate it
notifempty
# Run monthly
monthly
# Keep 6 months of logs
rotate 6
# If file is growing too big, rotate immediately
maxsize 500M
# If file size is too small, don't rotate at all
minsize 50M
# Compress logs, as they are text and compression will save a lot of disk space
compress
# Don't compress the log immediately to avoid errors about "file size changed while zipping"
delaycompress
# Don't run the postrotate script for each file configured in this file, but
# run it only once if one or more files were rotated
sharedscripts
# After each rotation, run this custom script to flush the logs. Note that
# this assumes that the mariadb-admin command has database access, which it
# has thanks to the default use of Unix socket authentication for the 'mysql'
# (or root on Debian) account used everywhere since MariaDB 10.4.
postrotate
if test -r /etc/mysql/debian.cnf
then
EXTRAPARAM='--defaults-file=/etc/mysql/debian.cnf'
fi
if test -x /usr/bin/mariadb-admin
then
/usr/bin/mariadb-admin $EXTRAPARAM --local flush-error-log \
flush-engine-log flush-general-log flush-slow-log
fi
endscript
}
wp-toolkit-action-logs 0000644 00000010160 15237770452 0011027 0 ustar 00 /usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/d40e16c6-3d1f-4f56-acfe-75317438d659/d40e16c6-3d1f-4f56-acfe-75317438d659.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/1c6c05fe-df59-43ac-8167-e1be8371fb7d/1c6c05fe-df59-43ac-8167-e1be8371fb7d.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/372b5537-9924-4228-8cc4-8cbf6992769e/372b5537-9924-4228-8cc4-8cbf6992769e.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/d70cfba6-d34f-4b2a-bf06-fcf7e20b629a/d70cfba6-d34f-4b2a-bf06-fcf7e20b629a.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/13563b04-a9a7-4536-bcaf-d669bfe28bb6/13563b04-a9a7-4536-bcaf-d669bfe28bb6.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/de93d92c-fcaf-410d-9fb1-cf5fdfc6c1fe/de93d92c-fcaf-410d-9fb1-cf5fdfc6c1fe.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/d0bcc25c-ce5f-46ce-81e8-01ea1fda59b0/d0bcc25c-ce5f-46ce-81e8-01ea1fda59b0.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/08fc1cb0-a4b8-4ad7-ab58-dfb504d890db/08fc1cb0-a4b8-4ad7-ab58-dfb504d890db.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/3d4dd2b0-495a-4f62-b2d6-d57363286e97/3d4dd2b0-495a-4f62-b2d6-d57363286e97.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/ac13a9a2-47e7-409e-bb86-73f184b84b32/ac13a9a2-47e7-409e-bb86-73f184b84b32.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/c94d3ada-c1df-477e-af8d-a39d5fc2f024/c94d3ada-c1df-477e-af8d-a39d5fc2f024.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/0a32e446-9458-485c-a7ed-2b2255ff0aff/0a32e446-9458-485c-a7ed-2b2255ff0aff.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/02cfde05-07ed-4b67-b68b-cf12132f67f6/02cfde05-07ed-4b67-b68b-cf12132f67f6.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/32c3b4a8-3f81-4c8e-96e6-7cd910d6fc4a/32c3b4a8-3f81-4c8e-96e6-7cd910d6fc4a.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/9b196aa3-75cc-4f10-8f08-776934b32b0b/9b196aa3-75cc-4f10-8f08-776934b32b0b.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/c79c6ea0-ac90-4629-b93a-2233438738e8/c79c6ea0-ac90-4629-b93a-2233438738e8.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/0915b756-173b-435a-88d3-cb3a17694c10/0915b756-173b-435a-88d3-cb3a17694c10.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/301236e2-f0e5-4194-b8c0-edab67546003/301236e2-f0e5-4194-b8c0-edab67546003.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/f0332154-8504-43e3-a123-1a8c1c359959/f0332154-8504-43e3-a123-1a8c1c359959.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/b034fb20-77a5-4459-a58e-60a7309aad92/b034fb20-77a5-4459-a58e-60a7309aad92.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/c83f9858-cf1f-4259-ab75-968247ee8eb7/c83f9858-cf1f-4259-ab75-968247ee8eb7.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/e9077c57-af9e-4cb2-b532-fc125d6ceb8e/e9077c57-af9e-4cb2-b532-fc125d6ceb8e.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/de06371f-73dd-4744-a6da-dcb51bd69757/de06371f-73dd-4744-a6da-dcb51bd69757.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/d146356c-7a77-4a60-bab8-2eeab2b9d5f4/d146356c-7a77-4a60-bab8-2eeab2b9d5f4.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/ab2b04af-c335-46fb-b37a-a04de6f4cd89/ab2b04af-c335-46fb-b37a-a04de6f4cd89.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/9cd3a1ac-25d7-4130-aac8-5f7cc3960394/9cd3a1ac-25d7-4130-aac8-5f7cc3960394.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/afbba137-deac-426f-9af1-469aae4f96e4/afbba137-deac-426f-9af1-469aae4f96e4.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/a96bed7e-f3a1-4bca-9d50-cee0b01122ee/a96bed7e-f3a1-4bca-9d50-cee0b01122ee.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/8b51c489-73f0-406f-bef2-bec2ffcfbd8e/8b51c489-73f0-406f-bef2-bec2ffcfbd8e.log
/usr/local/cpanel/3rdparty/wp-toolkit/var/logs/action-logs/f21231c6-f00f-470b-8d6d-467aab3dc63e/f21231c6-f00f-470b-8d6d-467aab3dc63e.log
{
size 200k
compress
rotate 10
missingok
copytruncate
}
dpkg 0000644 00000000160 15237770452 0005425 0 ustar 00 /var/log/dpkg.log {
monthly
rotate 12
compress
delaycompress
missingok
notifempty
create 644 root root
}
wp-toolkit 0000644 00000000243 15237770452 0006613 0 ustar 00 /usr/local/cpanel/3rdparty/wp-toolkit/var/logs/sw-*.log {
size 10M
rotate 5
copytruncate
missingok
notifempty
compress
delaycompress
}
ubuntu-pro-client 0000644 00000000416 15237770452 0010100 0 ustar 00 # use the root group by default, since this is the owning group
# of /var/log/ubuntu-advantage*.log files.
/var/log/ubuntu-advantage*.log {
su root root
create 0644 root root
rotate 6
monthly
compress
delaycompress
missingok
notifempty
}
apache 0000644 00000000303 15237770452 0005720 0 ustar 00 /var/log/cpanel-server-traffic/web/traffic-apache.log {
rotate 5
daily
compress
missingok
extension traffic-apache.log
dateext
dateformat %Y-%m-%d-
dateyesterday
} wtmp 0000644 00000000221 15237770452 0005465 0 ustar 00 # no packages own wtmp -- we'll rotate it here
/var/log/wtmp {
missingok
monthly
create 0664 root utmp
minsize 1M
rotate 1
}
apt 0000644 00000000255 15237770452 0005271 0 ustar 00 /var/log/apt/term.log {
rotate 12
monthly
compress
missingok
notifempty
}
/var/log/apt/history.log {
rotate 12
monthly
compress
missingok
notifempty
}
bootlog 0000644 00000000133 15237770452 0006145 0 ustar 00 /var/log/boot.log
{
missingok
daily
copytruncate
rotate 7
notifempty
}
alternatives 0000644 00000000170 15237770452 0007202 0 ustar 00 /var/log/alternatives.log {
monthly
rotate 12
compress
delaycompress
missingok
notifempty
create 644 root root
}
cloud-init 0000644 00000000220 15237770452 0006544 0 ustar 00 /var/log/cloud-init*.log
{
su root root
missingok
nocreate
notifempty
rotate 6
compress
delaycompress
size 1M
}
ea-php82-php-fpm 0000644 00000000401 15237770452 0007367 0 ustar 00 /opt/cpanel/ea-php82/root/var/log/php-fpm/*log {
missingok
notifempty
sharedscripts
delaycompress
postrotate
/bin/kill -SIGUSR1 `cat /opt/cpanel/ea-php82/root/var/run/php-fpm/php-fpm.pid 2>/dev/null` 2>/dev/null || true
endscript
}
btmp 0000644 00000000202 15237770452 0005437 0 ustar 00 # no packages own btmp -- we'll rotate it here
/var/log/btmp {
missingok
monthly
create 0660 root utmp
rotate 1
}
imunify-core 0000644 00000004167 15237770452 0007121 0 ustar 00 # Rotation for the agent's root-owned logs under /var/log/imunify360/,
# replacing the in-process RotatingCompressionFileHandler.
#
# Only root-owned paths are listed here. Non-root invocations (e.g. CageFS
# user contexts) route logs to per-user dirs under
# /var/log/imunify360_user_logs/<user>/ that are owned by the unprivileged
# user. Rotating those from root's logrotate would let the user redirect
# root's create/copy/truncate via a symlink (a logrotten-style privilege
# escalation), so they are deliberately excluded and bounded in-process
# instead — see defence360agent/internals/logger.py.
#
# Uses copytruncate so the agent's open fd remains valid across rotation
# (same inode, just truncated) — no postrotate signal needed and no risk
# of the agent writing into a renamed/deleted file. The brief copy↔truncate
# window may drop a handful of bytes under heavy logging; acceptable for
# debug logs.
#
# Shipped by imunify-core because the agent code (defence360agent) that
# writes these files is shipped by imunify-core; this keeps the rotation
# config co-located with the writer for both Imunify360 and ImunifyAV
# installations.
#
# error.log is intentionally NOT listed here: the Go resident agent
# (src/resident-agent/errorlog.go) owns rotation for that file with its
# own size-based rename chain. Letting logrotate also touch error.log
# means two writers compete on error.log.{1,2,...}.gz, and the Go agent's
# next rotate() copyFile(error.log, error.log.1) would clobber an
# uncompressed archive that logrotate had just produced under
# `delaycompress`.
/var/log/imunify360/network.log
/var/log/imunify360/debug.log
/var/log/imunify360/console.log
/var/log/imunify360/hook.log
/var/log/imunify360/process_message.log
/var/log/imunify360/acronis-installer.log
{
daily
maxsize 60M
rotate 5
# Drop archives older than 30 days regardless of position. This also
# eventually purges leftovers from the old in-process rotation
# (console.log.6.gz, console.log.7.gz, ...) that the fixed rename
# chain never touched.
maxage 30
missingok
notifempty
compress
delaycompress
copytruncate
}
apport 0000644 00000000176 15237770452 0006014 0 ustar 00 /var/log/apport.log {
daily
rotate 7
delaycompress
compress
notifempty
missingok
}
imunify360-antivirus 0000644 00000002101 15237770452 0010430 0 ustar 00 # Logrotate configuration for logs managed by imunify-antivirus package.
# This file is installed by the imunify-antivirus package.
/var/log/imunify360/aibolit_actions.log
/var/log/imunify360/mds_actions.log {
# Rotate daily, or sooner if size exceeds 50MB (checked when logrotate runs)
daily
maxsize 50M
# Keep rotated files for 3 days
maxage 3
# Add datetime to rotated filename
# Note: CentOS 7 logrotate doesn't support %H%M%S, using %s (unix timestamp) for uniqueness
# Rotated files will have following names: aibolit_actions.log-20260107-1767805468.gz
dateext
dateformat -%Y%m%d-%s
# Don't error if log file is missing
missingok
# Don't rotate empty files
notifempty
# Copy and truncate instead of moving the log file
# This allows the service to keep writing without restart
copytruncate
# Compress rotated files with gzip.
# I would prefer to use zst when it is available,
# but this requires conditional compression and postrotate
# script, what makes config more complex.
compress
}
exim 0000644 00000000625 15237770452 0005450 0 ustar 00 /var/log/exim_mainlog {
create 0640 mailnull mail
compress
postrotate
/usr/bin/killall -HUP exim
endscript
}
/var/log/exim_paniclog {
missingok
create 0640 mailnull mail
compress
postrotate
/usr/bin/killall -HUP exim
endscript
}
/var/log/exim_rejectlog {
create 0640 mailnull mail
compress
postrotate
/usr/bin/killall -HUP exim
endscript
}
nscd_logs 0000644 00000000264 15237770452 0006460 0 ustar 00 /var/log/nscd.log {
rotate 15
size=300M
missingok
compress
postrotate
/usr/local/cpanel/scripts/restartsrv_nscd >/dev/null 2>&1 || true
endscript
}
ea-php83-php-fpm 0000644 00000000401 15237770452 0007370 0 ustar 00 /opt/cpanel/ea-php83/root/var/log/php-fpm/*log {
missingok
notifempty
sharedscripts
delaycompress
postrotate
/bin/kill -SIGUSR1 `cat /opt/cpanel/ea-php83/root/var/run/php-fpm/php-fpm.pid 2>/dev/null` 2>/dev/null || true
endscript
}
comet_backup 0000644 00000000214 15237770453 0007135 0 ustar 00 /var/log/comet_backup.log {
daily
rotate 14
compress
delaycompress
missingok
notifempty
create 0640 root root
}
comet_backup_jobs_helper 0000644 00000000373 15237770453 0011517 0 ustar 00 /var/log/comet_backup_jobs_helper.log {
daily
rotate 14
compress
delaycompress
missingok
notifempty
copytruncate # make sure backup jobs can continue to write to the same file through a rotation
create 0640 root root
}
sw-engine 0000644 00000000162 15237770453 0006377 0 ustar 00 /var/log/sw-cp-server/sw-engine.log {
copytruncate
missingok
notifempty
compress
delaycompress
notifempty
}
rsyslog 0000644 00000000370 15237770453 0006206 0 ustar 00 /var/log/syslog
/var/log/mail.log
/var/log/kern.log
/var/log/auth.log
/var/log/user.log
/var/log/cron.log
{
rotate 4
weekly
missingok
notifempty
compress
delaycompress
sharedscripts
postrotate
/usr/lib/rsyslog/rsyslog-rotate
endscript
}
modsecurity_logs 0000644 00000000425 15237770453 0010100 0 ustar 00 /usr/local/apache/logs/modsec_audit.log {
rotate 15
size=300M
missingok
compress
postrotate
/usr/local/cpanel/scripts/restartsrv_httpd &> /dev/null || true
/usr/local/cpanel/scripts/restartsrv_tailwatchd &> /dev/null || true
endscript
}