arthur-1 Mackerel Advent Calendar 2023 マラソン9日目の記事です。
Organizationメトリックが欲しい
MackerelのOrganizationページを見たことがありますか?以下のように登録されているホストやアラートの数などといったOrganizationのstatsが表示されています。
僕はこの画面を見た時に惜しいなあと感じました。Mackerelは短いレイテンシで滑らかに動くグラフの体験の良さが売りの一つのサービスだと思っています。それなのに、これらの情報を時系列データとして閲覧することはできないのです。
もっと突っ込むと、Mackerelの利用料金、および料金計算に関わるホスト数が時系列データとして記録されグラフになっていて欲しいです。Observabilityには金がかかる、というエントリが話題になった通り、掛かるコストについてはやはり気になるものです。
それなりに高い料金を払って使うものなので、その分の利益が得られているかを検証するのはビジネス上では当たり前。コストの可観測性は、サービスの選択にも関わる非常に重要な話題だと私は考えています。
さて、これらOrganizationそのもののstatsが記録された時系列データを「Organizationメトリック」と呼ぶことにします。
Mackerelのメトリックはホストかサービスに紐づいている
Mackerelのメトリックは大きく分けて2種類あります。ホストメトリックとサービスメトリックです。Organizationメトリックを機能として実現するのに障害になるのはこの仕様です。新しく概念を生み出す必要があり、結果として実現するのに多くの工数がかかります。
Organizationメトリックの土台はもうあった
Organizationメトリックのアイデアは夢止まりか〜と思っていたのですが、実は気付かぬ間にこのアイデアを実現するための土台ができていました。それはMackerelのラベル対応メトリック(OpenTelemetry対応)機能です。
ラベル対応メトリック機能では、メトリックをメトリック名やラベル(OpenTelemetryでいうattribute)で区別して記録します。すなわち、メンタルモデルとしては何らかのホストやサービスに属していても、Mackerelの機能としてホストやサービスに紐づいてはいません。もし仮にそれが可能になったとしても、ホストやサービスに属さないメトリックが投稿不可能になる理由にはなりません。
「土台はできた」という表現をした通り、前述のような機能としてのOrganizationメトリックを実現するには認可といった他の壁があるのですが、いつかやろうと思えばできそうなので嬉しい気持ちになりました。
ラベル対応メトリックは現在オープンベータテスト中です。以下のフォームからお申し込みできますので、ぜひ使ってみてください。
また、Organizationメトリックができたらあなたならどんな情報を見たいですか?Mackerel Meetup #15でぜひ意見をお寄せください!