How to Write an SLO Document in English

Вивчіть англійську структуру і фрази для написання документа з метою рівня обслуговування, що охоплює SLI, ціль, бюджет помилок і наслідки порушення.

Документ SLO, в якому просто написано «99,9% часу роботи», нікому не говорить, як це вимірюється, що відбувається, коли його не дотримуються, або хто відповідає за це — цей посібник описує структуру, яка робить документ SLO робочим посиланням, а не числом, якому ніхто не довіряє.

Ключовий словник

** SLI (service level indicator) ** — специфічний, вимірюваний показник, на якому побудовано SLO, наприклад, відсоток запитів, виконаних у межах порогу затримки, визначений достатньо точно, щоб дві людини могли обчислити одне і те ж число з одних і тих же даних.

  • “Перед тим, як ми записаємо ціль, нам слід узгодити саму SLI — чи це відсоток успішних відповідей HTTP, чи успішних відповідей у межах 500 мс? Це різні метрики і дадуть різні числа з того ж трафіку.”*

** Ціль ** — конкретний числовий поріг, який SLI має досягти за визначений проміжок часу, наприклад, 99. 9% за 30 днів, вибраний на основі того, що користувачі насправді потребують, а не того, що вони вважають бажаним.

  • “Ми встановлюємо ціль на 99,9%, а не 99,99%, тому що наші власні дані показують, що користувачі не помічають різниці на практиці, і більш жорстка ціль коштуватиме значно більше в навантаженні на виклик без реальної користі для користувача.” *

** Бюджет помилок ** — кількість допустимих помилок, що передбачається цільовою, наприклад, приблизно 43 хвилини простою на місяць при 99, 9%, розрахована як бюджет, який команда може витратити на ризик, а не просто порушення, якого слід уникати. “У нас ще залишився бюджет на помилки цього місяця, тому випуск цієї більш ризикованої зміни є розумним рішенням — якщо ми вже пережили це, я б хотів затриматися до наступного місяця, коли бюджет буде скасовано.”

** Наслідок порушення ** — конкретна, узгоджена дія, яка відбувається, коли бюджет помилок вичерпано, наприклад, припинення запуску можливостей на користь роботи з надійністю, записана у документ, щоб її не було обговорено після факту. “Документ потребує наслідків порушення розділу — зараз, якщо ми провалимо бюджет помилок, не буде узгодженої відповіді, що означає, що це буде просто обговорюватися в цей момент, а не бути відомим процесом.”

Звичайні фрази

  • Що таке справжнє SLI тут, і чи це те, що ми можемо виміряти послідовно?»
  • Чи це мета, заснована на даних впливу користувача, або це амбіційне число?»
  • «Скільки помилок бюджету ми залишили в цей період?»
  • Які наслідки, якщо ми порушимо бюджет помилки?»
  • Чи цей SLO покриває поведінку користувача, яка насправді має значення, або внутрішній проксі для нього?»

Приклади висловлювань

Визначення SLI точно:

  • “SLI: відсоток запитів API, які повертаються протягом 400 мс, вимірюється на балансувальнику навантаження, за винятком запитів на внутрішні кінцеві точки перевірки стану. Ми вимірюємо на балансувальнику навантаження, особливо тому, що це найближче до того, що кінцевий користувач насправді відчуває.” *

Використання бюджету помилок як інструменту для прийняття рішень:

  • “З 60% бюджету на помилки цього місяця, я можу затвердити перенесення цього тижня. Якщо б ми були вниз до однозначних, я б хотів, щоб відсунути це до наступного місяця, а не ризикувати виснаження бюджету на рутинну зміну. ”*

Запис наслідків порушення:

  • “Наслідки порушення: якщо бюджет помилок буде вичерпано до закінчення періоду, запуски можливостей для цієї служби будуть призупинені, і наступний спринт команди буде приоритизувати роботу над надійністю, поки SLO не повернеться до цілі.” *

