Thanks for your help Mark. We use AWS RDS for MySQL. I found there was an automated update applied by AWS around the time show in the logs for the error.
Feb 23 23:27:10 2022 (300) Uncaught runner exception: (pymysql.err.OperationalError) (1053, 'Server shutdown in progress')
The outage lasted for about 1 minute. We have Mulit-AZ failover configured for RDS and a new DB instance started within that minute.
What is interesting is that Hyperkitty archiving continued to work and Postorius was still responsive.
Only mail delivery was hung overnight. I had to restart the Gunicorn process followed by a Mailman core restart for mail to flow again.
Any insight into how we could monitor this in the future? For example which specific "runner" reported the error above?
Thanks again.
-- Dan