Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
PagerDutyの基礎的な概念 / Learning PagerDuty
Search
hideki kinjyo
PRO
September 17, 2019
Technology
0
1.2k
PagerDutyの基礎的な概念 / Learning PagerDuty
先々から導入していたPagerDutyについて、利用方法を見直すにあたって改めて基礎的なところを整理しました
hideki kinjyo
PRO
September 17, 2019
Tweet
Share
More Decks by hideki kinjyo
See All by hideki kinjyo
もう少しテストを書きたいんじゃ〜 #phpstudy
o0h
PRO
16
3.8k
『テスト書いた方が開発が早いじゃん』を解き明かす #phpcon_nagoya
o0h
PRO
8
2.4k
色んなオートローダーを覗き見る #phpcon_okinawa
o0h
PRO
5
560
ヒューマンエラーの本を読んだ ~報告会~
o0h
PRO
3
290
みんなでワイワイ「テスト駆動開発」の話をやる会 #techramen24conf
o0h
PRO
4
570
SPLから始める「データ構造」入門
o0h
PRO
7
1.9k
PHPUnit11の新しい仲間たち
o0h
PRO
3
420
単体テストを書かない技術 #phpcon_odawara
o0h
PRO
62
21k
パンフ記事 「初めてのリファクタリング!」 の裏側 #phperkaigi
o0h
PRO
2
180
Other Decks in Technology
See All in Technology
日経のデータベース事業とElasticsearch
hinatades
PRO
0
210
LINEギフトにおけるバックエンド開発
lycorptech_jp
PRO
0
240
OPENLOGI Company Profile
hr01
0
60k
AWSアカウントのセキュリティ自動化、どこまで進める? 最適な設計と実践ポイント
yuobayashi
7
520
内製化を加速させるlaC活用術
nrinetcom
PRO
2
140
Autonomous Database Serverless 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
17
45k
Pwned Labsのすゝめ
ken5scal
1
340
データベースの負荷を紐解く/untangle-the-database-load
emiki
2
480
AIエージェント元年@日本生成AIユーザ会
shukob
1
190
2/18 Making Security Scale: メルカリが考えるセキュリティ戦略 - Coincheck x LayerX x Mercari
jsonf
0
160
分解して理解する Aspire
nenonaninu
2
1k
PHPで印刷所に入稿できる名札データを作る / Generating Print-Ready Name Tag Data with PHP
tomzoh
0
180
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
570
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
10
1.3k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
BBQ
matthewcrist
87
9.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
How GitHub (no longer) Works
holman
314
140k
Mobile First: as difficult as doing things right
swwweet
223
9.4k
A better future with KSS
kneath
238
17k
Transcript
PagerDutyの歩き⽅ やさしいかんしミートアップ番外
こんにちは!
@o0h_です!
ࣗݾհ • ίωώτגࣜձࣾ • αʔόʔαΠυΤϯδχΞ • ओʹCakePHPͳͲ
今⽇のお話: PagerDuty、使っていくよ〜!
Έͳ͞ʙΜʂ PagerDutyɺ͍ͬͯ·͔͢ʙʙʂ
None
Ͱ͢ΑͶʙʙ(Θ͔Δ)
コネヒトにおける これまでのPagerDuty
以前のコネヒト
PagerDuty = お電話システム • (なんのためのツールかはさておき) とにかく「電話を鳴らしてくれる」やつ • 寝てても・・安⼼だね! • 死活監視(Pingdom)と同時に導⼊。
「緊急事態」に電話で叩き起こされないね!
͏ͪΐͬͱ͚ͩɺͪΌΜͱ͍ͬͯ͘Ͷɻ
PagerDutyとは?
4FSWJDF *OUFHSBUJPO &YUFOTJPO *ODJEFOU "MFSU &TDBMBUJPO 1PMJDZ /PUJpDBUJPO3VMFT 4FSWJDF 4FSWJDF
6SHFODZ 4FWFSJUZ
主たる概念 ServiceはIntegrationとExtension、AlertsとIncident を束ねる概念である。IntegrationからAlertされた内 容をもとにIncidentが作成される。Incidentは Extension経由で外部サービスへ送信されると同時 に、Escalation Policyに基づいてユーザーにアサイン される。アサインされたIncidentのUrgencyに応じ て、ユーザーごとのNotification Rulesに基づき対応
するチャネルを通じて通知が⾏われる
None
Escalation Policy • Incidentを「誰に」「どの順番で」通知 (assign)していくか、というルールの設定 • 例えば、「まずはオンコール担当者に」「そ の後5分経っても誰も反応がなければリーダー に」「更に10分経っても誰も反応しなかった らシフト外も含めて全員に」のような
Incident(status) • Incident = 問題 • Incidentはstatusを持ち、Triggered: 発⽣ -> Acknowledged:
対応中 -> Resolved: 解決済み と進展す る • Triggered, Ack’edをまとめて「Opened」と呼ぶ • Ack’ed 以上にならないと、次のユーザーにエスカレー ションされる
Alert • Alertは、接続されたサービス(Integration)か らの異常の通知 • 複数のAlertが、条件によってIncidentに集約 されるイメージ • AlertがIncidentをTriggerすることもあるし、 Resolveすることもできる
Alert, Incidentの重⼤性 • AlertはSeverity、IncidentはUrgencyという重⼤性に関 するフィールドをそれぞれ持つ • Severityは5段階、Urgencyは2段階(High/Low) • Policyに基づいてEscalationされるのはhigh-urgencyの Incidentのみ
• Severityに応じてUrgencyを適⽤する設定も可能(次 ページ)
None
Integration / Extension • 「Alertを受け付ける」ための外部接続が Integration ➡ CloudWatch, Pingom, Sentry
• 「Notificationを送る」ための外部接続が Extension ➡ Slack
Service • Serviceは0個以上のIntegrationやExtensionを 持つ(1:n) • ServiceはAlertやIncidentを集約する(1:n) • Serviceは1つのEscalation Policyと紐づく(n: 1)
Notification Rules • Notification Rulesはユーザー個々⼈が設定するもの ➡ Serviceの持つ設定じゃないよ! • Urgencyに対して通知ルールを設定する 1.
high-urgency がアサインされた時 2. high-urgency が status:xxxに変更された時 3. low-urgencyがアサインされた時
None
࠷ݶɺ͜ͷ֓೦ͱྲྀΕΛ ֮͑ΕΑ͍ͷͰɾɾ