データをキャプチャして平均修復時間(MTTR)メトリックの測定を開始する最良の方法を理解しようとしています。「ロールバック」がMTTRにプラスまたはマイナスの影響を与える方法に頭を抱える必要があります。
シナリオ1
堅実な監視が行われていると仮定すると、インシデントを比較的迅速に検出する(MTTIが低い)コードがデプロイされます。識別の時点で、2つの主要な可能なパスがあります(そうです、私は議論の目的で過度に単純化しています)。
デプロイメントをロールバックし、安定性をすばやく戻しますが、本番環境では意図した機能はありません。
インシデントを解決し、意図された機能をライブに保つ追加の変更をロールフォワードします。
このscenaroでは、サイトの安定性がすぐに回復する可能性があるため、MTTRはかなり低くなっています。とはいえ、意図した変更の結果は有効ではないため、コード/機能/変更はまだ進行中です。目標が低いMTTRである場合、回復メカニズムとしてロールバックを奨励するように見えます。
シナリオ2
このシナリオでは、MTTRは、予想されるコード/機能/変更が本番環境で適切に機能するのにかかる時間によって厳密に測定されます。ロールバックしても、「修正済み」のコード変更が製品化されるまで、MTTRタイマーはまだ実行中です。この場合、MTTRは単なる「ちょっと、物事は安定している」のではなく、ビジネス結果の安定性に結びついているようです。
さて、答えはMTTRが真空での指標として使用されていないのと同じくらい簡単かもしれませんが、むしろ変更失敗率と組み合わせて-頻繁なロールバックによって引き起こされる超低MTTRは、非常に高い変更失敗率を指す可能性があります。とは言っても、MTTRの測定値をビジネスの成果から切り離すという考えでは、私には正しくないように思われることがあります。
私はこれをかなり考えすぎているかもしれませんが、他の人がどのようにMTTRを測定しているか、および「回復」の最終時点は何であるかについて知りたいです。それを単に安定性として使用していますか、それとも他の要因が「回復」の意味を決定するのに使用されていますか?