Hi all;
I have a system where postgres seems to be randomly dying. When researching the issue I, of course, began looking at logs.
I found that much of the logs were missing due to logrotate configuration on the server. Logs were being rotated by size and then compressed. Because of this, the first rotation would take the log file out from underneath the database and it is not recreated.
My suspicion is that the database eventually crashes due to inability to log. The documentation says the logging_collector will halt other processes if it is unable to log. However, it seems that the system continues to run fine for several days before crashing and applications using the database continue to operate.
Does the logrotate configuration possibly explain the behavior? I can add the 'copytruncate' option to the logrotate configuration and see if the issue resolves, but I'd like to also understand the issue. Also, if I add the 'stderr' destination and continue to rotate the csv log file out, might I catch errors related to the missing csv log or would the logging_collector simply continue operating since it still has access to the stderr log?
Thanks!
LKimmel, RHCE, VCP7-CMA