Професійні поради

  • Визначте SLI з достатньою точністю, щоб два інженери могли обчислити одне і те ж число незалежно — неоднозначний SLI робить ціль по суті безглуздою.
  • Встановіть ** ціль ** на основі фактичних даних про терпимість користувача, якщо це можливо, а не на основі округленого числа, яке звучить вражаюче — занадто агресивне встановлення цілі створює постійний, непотрібний тиск на виклик.
  • Формуйте ** бюджет помилок ** як витратний ресурс для команди, а не просто метрику відповідності - це переформатовує розмови про надійність від “чи ми зазнали невдачі” до “скільки ризику ми все ще можемо дозволити собі в цей період”
  • Написати наслідки порушення у сам документ, погодившись на це заздалегідь — вирішення відповіді на порушення в середині порушення має тенденцію до гіршого, більш політичного результату, ніж спокійне вирішення заздалегідь.

Практичні вправи

  1. Написати визначення SLI, яке буде достатньо точним, щоб колега міг обчислити його з необроблених даних.
  2. Пояснити, як бюджет помилок змінює спосіб, в який команда приймає рішення про ризик.
  3. Напишете наслідки порушення умови для гіпотетичної служби.

Наприклад, англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська мова: англійська

Будьмо чесними - навіть з найкращими намірами, ефективно поширювати технічні поняття англійською мовою може бути викликом. Це не просто використовувати правильні слова; це про те, як ви говорите їх і структуруєте своє повідомлення для максимального розуміння. Погано сформулований документ SLO може призвести до неправильного тлумачення, марних зусиль, переслідуючи фантомні проблеми, або навіть нерозуміння пріоритетів. Важливою частиною оволодіння цим є розпізнавання спільних пасток фразування і навчання, як чітко сформулювати очікування.

Одна з найчастіших проблем виникає під час перегляду коду при обговоренні SLI. Замість того, щоб сказати щось на зразок: «Ця метрика не досягає своєї мети», що може відчуватися обвинувачуючим, розгляньте її як: «Я помітив, що затримка SLI була нижче нашої мети за останні два розгортання. Чи можемо ми дослідити потенційні фактори, що сприяють цьому — можливо, збільшення навантаження або недавня зміна коду? » Зауважте використання « тренду нижче » і запрошення до співпраці щодо * чому * за ефективністю метрики. Аналогічно, в обговореннях Slack про пріоритетність виправлень, уникайте нечітких тверджень на кшталт «Ми повинні розв’язати це». Ефективнішим підходом є: «Враховуючи вплив на [вражених користувачів / службу] і його кореляцію з часом відповіді SLI, я рекомендую нам негайно дослідити цю проблему і присвятити ресурси для її вирішення». Додання контексту – впливу і відносин SLI – значно посилює запит.

Іншою поширеною областю для плутанини є переклад намірів у вимірювані терміни. Хороший PR- опис зміни може починатися з: « Це оновлення покращує ефективність обробки даних, з метою скорочення середнього часу відповіді на 10%, як це вимірюється затримкою SLI. » Важливо, що це не просто говорить * що * було зроблено; це чітко пов’ язує зміну з конкретною метрикою і встановлює вимірювану ціль. Пам’ятайте, SLO не про звинувачення осіб або систем - вони про керування постійним поліпшенням на основі спостережуваних даних. Зверніть увагу на такі фрази, як «націлені на» або «націлені» - вони вказують на амбіційну мету, а не на жорстку вимогу.

Нарешті, при обговоренні бюджету помилок і його потенційного порушення, уникайте надмірно технічного жаргону, який може відчужувати зацікавлених осіб. Замість того, щоб сказати: «Частота помилок перевищила виділений поріг», більш перетравлена ​​фраза буде: «Ми спостерігали тимчасове збільшення помилок, що наближає нас до нашого обмеження бюджету помилок. Це вимагає негайного розслідування, щоб зрозуміти кореневу причину і впровадити коригуючі дії * до того, як * це вплине на доступність послуг. “Наголос на “негайному розслідуванні” і оформленні порушення як сигналу для дій підсилює важливість проактивного моніторингу і усунення.

Поширені запитання

Про що ця стаття "How to Write an SLO Document in English"?

Вивчіть англійську структуру і фрази для написання документа з метою рівня обслуговування, що охоплює SLI, ціль, бюджет помилок і наслідки порушення.

Чи безкоштовна ця стаття?

Так. Усі статті на CoderSlingo, включно з цією, доступні безкоштовно без реєстрації.

Скільки часу займає читання "How to Write an SLO Document in English"?

Приблизно 8 min.