Actuator/Micrometer で返されたメトリック値の一部をオフにする方法はありますか? 現在それらを見ていると、約 1000 が表示されており、実際にレジストリに送信されるように、それらを 100 と言う少数の選択に絞り込みたいと考えています。
3 に答える
メーター フィルターは、Micrometer slack チャネルで説明されている 3 つの方法で役立ちます。
- 指標の無効化
- 次元の結合
- 高カーディナリティ キャッピング フィルター
Micrometer には、最初のタイプのメーター フィルターが組み込まれています。また、ログのしくみと同様に、階層的な有効化/無効化もサポートしています (メーターのようなものがmy.request.total
あり、.my.request.latency
で始まるすべてのメトリックを無効にできます) my.request
。
結合フィルターの独自の例を実装しました。これは、カーディナリティの高いメトリックがあり、それらを新しいディメンションで結合したい場合に役立ちます。たとえば、ステータス コードに関するディメンションがあるとします。これにより、200、201、203 のレスポンス コードをタグとして組み合わせることができます2xx
。これは、Netflix Spectator の「プレースホルダー」サポートに似ています。私はそのコードをアップストリームに貢献したいと思っていますが、現在はかなりカスタマイズされているため、一般的に使用できるようにするにはいくつかの作業が必要です.
カーディナリティの高いディメンションをキャッチする最後のタイプはまだ作成されていませんが、メトリクスに多数のタグ値が含まれる可能性がある場合に一意のタグの数をカウントし、最大値がヒットした場合は、追加のタグを無効にするか、共通のバケットに結合します。これにより、値が爆発して監視を圧倒する可能性がなくなります (または、メトリクスごとに支払う場合は、多額の費用がかかります)。