Обсуждение: pgbouncer logrotate configuration
The pgbouncer logrotate configuration seems a bit contradictory:
/var/log/pgbouncer.log {
missingok
notifempty
sharedscripts
copytruncate
create 0640 pgbouncer pgbouncer
nodateext
postrotate
/bin/kill -HUP `cat /var/run/pgbouncer/pgbouncer.pid
2>/dev/null` 2> /dev/null || true
endscript
}
"create" is ignored if "copytruncate" is used. And having a postrotate
script to send a HUP signal is also pointless if copytruncate is used.
We need to decide on one way to do it: either copytruncate, or rename
and SIGHUP.
It also seems to me that this might be a bit simpler if we created a
subdirectory /var/log/pgbouncer/ for all the log files. Then we
wouldn't have the permissions issues that the "create" directory is
attempting to solve.
Comments?
Hi,
On Tue, 2015-05-12 at 10:44 -0400, Peter Eisentraut wrote:
> The pgbouncer logrotate configuration seems a bit contradictory:
>
> /var/log/pgbouncer.log {
> missingok
> notifempty
> sharedscripts
> copytruncate
> create 0640 pgbouncer pgbouncer
> nodateext
> postrotate
> /bin/kill -HUP `cat /var/run/pgbouncer/pgbouncer.pid
> 2>/dev/null` 2> /dev/null || true
> endscript
> }
>
> "create" is ignored if "copytruncate" is used. And having a postrotate
> script to send a HUP signal is also pointless if copytruncate is used.
> We need to decide on one way to do it: either copytruncate, or rename
> and SIGHUP.
>
> It also seems to me that this might be a bit simpler if we created a
> subdirectory /var/log/pgbouncer/ for all the log files. Then we
> wouldn't have the permissions issues that the "create" directory is
> attempting to solve.
Just committed a fix for this. Can you please pull 9.4 tree and see
whether all problems you reported have been fixed or not? I can push the
packages tomorrow or so.
Regards,
--
Devrim GÜNDÜZ
Principal Systems Engineer @ EnterpriseDB: http://www.enterprisedb.com
PostgreSQL Danışmanı/Consultant, Red Hat Certified Engineer
Twitter: @DevrimGunduz , @DevrimGunduzTR
Вложения
On 5/12/15 5:24 PM, Devrim Gündüz wrote:
>
> Hi,
>
> On Tue, 2015-05-12 at 10:44 -0400, Peter Eisentraut wrote:
>> The pgbouncer logrotate configuration seems a bit contradictory:
>>
>> /var/log/pgbouncer.log {
>> missingok
>> notifempty
>> sharedscripts
>> copytruncate
>> create 0640 pgbouncer pgbouncer
>> nodateext
>> postrotate
>> /bin/kill -HUP `cat /var/run/pgbouncer/pgbouncer.pid
>> 2>/dev/null` 2> /dev/null || true
>> endscript
>> }
>>
>> "create" is ignored if "copytruncate" is used. And having a postrotate
>> script to send a HUP signal is also pointless if copytruncate is used.
>> We need to decide on one way to do it: either copytruncate, or rename
>> and SIGHUP.
>>
>> It also seems to me that this might be a bit simpler if we created a
>> subdirectory /var/log/pgbouncer/ for all the log files. Then we
>> wouldn't have the permissions issues that the "create" directory is
>> attempting to solve.
>
> Just committed a fix for this. Can you please pull 9.4 tree and see
> whether all problems you reported have been fixed or not? I can push the
> packages tomorrow or so.
I haven't tested it, but I think the currently committed logrotate file
won't work at all, because *both* the copytruncate the the postrotate
script were removed. You need to keep at least one.
Also, I think the /var/log/pgbouncer/ directory needs to be created
somewhere in the spec file.
On 5/13/15 4:55 PM, Peter Eisentraut wrote:
> On 5/12/15 5:24 PM, Devrim Gündüz wrote:
>>
>> Hi,
>>
>> On Tue, 2015-05-12 at 10:44 -0400, Peter Eisentraut wrote:
>>> The pgbouncer logrotate configuration seems a bit contradictory:
>>>
>>> /var/log/pgbouncer.log {
>>> missingok
>>> notifempty
>>> sharedscripts
>>> copytruncate
>>> create 0640 pgbouncer pgbouncer
>>> nodateext
>>> postrotate
>>> /bin/kill -HUP `cat /var/run/pgbouncer/pgbouncer.pid
>>> 2>/dev/null` 2> /dev/null || true
>>> endscript
>>> }
>>>
>>> "create" is ignored if "copytruncate" is used. And having a postrotate
>>> script to send a HUP signal is also pointless if copytruncate is used.
>>> We need to decide on one way to do it: either copytruncate, or rename
>>> and SIGHUP.
>>>
>>> It also seems to me that this might be a bit simpler if we created a
>>> subdirectory /var/log/pgbouncer/ for all the log files. Then we
>>> wouldn't have the permissions issues that the "create" directory is
>>> attempting to solve.
>>
>> Just committed a fix for this. Can you please pull 9.4 tree and see
>> whether all problems you reported have been fixed or not? I can push the
>> packages tomorrow or so.
>
> I haven't tested it, but I think the currently committed logrotate file
> won't work at all, because *both* the copytruncate the the postrotate
> script were removed. You need to keep at least one.
>
> Also, I think the /var/log/pgbouncer/ directory needs to be created
> somewhere in the spec file.
This is still not fixed.
Hi Peter, On Tue, 2015-09-22 at 14:51 -0400, Peter Eisentraut wrote: > This is still not fixed. Peter, can you please do me a favor and send a patch against this? http://git.postgresql.org/gitweb/?p=pgrpms.git;a=blob;f=rpm/redhat/9.5/ pgbouncer/F -22/pgbouncer.logrotate;h=7936a71f3e3c409f9b20d0b9164d98930907cb0a;hb=5 7904b139f4362524ec969dac9b52b8ee2ce35d1 Regards, -- Devrim GÜNDÜZ Principal Systems Engineer @ EnterpriseDB: http://www.enterprisedb.com PostgreSQL Danışmanı/Consultant, Red Hat Certified Engineer Twitter: @DevrimGunduz , @DevrimGunduzTR