Log rotation and combining...
SH Development
listaccount at starionline.com
Fri Nov 17 23:42:52 EET 2017
So, the question is, why can I rotate the log manually, but cron returns a permission error? Do I need to tell cron to run it as sudo or something like that?
Ethon
> On Nov 17, 2017, at 2:29 AM, Tom Hendrikx <tom at whyscream.net <mailto:tom at whyscream.net>> wrote:
>
> Hi,
>
>
> Your crontab should normally mail you error output. But you can also run
> the logrotate command manually, in verbose mode.
>
>
> Kind regards,
> Tom
>
> On 17-11-17 03:35, SH Development wrote:
>> That doesn’t seem to work either. Where do I find logs for log rotation to see the reason it failed?
>>
>> Ethon
>>
>>
>>
>>> On Nov 16, 2017, at 7:53 PM, Bill Shirley <bill at KnoxvilleChristian.org <mailto:bill at KnoxvilleChristian.org> <mailto:bill at KnoxvilleChristian.org <mailto:bill at KnoxvilleChristian.org>>> wrote:
>>>
>>> I believe you need a 'create' statement to set the permissions. Here
>>> is an example for mariadb:
>>> /var/log/mariadb/general.log
>>> /var/log/mariadb/slow_query.log
>>> /var/log/mariadb/error.log
>>> /var/log/mariadb/mariadb.log {
>>> create 640 mysql mysql
>>> daily
>>> minsize 30M
>>> notifempty
>>> rotate 3
>>> missingok
>>> compress
>>> sharedscripts
>>> postrotate
>>> # # just if mysqld is really running
>>> if test -x /usr/bin/mysqladmin && \
>>> /usr/bin/mysqladmin ping &>/dev/null
>>> then
>>> /usr/bin/mysqladmin flush-logs
>>> fi
>>> endscript
>>> }
>>>
>>> Bill
>>>
>>>
>>> On 11/16/2017 4:27 AM, SH Development wrote:
>>>> I have recently noticed that my dovecot-deliver.log is huge and wanted to start rotating it. So a couple of questions:
>>>>
>>>> 1. Can the dovecot-deliver.log be combined with the maillog, that gets rotated weekly? If it can be done, is it advisable?
>>>> Since the inception of this particular server, the log file has been located in the /home/vmail directory. Is there a reason it shouldn’t be located in the /var/log directory with the maillog?
>>>>
>>>> 2. Separate from above, if I create a new logrotate script example as follows:
>>>>
>>>> # dovecot SIGUSR1: Re-opens the log files.
>>>> /home/vmail/dovecot-deliver.log {
>>>> missingok
>>>> notifempty
>>>> delaycompress
>>>> sharedscripts
>>>> postrotate
>>>> /bin/kill -USR1 `cat /var/run/dovecot/master.pid 2>/dev/null` 2> /dev/null || true
>>>> endscript
>>>> }
>>>>
>>>> I get the following error only when cron tries to run it:
>>>>
>>>> /etc/cron.daily/logrotate:
>>>> error: stat of /home/vmail/dovecot-deliver.log failed: Permission denied
>>>>
>>>>
>>>> Owner on the log are vmail:vmail. If I manually force logrotate on this particular log, it works fine.
>>>>
>>>>
>>>> Ethon
More information about the dovecot
mailing list