【レッドメソッド】

REDメソッド とは?

最終更新:
💡 リクエストの量・失敗・時間を見守る

リクエストを処理するサービスをRate・Errors・Durationの3観点で監視する手法。処理量、失敗、所要時間の分布を確認します。リソース監視やログなどと組み合わせ、利用者への影響を調べます。

📌 このページのポイント
RED:リクエストを3つの観点で見るRate:単位時間あたりの件数例:毎秒100件リクエストの量を見るErrors:失敗件数や割合例:1000件中10件 = 1%同じ観測期間で数えるDuration:所要時間の分布例:p99 = 300ms観測集団の99%が300ms以下観測条件をそろえ、USEやログも使う
数字は架空の観測例で共通の通知しきい値ではありません。3観点は工程ではなく、件数と割合、平均と時間分布を区別し、失敗の定義と期間を決めます。
ひよこ ひよこ
REDメソッドは何を測るの?
ペンギン先生 ペンギン先生
リクエストのRate、Errors、Durationだよ。毎秒どれだけ来るか、そのうちどれだけ失敗したか、処理にどれだけ時間がかかったかを見るんだ。
ひよこ ひよこ
エラー数とエラー率は同じ?
ペンギン先生 ペンギン先生
違うよ。同じ期間の1000件中10件が失敗なら1%。件数、単位時間あたりの件数、割合を区別する。何を失敗と数えるかも、サービスに合わせて決めるんだ。
ひよこ ひよこ
Durationは平均を出せば十分?
ペンギン先生 ペンギン先生
一部の遅い処理が平均に隠れることがある。時間の分布やp99なども確認しよう。p99はその観測集団の99%がその値以下という意味で、全部の処理がその時間内とは限らないよ。
ひよこ ひよこ
USEとはどう違う?
ペンギン先生 ペンギン先生
REDはリクエストを処理するサービス、USEはCPUやディスクなどの利用率・飽和・エラーを見る。片方だけで原因を断定せず、ログや依存先、利用者への影響も調べるんだ。
ひよこ ひよこ
通知は1%や500msで統一する?
ペンギン先生 ペンギン先生
それは共通の基準ではないよ。目標、リクエスト数、期間や重要な操作で意味が違う。3つの観点でダッシュボードをそろえることと、全サービスのしきい値を同じにすることは別なんだ。
もっと詳しく知りたい人へ

リクエストの失敗が少なければ、サービスは正常?

例えば正常応答でも内容が誤っている場合があります。また、処理が遅い、容量の限界が近い、といった状態もあります。成功の定義と利用者への影響を確認し、REDだけで全てを判断しません。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「REDメソッド」って出てきたら「サービスのリクエスト量・失敗・所要時間を見る監視手法」と思えばだいたいOK!
📖 おまけ:英語の意味
「Rate / Errors / Duration Method」 = リクエスト量・失敗・所要時間の監視
💬 3観点の頭文字。Grafanaが紹介したTom Wilkieの手法で、公式の講演紹介では2015年に考案したと説明されています。

参考資料

← 用語集にもどる