Без уточнения. Какой проект, какое приложение - не написали. У клиента их четыре и десять.
Нашёл нужный.
Диск - 100%. Реплика - read-only:on. Смотрю размеры таблиц:
exception_logs | 33 ГБ
failed_jobs | 15 ГБ
jobs | 22 ГБ
Нахрена писать логи в ту же базу что и данные?
Ладно. Смотрю что в этих логах:
cURL error 6: Could not resolve host: teams-webhook-url
В helm values кто-то добавил:
TEAMS_WEBHOOK_URL: "teams-webhook-url"
Буквально строку “teams-webhook-url”. Идея - пусть берёт значение из переменной Bitbucket Pipelines. Вот только в пайплайне забыли его установить через --set.
И понеслось:
exception → пишет лог в БД → пытается отправить в Teams → хост не резолвится → exception → пишет лог → пытается отправить → …
Пока не забило диск.
Попробовал почистить таблицы - не вышло. База managed в OVH: пользователей создаёшь через веб-интерфейс, суперпользователя назначить нельзя - OVH не даёт. А без суперпользователя писать в read-only базу невозможно.
Остался один вариант. Сбросил базу. Восстановил из бэкапа.
Итог: система оповещений об ошибках положила базу данных.
Бэкап был. Повезло.