I had a case where a service managed by monit had to be restarted. Restart actually failed, because the stop command took longer than expected. When diagnosing, I found out that the commands used to stop are logged incompletely in the logfile, causing confusion. For example I have a
start program = "/path/to/script start extra param" # stop program likewise
Monit logs: "'serviceName': stop: /path/to/script". If you have defined multiple services that use the same script (/path/to/script), is is difficult to reproduce. First I suspected an error in monitrc.
Also monit logs "'serviceName' restart action done" when actually the service was not started due to stop timing out. Possibly monit detected the old process still being active.