Alright, happened again... I'll do some more investigation when I have some free time, but here's a quick data point: I checked out /proc/PID of the dendrite process, and did an ls in the fd folder, and got this:
lr-x------ 1 root root 64 Apr 24 23:49 6 -> /var/log/nginx/access.log.1
(I'm running this on access.log, in case that's unclear, and logrotate moves the file to access.log.1 on rotation)
I'm thinking that because lograte is moving the file, the inode isn't changing and so it just looks like the file isn't being updated anymore, and dendrite waits for more data which never comes. The kernel knows better, and it shows that the file descriptor is pointing to the moved file...
Also worth noting:
ls -hal access.log.1
-rw-r----- 1 justin adm 3694944 Apr 24 23:46 access.log.1
cat offsets/access.log.ptr
3694944
So, perhaps dendrite thinks that it's seen all the data from that file so far, and is awaiting more?
One more theory: perhaps lograte is moving access.log to access.log.1, and dendrite tries to open access.log before it's been recreated?
Anyway, will read through some code and see if anything looks suspicious there.
-J