What does Monit do when it says 'initializing'?
If you look in /etc/monit/monitrc
, you'll see one of the options is "set daemon
" which controls how often Monit checks services. Mine is set at 120. So that is the quickest Monit will update what it reports. The script might return in 2 seconds, but if yours is set like mine Monit won't check it again for another 118 seconds thereafter.