В моем приложении Rails у меня есть скрипт, который обновляет некоторые записи в базе данных. Когда я отправляю SIGTERM, чтобы убить сценарий, он время от времени получает этот сигнал, пока ActiveRecord выполняет запрос. Это приводит к возникновению исключения ActiveRecord::StatementInvalid.
Я хотел бы поймать исключения StatementInvalid, которые возникают, когда они являются результатом SIGTERM и выходят из сценария. Как я могу сказать, что StatementInvalid возникает из-за сигнала, а не по какой-то другой причине?