Line 34: | Line 34: | ||
== Logrotate file == | == Logrotate file == | ||
Example minimal logrotate file | |||
Example logrotate file | |||
<pre> | <pre> | ||
Line 44: | Line 42: | ||
compress # Compress older files with gzip | compress # Compress older files with gzip | ||
delaycompress # Don't compress yesterdays files | delaycompress # Don't compress yesterdays files | ||
} | } | ||
</pre> | </pre> | ||
Example logrotate file with user | Example minimal logrotate log file with user create mode | ||
<pre> | <pre> | ||
/var/log/example/*log { | /var/log/example/*log { | ||
Line 56: | Line 54: | ||
delaycompress # Don't compress yesterdays files | delaycompress # Don't compress yesterdays files | ||
create 640 owner group # Set create mode immediately after rotation | create 640 owner group # Set create mode immediately after rotation | ||
} | } | ||
</pre> | </pre> | ||
Example logrotate file with | Example minimal logrotate file with daemon restart | ||
<pre> | <pre> | ||
/var/log/example/*log { | /var/log/example/*log { | ||
Line 91: | Line 65: | ||
compress # Compress older files with gzip | compress # Compress older files with gzip | ||
delaycompress # Don't compress yesterdays files | delaycompress # Don't compress yesterdays files | ||
sharedscripts # Scripts are only run once for all files in directory | sharedscripts # Scripts are only run once for all files in directory | ||
postrotate | postrotate | ||
Line 97: | Line 70: | ||
endscript | endscript | ||
} | } | ||
</pre> | |||
Example minimal logrotate file with user create mode and daemon restart | |||
<pre> | |||
/var/log/example/*log { | /var/log/example/*log { | ||
missingok # If the log file is missing, go on to the next one without issuing an error message | missingok # If the log file is missing, go on to the next one without issuing an error message |
Revision as of 12:11, 23 February 2012
Fedora Log Files
This document describes the guidelines for log file(s), for use and inclusion in Fedora packages.
Log Files on the filesystem
Packages with log files must reside in their own directory under /var/log which must be named /var/log/$package_name
Each log file in that directory must end with .log filename.
Each package that ships log files must also ship a logrotation file that rotates the log file(s).
Log Files Packaging
...
Name: ..... Source1: %{name}.logrotate Requires: logrotate %install ... mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/%{name} mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d %{__install} -p -D -m 0700 %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/%{name}.conf %files ... %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}.conf %dir %attr(0700,root,root) %{_localstatedir}/log/%{name}
Logrotate file
Example minimal logrotate file
/var/log/example/*log { missingok # If the log file is missing, go on to the next one without issuing an error message notifempty # Don't do any rotation if the logfile is empty compress # Compress older files with gzip delaycompress # Don't compress yesterdays files }
Example minimal logrotate log file with user create mode
/var/log/example/*log { missingok # If the log file is missing, go on to the next one without issuing an error message notifempty # Don't do any rotation if the logfile is empty compress # Compress older files with gzip delaycompress # Don't compress yesterdays files create 640 owner group # Set create mode immediately after rotation }
Example minimal logrotate file with daemon restart
/var/log/example/*log { missingok # If the log file is missing, go on to the next one without issuing an error message notifempty # Don't do any rotation if the logfile is empty compress # Compress older files with gzip delaycompress # Don't compress yesterdays files sharedscripts # Scripts are only run once for all files in directory postrotate /usr/bin/systemctl restart example.service 2>/dev/null || true endscript }
Example minimal logrotate file with user create mode and daemon restart
/var/log/example/*log { missingok # If the log file is missing, go on to the next one without issuing an error message notifempty # Don't do any rotation if the logfile is empty compress # Compress older files with gzip delaycompress # Don't compress yesterdays files create 640 owner group # Set create mode immediately after rotation sharedscripts # Scripts are only run once for all files in directory postrotate /usr/bin/systemctl restart example.service 2>/dev/null || true endscript }