技術

Solanaの異常を通知する「Microscope」 プログラムと監視の故障を分ける

Solana向け監視ツールMicroscopeが公開紹介されました。プログラムの取引を読み取り、Grafanaで可視化し、Slackなどに通知。監視システム自身のデータ停止も確認できる設計です。

青い光のサーバーラックとSolanaを象徴する金属エンブレムによる監視システムのイメージ。
イメージ(AI生成)。実際の出来事や製品画面を撮影した写真ではありません。

この記事のポイント

  • Microscopeは、運用者が自分の環境に設置するSolana向け監視ツール。
  • 取引の失敗やイベントを読み取り、可視化や通知へつなぐ。
  • 監視対象の異常と、データ取得など監視システム側の停止を区別する。

監視するもの・知らせるもの

対象内容
プログラムの活動命令・イベント、取引の失敗などを読み取る
Squadsマルチシグ必要に応じて、一つのマルチシグの操作も監視
監視経路の状態データ取得など、監視する仕組み自身の異常を確認
出力先Grafanaで可視化し、Slackなどへ通知

生のログを人が追う手間を減らす

Solanaの公式サイトは10月5日、プログラムの監視と通知を行う「Microscope」を紹介しました。MITライセンスのオープンソースツールで、運用者が自分のサーバーなどに設置して使います。取引の失敗や特定のイベント、プログラムを管理するSquadsマルチシグの操作を読み取り、ダッシュボードと通知へ変換する仕組みです。

単純にログの文字列を検索するだけでなく、プログラムの構造を記述したIDLを使い、命令やイベントの内容を解読します。たとえば金額などの項目を条件にして、必要な操作だけを通知対象にする設計です。通知先としてSlack、Telegram、PagerDutyを用意し、可視化にはGrafanaを使うと説明されています。

何も起きないのか、監視が止まったのか

記事が強調しているのは、監視画面が空だからといって、プログラムに動きがないとは限らない点です。取引データを受け取る経路が止まったり、取得した情報が保存先へ届かなかったりしても、画面から活動が消える場合があります。Microscopeは、対象プログラムの動作と監視する経路自身の異常を区別して知らせます。

通知には種類を示す情報が付き、命令・イベント・マルチシグの活動なのか、データ取得などの監視側の問題なのかを見分けられるようにしています。チェーン上の命令が失敗したことと、監視ツールが故障したことも同じではありません。問題を調べる担当者が、まずどちらを確認すべきか絞るための機能です。

一つの設置で監視するのは一つのプログラム

公式説明では、一つのMicroscopeの設置で監視する対象は一つのプログラムと、必要に応じて一つのSquadsマルチシグです。Solanaの全アプリを一度に監視して、安全性を判定してくれるサービスではありません。対象のIDとIDL、取引データの取得元、通知したい条件を運用者が設定する必要があります。

設置方法としてDocker ComposeやAWS・GCPの仮想マシン、既存のGrafana Cloudとの接続などが案内されています。コードが公開されていても、サーバーやデータ取得先の運用は別に必要です。一般の保有者向け警告アプリというより、サービスを動かすチームが障害の見落としを減らし、原因を調べるための道具として読むと用途が分かりやすくなります。

出典・参考資料

内容は確認日時点の資料に基づきます。利用条件や今後の日程は、リンク先の最新の案内もご確認ください。