MonoscopeをS3中心のテレメトリ基盤として評価する
Monoscope を使用すると、ログ、トレース、メトリクスを取り込んで探索できます。これらは S3 互換バケットに保存されます。 LLM を介して自然言語でクエリを実行します。
ひと目でわかる
- これは何?
- ログ、トレース、メトリクスをS3互換ストレージへ保存し、CLI、自然言語クエリ、MCPで調べるオブザーバビリティ基盤。
- 誰に向いている?
- セルフホスト版はAGPL-3.0で、S3バケット、計算、認証、メールの責任が利用者側に移ります。アクセスキー、バケットポリシー、保持期間、削除要求、テレメトリ中の個人情報を設計してから採用します。
- 商用利用できる?
- 厳しい条件付きでできます。AGPL-3.0 はネットワーク型コピーレフトのライセンスで、改変版をホスティングサービスなどとしてネットワーク越しに利用させる場合、その利用者にソースコードを同じライセンスで提供する必要があります。
- 今もメンテナンスされている?
- されています。最後のコミットは 2 日前です。
- 何の言語で書かれている?
- 主に Haskell です(GitHub の言語統計による)。
回答はプロジェクトの GitHub データ(最終同期:2026年9月14日)と当サイトの分析に基づくもので、法的助言ではありません。
オープンソース詳細解説
S3に置くログ・トレース・メトリクス
Monoscopeはログ、トレース、メトリクスを取り込み、S3互換バケットに保存しながら探索するオープンソースのプラットフォームです。READMEは自然言語によるクエリと、異常を検出して日次または週次のメールレポートを送るAIエージェントも説明しています。保存先をS3に寄せたい組織では、計算処理とデータ保管を分けて考えられる点が中心になります。
クラウド版は計算、認証、SSOをMonoscope側が管理し、SlackやPagerDutyなどの通知を使う構成です。セルフホスト版は計算と認証を自分で管理し、基本的なメール通知が中心です。READMEには本番規模のリソース指針やスケーリング数値がないため、導入規模をREADMEの説明だけで決めることはできません。
docker-composeでローカル確認
READMEの最短経路は`git clone https://github.com/monoscope-tech/monoscope.git`、`cd monoscope`、`docker-compose up`です。起動後は`http://localhost:8080`へ接続し、記載された初期認証情報で画面を開きます。これは評価用の入口であり、公開ネットワークへそのまま出すための設定ではありません。
テストデータは`monoscope auth login`の後、`monoscope send-event -m "Hello from Monoscope"`で単一イベントを送り、`monoscope telemetrygen --kind=trace --rate=5 --count=50`で一定量のtraceを生成できます。画面、検索結果、保存バケットのオブジェクトを対応づければ、取り込みから表示までの欠落を確認できます。
JSONエンベロープがCLIの境界になる
Monoscope CLIはログ検索、メトリクスクエリ、monitorとdashboardの管理、issueのtriageを扱います。READMEが示す特徴は、すべてのコマンドが安定したJSONエンベロープを出すことです。`MONOSCOPE_AGENT_MODE=1`または`--agent`でJSON出力を強制し、対話プロンプトを無効にできます。CIやCLAUDE_CODEからの自動検出も記載されています。
この設計は、検索結果を次の処理へ渡す自動化に向きます。ただしJSONのフィールドやエラー時の契約は、使うCLIのバージョンで確認すべきです。`monoscope auth login`後にイベントを送り、検索、issue作成、dashboard操作の各出力を保存して、機械処理できない警告が混じらないかを見ます。
OTLPとMCPで接続先を増やす
READMEはOpenTelemetryネイティブで750以上の統合を掲げ、Python、Node.js、Java、Kubernetesから`http://localhost:4317`またはKubernetes内の`http://monoscope:4317`へ送る例を掲載しています。実際のサービス名、認証、TLS、負荷条件は環境側で詰める必要があります。
MCPサーバーは`/api/v1/mcp`に公開され、Claude Desktop、Cursor、Clineなどからイベント検索、monitorとdashboard管理、issue triageを呼び出せます。`search_events_nl`や`analyze_issue`のような複合操作を使う場合、AIに見せてよいテレメトリの範囲と、メール送信などの副作用を分けて権限設計します。
AIレポートの評価点を先に決める
自然言語クエリの例には、過去1時間のpaymentサービスのエラーや、昨日の応答時間スパイクの原因を尋ねる文があります。エージェントは指定スケジュールで異常を検出し、重要イベントをメールにまとめるとREADMEは説明します。精度ベンチマーク、レイテンシ、出力例は提示されていません。
評価では、既知のtraceとエラーを`telemetrygen`やOTLPで投入し、自然言語検索が対象時間、service、error typeを外さないかを確認します。メール本文の根拠が検索結果へ戻れること、異常なしの期間に過剰な通知を出さないことも測定項目です。AIの要約だけをインシデントの確定根拠にはしません。
ストレージ責任とライセンス
セルフホスト版はAGPL-3.0で、S3バケット、計算、認証、メールの責任が利用者側に移ります。アクセスキー、バケットポリシー、保持期間、削除要求、テレメトリ中の個人情報を設計してから採用します。READMEが示す「S3に保存」は、暗号化や組織の保持要件を自動で満たすという意味ではありません。
向いているのは、OpenTelemetryのデータをS3互換基盤へ集約し、CLIやMCPで調査を連鎖させたいチームです。最初に`docker-compose up`で8080を開き、`send-event`と`telemetrygen`の件数を検索結果とバケットで照合してください。本番化は、READMEにないリソース、認証、通知の条件を自分の環境で埋められるかが判断軸です。
monoscope-tech/monoscopeを導入候補にする場合は、READMEの最小例をそのまま本番へ持ち込まず、専用の作業場所で入力と出力を保存します。対象バージョン、実行したコマンド、設定ファイル、標準出力、エラー、生成された差分を一組にします。これにより、動いたという印象ではなく、どの条件で再現したかをレビューできます。
確認の途中でREADMEにない機能や保証を見つけたとしても、本文の事実として追加しません。未確認の項目は未確認のまま分け、リリース、issue、LICENSE、公式ドキュメントのどこで確認できるかを記録します。monoscope-tech/monoscopeの更新で結果が変わったときは、入力を固定して差分を比べ、採用範囲を広げる前に変更理由を確認します。
実務での判定は、機能があるかだけでなく、失敗したときに状態を戻せるかで行います。初回実行前に作業ディレクトリを複製し、設定と生成物の保存先を確認します。正常系ではREADMEの例を再現し、異常系では接続切断、空の入力、権限不足、依存関係の不一致を一つずつ試します。
monoscope-tech/monoscopeが扱うデータやコードを共有するときは、公開範囲と保存期間を明示します。レビュー担当者が出力だけを見て判断できるよう、入力、版、ログ、差分を残します。数値や利用者の声を引用する場合も、READMEの自称値と自分で測った結果を分けて記載します。
編集部の結論
セルフホスト版はAGPL-3.0で、S3バケット、計算、認証、メールの責任が利用者側に移ります。アクセスキー、バケットポリシー、保持期間、削除要求、テレメトリ中の個人情報を設計してから採用します。READMEが示す「S3に保存」は、暗号化や組織の保持要件を自動で満たすという意味ではありません。
向いているのは、OpenTelemetryのデータをS3互換基盤へ集約し、CLIやMCPで調査を連鎖させたいチームです。最初に`docker-compose up`で8080を開き、`send-event`と`telemetrygen`の件数を検索結果とバケットで照合してください。本番化は、READMEにないリソース、認証、通知の条件を自分の環境で埋められるかが判断軸です。 READMEの説明を超える保証は置かず、上記の具体的な入力、設定、ログ、差分を確認できた範囲だけで採用を判断してください。
コミュニティノート