What exactly does logrotate do when it "rotates" a log file? For example, does it rename the existing file and create a new one with the old name?
This article describes restarting a service after the logs are rotated, so that it can use the new log file. Is this just because the process might keep an open handle to the old file? If my process opens a new file handle every time it writes to the log, will it use the new log file without restarting?