Измерение Production инцидентов: цена качества · Avito О себе. План: • Погружение в контекст • Типовые ситуации

Post on 09-Aug-2020

10 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

Transcript

Дмитрий Химион Avito

1

Измерение Production инцидентов: цена качества

2

Дмитрий Химион

Head of Quality Assurance в Avito

О себе

План:

• Погружение в контекст

• Типовые ситуации из опыта работы с инцидентами

• Как процесс работает в Авито

• Измерение инцидентов

• Тонкие моменты

• Итоги

• Вопросы

3

• ≈ 40 кросс-функциональных команд

Погружение в проблематику

4

• ≈ 40 кросс-функциональных команд

• > 1 инцидента в рабочий день

Погружение в проблематику

5

1 инцидент на команду в месяц

• ≈ 270 Production инцидентов в год

Погружение в проблематику

6

• №1 Well known

7

Погружение в проблематику. Прозрачность

8

Что-то упало, подняли… Не понятно, что это было…

Такое больше не повторится…

• №1 Well known

• №2 Who knows?!

Погружение в проблематику. Прозрачность

9

• №1 Well known

• №2 Who knows?!

• №3 Полтергейст

RPS

Погружение в проблематику. Прозрачность

10

Погружение в проблематику. Видимость&Опасность

User

Critical отчет

Бизнес данные

11

Погружение в проблематику. Видимость&Опасность

old connection

new connection

old master

new master

Read only

Микро-сервис

12

Погружение в проблематику. Видимость&Опасность

Микро-сервис

DNS resolving

replica

master

13

Инцидентов не избежать – учись с ними работать!

14

Как процесс Live Site Review построен в Авито

ВнешнийProduction incident

15

Как процесс Live Site Review построен в Авито

ВнешнийProduction incident

ВнутреннийInternal incident

16

Как процесс Live Site Review построен в Авито

1

17

Как процесс Live Site Review построен в Авито

1 2

18

Для простых, маленьких и понятных инцидентов

Как процесс Live Site Review построен в Авито

19

Как процесс Live Site Review построен в Авито

команда

1. Влияние

2. Первопричина

3. Триггер

4. Как ликвидировали

5. Как обнаружили

6. Action Items

7. Платформа

8. Команда

20

Как процесс Live Site Review построен в Авито

Ключеваяинформация по

инциденту

Влияние!

Первопричина

Триггер

Как ликвидировали

Как обнаружили

Action Items

Платформа

Команда

21

Как процесс Live Site Review построен в Авито

1.Пользователи2.Деньги3.Данные

> 20 «sorry-points» – на встречу

Влияние

Первопричина

Триггер

Как ликвидировали

Как обнаружили

Action Items

Платформа

Команда

22

Как процесс Live Site Review построен в Авито

1. Не протестировали2. Нет анализа изменений3. Нет обратной совместимости4. Кривая конфигурация5. Игнорировали риск

Влияние

Первопричина

Триггер

Как ликвидировали

Как обнаружили

Action Items

Платформа

Команда

23

Как процесс Live Site Review построен в Авито

Катализатор

проявлениядефекта

Влияние

Первопричина

Триггер

Как ликвидировали

Как обнаружили

Action Items

Платформа

Команда

24

Как процесс Live Site Review построен в Авито

Time line:02-14 18:07 Выкатка релиза https://jr.ru/AV-5586302-14 18:26 Сработал триггер http://m.k.a.ru/triggerВ этот раз никто из команды не проверил, что триггер откатился обратно02-14 23:28 Появился тред https://slack от саппорта02-14 23:56 Мне позвонили, сообщили о проблеме02-15 00:04 Локализовали проблему, подняли кипиш02-15 01:24 Nikolay подготовил хотфикс http://stash02-15 02:14 Хотфикс раскатился02-15 02:16 Запросы пришли в норму

Влияние

Первопричина

Триггер

Как ликвидировали

Как обнаружили

Action Items

Платформа

Команда

25

Как процесс Live Site Review построен в Авито

1. Исправили на Canary релизе2. Заметили быстрее пользователей3. Узнали из мониторинга4. Сообщение от саппорта5. От руководителя

6. Из СМИ

Влияние

Первопричина

Триггер

Как ликвидировали

Как обнаружили

Action Items

Платформа

Команда

26

Как процесс Live Site Review построен в Авито

1. Настроить мониторинг2. Настроить alert3. Написать авто-тесты4. Добавить активность в грумминг5. Изменить инженерные практики6. Рефакторинг компонента

Влияние

Первопричина

Триггер

Как ликвидировали

Как обнаружили

Action Items

Платформа

Команда

27

Как процесс Live Site Review построен в Авито

1. Android2. iOS3. Web4. API5. Service layer6. Storage layer7. Hardware layer8. Kubernetes layer

Влияние

Первопричина

Триггер

Как ликвидировали

Как обнаружили

Action Items

Платформа

Команда

28

Как процесс Live Site Review построен в Авито

SellerX, BuyerX, Billing, Monetization, ….

29

Что измеряем?

1. Клиентский капитал

2. Финансовые потери

3. Потеря данных

30

Что измеряем?

1. Клиентский капитал

2. Финансовые потери

3. Потеря данных

1. Пользователи видели баг2. Продуктовые конверсии3. Регистрации4. Авторизации

31

1. Клиентский капитала

2. Финансовые потери

3. Потеря данных

Что измеряем?

1. Потенциально недополученная прибыль

2. Провалы в биллинге3. Монетизационные инструменты

32

1. Клиентский капитала

2. Финансовые потери

3. Потеря данных

Что измеряем?

1. Аналитические данные2. Пользовательские данные3. Технические данные

33

Измерение инцидентов. Клиентский капитал

= { X*30 ; X*300 }

{ 11,4K; 114,3K }

34

Измерение инцидентов. Финансовые

«sorry-points»

Biggest ≈ 130 sorry-points

35

Измерение инцидентов. Потеря данных

≈2 million user requests

36

Измерение инцидентов. Потеря данных

≈90 регистрацийпользователей

37

Измерение инцидентов. Потеря данных

Контакты между пользователями

38

Тонкие моменты

1. Распространение практики

Development culture

1. Распространение практики

2. Временной ресурс

39

Тонкие моменты

1. Распространение практики

2. Временной ресурс

3. «Люркинг» людей

40

Тонкие моменты

Для инженеров:

• Инцидент?! - «Устраняй ➜ Описывай ➜ Обсуждай»

• «Мы готовы к инциденту» vs «Пытаемся избежать всёго»

• Источник аргументов для приоритезации технических задач

Для руководителей:

• Понимание влияния сбоев на результат работы бизнеса

• «Рука на пульсе» состояния инженерии в XL разработке

• Принятие сложных решений своевременно

Итоги

41

Дмитрий Химион Head of Quality Assurance

Вопросы?

42

dmitry.khimion

Дмитрий Химион Head of Quality Assurance

Всем спасибо!

43

dmitry.khimion

top related