I've noticed "Watchdog_expired" problems too. On the latest one I logged in to my masternode and ran in the sentinel directory:
venv/bin/python bin/sentinel.py
The status of that masternode changed from "Watchdog_expired" in my local wallet to "Enabled" so that seemed to fix it.
I'm wondering whether it's anything to do with the amount of time between Sentinel polls in the cron job. I've set mine to 5 minutes in accordance with the instructions at
https://dashpay.atlassian.net/wiki/display/DOC/Updating+to+12.1+-+Masternodes , ie....
*/5 * * * * cd /home/YOURUSERNAME/.dashcore/sentinel && ./venv/bin/python bin/sentinel.py 2>&1 >> sentinel-cron.log
but I see that the actual sentinel github page at
https://github.com/dashpay/sentinel indicates 2 minutes, ie....
*/2 * * * * cd /home/YOURUSERNAME/sentinel && ./venv/bin/python bin/sentinel.py >/dev/null 2>&1
Does anyone know whether 5 minutes or 2 minutes or some other time is best, and whether this may be anything to do with the "Watchdog_expired" issues?