Что делать если все сломалось?

К предыдущему посту было написано достаточно много полезных комментариев и один из них представляет собой очень достойный чек-лист от Андрея. Вся годнота внутри 👇

 читать первым в телеграм    читать первым в макс

Часть 1. Организационная.

1. Без паники и суеты.

Сообщи начальнику: “Упал прод. Разбираюсь в проблеме. Займет Х мин”

  • Начальник к которому скоро придут с вопросом: “Какого … не работает?!”
  • Саппорт у которого оборвется телефон
  • Менеджеры по работе с клиентами, которых тоже достанут вопросом: “Какого … ?! + До вашего суппорта не дозвониться”
  • “Наверху” обязательно назовут какую-то цифру из головы, поэтому лучше, когда эта информация идёт от тог, кто хоть что-то понимает в системе.
  • Если со временем ошибся - ничего страшного, потом сообщишь, что займет больше времени.
  • С опытом придет понимание сколько времени требуется на устранение проблем.

2. Сообщи коллегам в рабочий чат

  • Один откатывает изменения
  • Другой смотрит половина CICD не отработала и катит обратно

3. Переходи к решению проблемы


Часть 2. Техническая.

Открываем текстовый редактор

Записываем ключевую информацию по проблеме: время, куски логов, какими командами дебажили, ссылки на pipeline и т.д.

1. Пойми проблему. Воспроизведи проблему. Локализуй проблему.

С опытом это делаешь на автомате, но для джунов надо объяснить на примерах:

  • Если сайт упал - это не значит, что надо сразу надо бежать перезагружать nginx, даже если в предыдущие 100 раз это было так.

  • Надо сначала проверит открывается ли сайт от тебя? А с сервера?

  • Может проблема на компе сообщившего о проблеме?

  • Может недоступен один файл на сайте?

  • Может проблема в только в московском филиале, а в Новосибирске работает?

  • Может проблема в интернете, DNS или просто пользователь забыл включить VPN для доступа к корпоративной сети? И т.д.

2. Собери информацию.

Помни, что у тебя открыт твой любимый тестовый редактор. Внеси туда что и как проверяешь.

3. Сформируй гипотезу.

Если ничего не понятно:

  • Загляни в корпоративную wiki(или в git), потому что только там описано, как система работает.
  • Посмотри документацию разработчиков. Например: тикеты на GitHub, если это что-то open source.
  • Гугли.
  • Спрашивай у коллег в общем чате. Все заинтересованы быстрее починить, потому что от этого зависит доход компании и ваша премия.
  • Подумай про восстановление из бэкапа.
  • Если зашёл в тупик собери всех в видео чате, пошарь экран.

4. Проверь свою гипотезу.

Не забудь записать результаты.

5. Повторяй шаги 3 и 4 пока не решишь проблему.

6. Убедись, что проблема решена.

Свяжись с сообщивщем о проблеме. Убедись, что у него тоже проблема решена.


Часть 3. Разбор полетов.

Andrei La
Andrei La
Independent editor
Задать вопрос
Если упал прод, то тебе зададут эти вопросы(или часть из них). Лучше подготовить ответы заранее.
  • Не переходи на личности. Обсуждай только техническую часть проблемы.

  • Где произошла проблема?

  • Когда возникла проблема?

    • Сколько времени прошло на определение проблемы?
    • Сколько времени прошло на локализацию проблемы?
    • Когда проблему передали инженеру?
  • Отработал ли мониторинг?

  • Когда исправили?

  • Что произошло?

  • Как исправили?

  • Можно ли было восстановить из бэкапа?

    • Почему не восстановили из бэкапа?
  • Причина аварии?

  • Что было сделано неправильно?

  • Последствия отказа?

  • Количество жалоб абонентов?

  • Что надо сделать, чтобы авария не повторилась?

  • Что надо сделать для уменьшения последствий аналогичных отказов?

  • Составь план по устранению последствий и причин аварии

    • Укажи ответственных за каждый пункт

Комментарии