📊 Как "человеческий мониторинг" убедил выделить $20K
⬅️ Кейс #1: 6е чувство спасло НГ ➡️
---
🎭 Ситуация
💥 Zoom-демо с руководством, 14:00.
Показываю OpenSearch дашборд с временного кластера.
Проект не предусматривал мониторинг. Всё "в долг".
"Кибана? Эластик? А что это?" - реальный вопрос команды.
🚨 И тут сообщение в чат:
"ПААААША! Всё лежит! Пользователи не могут зайти!"
Мониторинга нет → мониторят люди.
Вася Прометей заорал - значит прод упал.
---
🔥 Момент истины
Два варианта:
• "Проблемы, перенесём демо на завтра"
• Превратить сбой в воркшоп по troubleshooting
👉 Выбрал второе. Разбираю прямо на демо.
---
🔍 Анализ в реальном времени
📊 Что показывает OpenSearch:
💻 Диагностика в реальном времени перед аудиторией:
---
💡 Через 3 минуты:
Retail-сервис случайно ддосит наш API.
50,000 запросов в минуту на батч-эндпоинт.
Показываю прямо на экране:
"Вот пик на графике. А вот лог с retail-service."
"Проблема вот тут. Прямо сейчас."
---
🧯 Горячий фикс, не вставая с демо:
📉 Через 2 минуты:
• CPU падает с 98% до 15%
• API оживает
• Пользователи входят
---
🏆 Реакция руководства:
💡 Инсайт:
Мы узнаём о проблемах последними.
И не понимаем, кто их вызывает.
Retail-команда даже не знала, что ддосит нас.
---
📊 Что было → Что стало
❌ До инцидента:
• Уведомления: "ПААААША, всё лежит!"
• Обнаружение: 15-30 минут (ручное)
• Диагностика: "А что вообще сломалось?"
• Стоимость: ~$2K на каждый сбой
• DevOps: 🔔 24/7, сон с телефоном
✅ После:
• Уведомления: Grafana alerts в чат
• Обнаружение: <30 сек
• Диагностика: лог + график + виновник
• Эффект: $20K бюджет на постоянный мониторинг
• DevOps: нормальные выходные
---
🧠 Уроки для DevOps
🎓 Ключевые выводы:
• "Вася Прометей заорал" - признак технического долга
• Live debugging = демонстрация экспертизы
• Реальные проблемы убеждают лучше слайдов
💡 Главный урок:
Каждый сбой - это шанс продать ценность.
Не оправдывайся - объясняй. Не скрывай - показывай.
---
💬 А у вас как ловят падения?
🧠 Grafana / alertmanager / APM?
Или через "Петю в чате"?
👇 Напишите, как у вас - это важно для всех.
Следующая история: Как отсутствие инструкций превратилось в корпоративный квест
📞 Разбор production кейсов: @devitway_pavel
#DevITWay #DevITWay_кейсы #DevITWay_senior #ProductionStories #OpenSearch #troubleshooting #мониторинг
⬅️ Кейс #1: 6е чувство спасло НГ ➡️
---
🎭 Ситуация
💥 Zoom-демо с руководством, 14:00.
Показываю OpenSearch дашборд с временного кластера.
Проект не предусматривал мониторинг. Всё "в долг".
"Кибана? Эластик? А что это?" - реальный вопрос команды.
🚨 И тут сообщение в чат:
"ПААААША! Всё лежит! Пользователи не могут зайти!"
Мониторинга нет → мониторят люди.
Вася Прометей заорал - значит прод упал.
---
🔥 Момент истины
Два варианта:
• "Проблемы, перенесём демо на завтра"
• Превратить сбой в воркшоп по troubleshooting
👉 Выбрал второе. Разбираю прямо на демо.
---
🔍 Анализ в реальном времени
📊 Что показывает OpenSearch:
2024-07-15 14:03:42 INFO [product-api]
Requests/min: 50,247 (норма ~500)
Source: retail-service.internal
Status: 200 OK
CPU: 98%
💻 Диагностика в реальном времени перед аудиторией:
# Смотрим нагрузку
top -p $(pgrep product-api)
# CPU: 98.7% USER
# Ищем виновника
tail -f /var/log/product-api/access.log | grep retail
14:03:43 retail-service GET /products/bulk-check?ids=1,2,3,...50000
---
💡 Через 3 минуты:
Retail-сервис случайно ддосит наш API.
50,000 запросов в минуту на батч-эндпоинт.
Показываю прямо на экране:
"Вот пик на графике. А вот лог с retail-service."
"Проблема вот тут. Прямо сейчас."
---
🧯 Горячий фикс, не вставая с демо:
# Объявляем зону rate limit
limit_req_zone $binary_remote_addr zone=bulk_api:10m rate=1r/s;
# Ограничиваем поток
location /products/bulk-check {
limit_req zone=bulk_api burst=10 nodelay;
proxy_pass http://product-service;
}
📉 Через 2 минуты:
• CPU падает с 98% до 15%
• API оживает
• Пользователи входят
---
🏆 Реакция руководства:
"Ты прямо сейчас видишь, КТО нас кладёт?"
"А раньше мы как это узнавали?"
"Да как обычно - экстренные созвоны, туда звали всех подряд - от девелоперов до уборщицы, пока клиенты не переставали звонить."
💡 Инсайт:
Мы узнаём о проблемах последними.
И не понимаем, кто их вызывает.
Retail-команда даже не знала, что ддосит нас.
---
📊 Что было → Что стало
❌ До инцидента:
• Уведомления: "ПААААША, всё лежит!"
• Обнаружение: 15-30 минут (ручное)
• Диагностика: "А что вообще сломалось?"
• Стоимость: ~$2K на каждый сбой
• DevOps: 🔔 24/7, сон с телефоном
✅ После:
• Уведомления: Grafana alerts в чат
• Обнаружение: <30 сек
• Диагностика: лог + график + виновник
• Эффект: $20K бюджет на постоянный мониторинг
• DevOps: нормальные выходные
---
🧠 Уроки для DevOps
🎓 Ключевые выводы:
• "Вася Прометей заорал" - признак технического долга
• Live debugging = демонстрация экспертизы
• Реальные проблемы убеждают лучше слайдов
💡 Главный урок:
Каждый сбой - это шанс продать ценность.
Не оправдывайся - объясняй. Не скрывай - показывай.
---
💬 А у вас как ловят падения?
🧠 Grafana / alertmanager / APM?
Или через "Петю в чате"?
👇 Напишите, как у вас - это важно для всех.
Следующая история: Как отсутствие инструкций превратилось в корпоративный квест
📞 Разбор production кейсов: @devitway_pavel
#DevITWay #DevITWay_кейсы #DevITWay_senior #ProductionStories #OpenSearch #troubleshooting #мониторинг
Telegram
DevITWay | Павел Волков
🔥 Как мы спасли прод в Новый год
Кейс #2: Как "человеческий мониторинг" убедил выделить $20K ➡️
---
💀 31 декабря, 23:45
Через 15 минут авторизация могла рухнуть
🎄 Контекст: Декабрь, все на автопилоте
Корпоративы, подарки, "давай в январе"
Первая зима…
Кейс #2: Как "человеческий мониторинг" убедил выделить $20K ➡️
---
💀 31 декабря, 23:45
Через 15 минут авторизация могла рухнуть
🎄 Контекст: Декабрь, все на автопилоте
Корпоративы, подарки, "давай в январе"
Первая зима…
1🔥10