• Projects
  • Service
  • About
  • branding.bz
  • Podcast
  • Tips
  • FAQ
  • Recruit
  • Download
  • Contact
  • branding.bz(ブランド構築SaaS)
  • DESIGN NOW(デザインメディア)
  • X
  • LinkedIn
  • Spotify
  • Facebook

213-0011 神奈川県川崎市高津区久本3-6-7-303

© 2026 ID INC. All rights reserved

claude-skills/スキル
SKILLKnowledge Workmonitoring

signoz-explaining-dashboards

プラグイン
SigNoz
ソース
GitHub で見る ↗
説明

SigNoz(サーバー監視ツール)のダッシュボードが表示している内容を、実務的でわかりやすい言葉で説明する機能です。ダッシュボード上のパネル、データ取得方法、設定値、そして各パネルで注視すべきポイントを解説します。 次のような場合に使用: - ユーザーが「このダッシュボードを説明してほしい」「私の[X]ダッシュボードは何を表示していますか」「パネルを順番に説明してほしい」「このダッシュボードで何に気をつければいい」「このダッシュボードを理解するのを手伝ってほしい」などと明確に尋ねた場合 - ダッシュボードの内容の解釈を求めている場合(「説明」という言葉を使わない場合でも含む) - 新しくサービスの利用を始めるユーザーが、既存の監視機能がどのような状態にあるのかを理解したい場合

原文を表示

Explain what an existing SigNoz dashboard shows in plain operational language: the panels, queries, variables, and what to watch for on each. Make sure to use this skill whenever the user asks "explain this dashboard", "what does my [X] dashboard show", "walk me through the panels", "what should I watch for on this dashboard", or "help me understand this dashboard", or otherwise asks for an interpretation of a dashboard's contents, even if they don't say "explain" explicitly. Also use it when someone is onboarding to a service and wants to understand what its existing observability looks like.

ユースケース
  • ダッシュボードの内容を説明してほしいとき
  • 各パネルが何を表示しているか理解したいとき
  • ダッシュボードで注視すべきポイントを知りたいとき
  • 監視機能の現在の状態を把握したいとき
本文(日本語訳)

ダッシュボード解説

前提条件

このスキルは SigNoz MCP サーバーのツール(signoz_get_dashboard、signoz_list_dashboards)を呼び出します。ワークフロー実行前に、これらのツールが利用可能であることを確認してください。利用不可の場合は、SigNoz MCP サーバーがインストール・設定されていません。まず signoz-mcp-setup を実行して MCP 接続を初期化または修復してください。ダッシュボードの内容をタイトルだけで推測しないでください。

使用場面

次のような場合に使用:

  • ユーザーが既存ダッシュボードの理解、説明、解釈を求めるとき
  • パネル(表示要素)の内容と重要性について詳しく知りたいとき
  • ダッシュボード上で何に注意すべきか、正常・異常な状態がどう見えるのかを知りたいとき
  • ダッシュボードの変数、フィルター、クエリを理解したいとき

使用しない場合:

  • ユーザーが既存ダッシュボードを修正したい → signoz-modifying-dashboards へ

操作手順

ステップ 1: 対象ダッシュボードの特定

提供された ID、またはダッシュボード情報に直接含まれる ID を使用します。ダッシュボード名のみの場合は、signoz_list_dashboards を呼び出して名前から ID に解決します。spec.display.name に基づいて照合してください。全ページを確認してください:必要に応じて filter 引数で絞り込み、空の結果が返った場合は絞り込みを外して再実行し、limit の値分だけ offset を増やしてページネーションを続け、total に達するまで確認してください。ダッシュボード名を signoz_get_dashboard に直接渡したり、最初のページで見つからなかったから存在しないと結論づけないでください。

複数のダッシュボードが該当する場合は、候補を提示し、どれを解説するか尋ねてください。

ステップ 2: 完全なダッシュボード設定の取得

ダッシュボード ID を指定して signoz_get_dashboard を呼び出します。これは必須です。ダッシュボードを正確に解説するには完全な JSON が必要です。タイトルだけで推測しないでください。

以下の情報を理解するために応答を確認します:

  • spec.display.name、.description、tags:ダッシュボードのアイデンティティと作成者が提供したコンテキスト
  • spec.variables:ダッシュボード全体で使えるフィルター(ユーザーが変更可能なドロップダウン)
  • spec.panels(パネル ID をキーとするマップ):各パネル、プラグインの種類、タイトル、クエリ
  • spec.layouts:パネルを 12 列グリッド内に配置する Grid エントリ(content.$ref 経由)
  • 各 Grid の spec.display.title:パネルが属するセクション

ステップ 3: 解説の作成

以下の順序で解説を構成します:

1. 概要:ダッシュボードの目的、何を監視しているか、どのデータソースから情報を取得しているか(メトリクス、トレース(処理の追跡記録)、ログ)の要点を 1 段落でまとめます。有用な文脈を提供する場合は tags に言及してください。

2. 変数とフィルター:各変数を説明します:

  • 名前(spec.name、クエリが参照する $handle)と何をフィルターするか。signoz/DynamicVariable の場合は、plugin.spec.signal 上の plugin.spec.name
  • 種類:signoz/DynamicVariable(テレメトリー(自動計測データ)から自動入力)、signoz/QueryVariable(クエリ駆動のドロップダウン)、signoz/CustomVariable(設定選択肢)、または TextVariable(自由入力)
  • 複数選択対応(allowMultiple)と「ALL」オプションの有無
  • パネルの filter.expression でその変数を参照しないパネルがあれば指摘します。そのようなパネルではその変数を変更しても影響しないため、混乱を招く可能性があります。

3. パネル単位の解説。Grid セクションでグループ化して説明します:spec.layouts を順番に確認し、各 Grid の spec.display.title をセクションヘッダーとして使用し、その spec.items(y 順、次に x 順)に従ってパネルを参照($ref)先に移動します。単一の無名 Grid の場合は、パネルを位置順に説明し、論理的なテーマでグループ化します。各パネルについて:

  • タイトルとパネル種別(プラグイン kind から平易な表現で):signoz/TimeSeriesPanel(時系列グラフ)、signoz/NumberPanel(単一値)、signoz/TablePanel(表)、signoz/BarChartPanel(棒グラフ)、signoz/PieChartPanel(円グラフ)、signoz/HistogramPanel(ヒストグラム)、signoz/ListPanel(生データ行)
  • 表示内容:パネルの 1 つのクエリを平易な言葉で解釈します。signoz/BuilderQuery の場合は、シグナル(測定対象)、集計方法、filter.expression、groupBy を説明します。signoz/CompositeQuery の場合は、各構成要素と数式でそれらを組み合わせる方法を説明します。ClickHouse SQL または PromQL の場合は、クエリの意図を平易な英語に訳します。
  • 注意点:正常な状態とは何か、どのパターンが問題を示しているかを説明します。具体的に:「持続的に 80% 以上の使用率は...を意味する」というように、単なる「値が高い場合に注意」ではなく。実際にクエリされているメトリクスに基づいてアドバイスを提供し、関連しない一般知識を避けてください。
  • 単位:ユーザーが値の読み取り方を理解できるよう、plugin.spec.formatting.unit に触れてください。

複雑なクエリを持つパネルについては:

  • 数式(composite 内):各構成要素(A、B、...)を個別に説明し、次に数式が何を計算するか、なぜそうするのかを説明します。
  • 関数(rate(変化率)、derivative(微分)、clampMin/Max(値の制限)、timeShift(時間シフト)):変換を平易な言葉で説明します。例:「rate は生のカウンターを 1 秒あたりの値に変換します」

4. ダッシュボード健全性の観察。解説後、発見した構造上の問題を指摘します:

  • クエリのないパネル、またはすべてのメンバーが無効な composite
  • spec.panels にあってもグリッドアイテムで参照されていないパネル(レンダリングされない)
  • 定義されているが、パネルフィルターで参照されていない変数
  • 閾値(しきい値)があると便利なのに設定されていないパネル(例:飽和警告線のない使用率パネル)
  • rate 関数なしで表示されるカウンター(生カウンターは常に上昇し、実際の稼働率を示しません)
  • スパイク(瞬間的な急上昇)を隠す可能性がある非常に大きい時間間隔
  • 読みにくいグラフを生成する可能性がある高カーディナリティ(多様性)の groupBy

5. カバレッジギャップ(監視の穴)。ダッシュボードが実際に監視している内容に基づいて、重要な監視領域で欠落しているものを指摘します。ダッシュボードが対象とするテクノロジーやドメインに直接関連するギャップのみ言及し、無関連な領域について推測しないでください。「X のパネルを追加して Y をカバーすることを検討してもよいでしょう」という提案として表現してください。

ステップ 4: 次のステップの提案

解説で浮き彫りになった内容に基づいて、最大 3 つのフォローアップ案を提示します。例えば、特定のパネルの基礎となるクエリ実行、カバレッジギャップの補填、ユーザーがまだアラート設定していない実用的な閾値のアラート設定などです。判断を活かし、無理に 3 つにしないでください。

ユーザーが明らかにダッシュボードへのオンボーディング(初期導入)だけで「これは何ですか?」と尋ねており、さらなる意図を示していない場合はフォローアップをスキップしてください。不適切なフォローアップを提示しないことが、フォローアップなしより優れています。

原則

  • 解説前に取得:常に signoz_get_dashboard を呼び出して完全な設定を取得してください。ダッシュボードのタイトルや一覧だけで解説しないでください。
  • 解釈し、ダンプしない:クエリを平易な稼働言語に訳してください。ユーザーが特に求めない限り、生のクエリ JSON を表示しないでください。
  • 実際の内容に根拠を置く:「注意点」のアドバイスをダッシュボード内に存在する実際のメトリクスとクエリに基づいて立案し、パネルに関連しない一般知識に頼らないでください。
  • セクション単位でグループ化:レイアウト座標ではなく、各 Grid の spec.display.title を使用してパネルをグループ化してください。これらのタイトルはダッシュボード作成者が意図したセクションヘッダーです。
  • デフォルトではライブデータクエリを実行しない:ユーザーが求める場合を除き、ライブクエリを実行しないでください。解説スキルはダッシュボード構造の理解であり、現在のデータ検査ではありません。
  • ダッシュボード一覧のページネーション:名前でダッシュボードを検索する場合は、ダッシュボードが存在しないと結論づける前に、常に signoz_list_dashboards のすべてのページをページネーションしてください。
  • すべてのクエリ種別:ビルダー、ClickHouse SQL、PromQL クエリを処理してください。各種はそれぞれ異なる解釈が必要です。ビルダークエリの場合は、集計、フィルター式、groupBy を読んでください。生 SQL/PromQL の場合は、クエリ文字列を解析してその意図を説明してください。
  • スコープ境界:このスキルはダッシュボードを解説します。解説後にユーザーが何かを変更したい場合は、signoz-modifying-dashboards へリダイレクトしてください。

例

ユーザー:「PostgreSQL ダッシュボードを解説してください」

エージェント:

  1. signoz_list_dashboards を呼び出し(全ページをページネーション):「PostgreSQL Overview」ダッシュボード(ID abc-123)を検出。
  2. ID abc-123 で signoz_get_dashboard を呼び出し:完全な設定を取得。
  3. 構成した解説を提供:
    • 概要:「このダッシュボードは接続数、クエリ性能、バッファキャッシュ効率、レプリケーション(複製)にわたって PostgreSQL データベースの健全性を監視します。OpenTelemetry PostgreSQL レシーバーからメトリクスを取得します」
    • 変数:「2 つの変数:host_name(動的、host.name でフィルター)と database(動的、postgresql.database.name でフィルター)。両方とも複数選択に対応」
    • セクション別パネル:各 Grid セクションを解説し、すべてのパネルのメトリク、集計、注意点を説明。
    • 健全性観察:「「Connection Count」パネルに閾値設定がありません。max_connections の 80% の位置に警告線を追加することを検討してください」
    • カバレッジギャップ:「vacuum/autovacuum の健全性またはロック競合(リソース争奪)のパネルがありません。書き込み集約的なワークロードを管理する場合は、これらの追加を検討してください」
  4. 提案:「パネルクエリを実行してデータをチェックするか、提案されたパネルを追加しますか?」

ユーザー:「このダッシュボードの各パネルは何を表示していますか?」(ダッシュボード文脈が @メンション または自動文脈で提供)

エージェント:

  1. 提供された
原文(English)を表示

Dashboard Explain

Prerequisites

This skill calls SigNoz MCP server tools (signoz_get_dashboard, signoz_list_dashboards). Before running the workflow, confirm the signoz_* tools are available. If they are not, the SigNoz MCP server is not installed or configured; run signoz-mcp-setup first to initialize or repair the MCP connection. Do not guess at a dashboard's contents from its title alone.

When to use

Use this skill when the user asks to:

  • Understand, explain, or interpret an existing dashboard
  • Get a walkthrough of what panels show and why they matter
  • Know what to watch for or what healthy/unhealthy looks like on a dashboard
  • Understand the variables, filters, or queries on a dashboard

Do NOT use when:

  • User wants to modify an existing dashboard → signoz-modifying-dashboards

Instructions

Step 1: Identify the target dashboard

Use a supplied id or a dashboard resource that includes its id directly. For any name-only request, call signoz_list_dashboards and resolve the name to an id, matching on spec.display.name. Cover the whole listing: narrow with the filter argument, re-run unfiltered when it comes back empty, and page by raising offset by limit until you have covered total. Never pass a dashboard name to signoz_get_dashboard or conclude it is missing from the first page.

If multiple dashboards match, present the candidates and ask which one to explain.

Step 2: Fetch the full dashboard configuration

Call signoz_get_dashboard with the dashboard id. This is mandatory; you need the complete JSON to explain the dashboard accurately. Never guess based on the title alone.

Examine the response to understand:

  • spec.display.name, .description, tags: the dashboard identity and author-provided context
  • spec.variables: dashboard-level filters (dropdowns the user can change)
  • spec.panels (a map keyed by panel id): the panels, their plugin kinds, titles, and queries
  • spec.layouts: Grid entries placing panels in the 12-column grid via content.$ref
  • each Grid's spec.display.title: the section a panel belongs to

Step 3: Build the explanation

Structure your explanation in this order:

1. Overview: one paragraph summarizing the dashboard's purpose, what it monitors, and what data sources it draws from (metrics, traces, logs). Mention the tags if they provide useful context.

2. Variables and filters: explain each variable:

  • Name (spec.name, the $handle queries reference) and what it filters; for a signoz/DynamicVariable that is plugin.spec.name on plugin.spec.signal
  • Kind: signoz/DynamicVariable (auto-populated from telemetry), signoz/QueryVariable (query-driven dropdown), signoz/CustomVariable (configured choices), or a TextVariable (free-form input)
  • Whether it supports multi-select (allowMultiple) and an "ALL" option
  • Note if any panels do NOT reference a variable in their filter.expression: changing that variable dropdown would not affect those panels, which can be confusing

3. Panel-by-panel walkthrough. Group panels by Grid section: walk spec.layouts in order, using each Grid's spec.display.title as the section header and following its spec.items (by y then x) to the panels they $ref. For a single untitled Grid, walk panels in position order and organize by logical theme. For each panel:

  • Title and panel type in plain words, from the plugin kind: signoz/TimeSeriesPanel, signoz/NumberPanel (single value), signoz/TablePanel, signoz/BarChartPanel, signoz/PieChartPanel, signoz/HistogramPanel, signoz/ListPanel (raw rows)
  • What it shows: interpret the panel's one query in plain language. For signoz/BuilderQuery, explain the signal, aggregation, filter.expression, and groupBy. For a signoz/CompositeQuery, explain each member and how the formula combines them. For ClickHouse SQL or PromQL, translate the query intent into plain English.
  • What to watch for: describe what healthy looks like and what patterns indicate trouble. Be specific: "sustained usage above 80% means..." not just "watch if it's high". Anchor advice to the actual metric being queried, not generic domain knowledge.
  • Unit: mention plugin.spec.formatting.unit so the user knows how to read the values

For panels with complex queries:

  • Formulas (inside a composite): explain each member (A, B, ...) separately, then explain what the formula computes and why
  • Functions (rate, derivative, clampMin/Max, timeShift): explain the transform in plain terms (e.g., "rate converts the raw counter into a per-second value")

4. Dashboard health observations. After the walkthrough, note any structural issues you spotted:

  • Panels with no query, or a composite whose members are all disabled
  • Panels in spec.panels that no grid item references (they never render)
  • Variables defined but not referenced in any panel filter
  • Panels missing thresholds where they would be useful (e.g., utilization panels without a saturation warning line)
  • Counters displayed without a rate function (raw counters produce ever-increasing ramps, not operational rates)
  • Very wide step intervals that could hide spikes
  • Panels with high-cardinality groupBy that may produce unreadable charts

5. Coverage gaps. Based on what the dashboard actually monitors, note significant observability areas that are absent. Only mention gaps that are directly related to the technology or domain the dashboard covers; do not speculate about unrelated areas. Frame as suggestions: "You may want to consider adding panels for X to cover Y."

Step 4: Offer next steps

Surface up to 3 follow-up intents based on what the explanation surfaced, such as running a specific panel's underlying query, filling a coverage gap, or wiring an alert for an actionable threshold the user has not yet alerted on. Use your judgment; do not pad to 3.

Skip follow-ups when the user was clearly just onboarding to the dashboard ("what is this?") and showed no further intent. Offering no follow-ups is better than offering wrong ones.

Guardrails

  • Fetch before explaining: Always call signoz_get_dashboard to get the full configuration. Never explain based on the dashboard title or listing alone.
  • Interpret, don't dump: Translate queries into plain operational language. Never show raw query JSON to the user unless they specifically ask.
  • Anchor to actual content: Base "what to watch for" advice on the actual metrics and queries in the dashboard, not on generic domain knowledge unrelated to the panels present.
  • Group by sections: Use each Grid's spec.display.title to group panels, not layout coordinates. Those titles are the section headers the dashboard author intended.
  • No data queries by default: Do not run live queries unless the user asks. The explain skill is about understanding the dashboard structure, not inspecting current data.
  • Paginate dashboard listing: When searching for a dashboard by name, always paginate through all pages of signoz_list_dashboards before concluding a dashboard does not exist.
  • All query types: Handle builder, ClickHouse SQL, and PromQL queries; each requires a different interpretation approach. For builder queries, read the aggregations, filter expression, and groupBy. For raw SQL/PromQL, parse the query string and explain the intent.
  • Scope boundary: This skill explains dashboards. If the user wants to change something after your explanation, redirect to signoz-modifying-dashboards.

Examples

User: "Explain my PostgreSQL dashboard"

Agent:

  1. Calls signoz_list_dashboards (paginates all pages): finds "PostgreSQL Overview" dashboard with id abc-123.
  2. Calls signoz_get_dashboard with id abc-123: gets full configuration.
  3. Provides structured explanation:
    • Overview: "This dashboard monitors PostgreSQL database health across connections, query performance, buffer cache efficiency, and replication. It uses metrics from the OpenTelemetry PostgreSQL receiver."
    • Variables: "Two variables: host_name (dynamic, filters by host.name) and database (dynamic, filters by postgresql.database.name). Both support multi-select."
    • Panels by section: Walks each Grid section, explaining every panel's metric, aggregation, and what to watch for.
    • Health observations: "The 'Connection Count' panel has no threshold configured; consider adding a line at 80% of your max_connections."
    • Coverage gaps: "No panels for vacuum/autovacuum health or lock contention. Consider adding these if you manage write-heavy workloads."
  4. Offers: "Want me to run any panel queries to check for data, or add the suggested panels?"

User: "What does each panel on this dashboard show?" (with dashboard context provided via @mention or auto-context)

Agent:

  1. Extracts the dashboard id from the provided context.
  2. Calls signoz_get_dashboard: gets full configuration.
  3. Provides a focused panel-by-panel walkthrough grouped by Grid section, explaining what each panel shows and what to watch for.
  4. Skips the health/gaps sections unless something notable stands out, since the user asked specifically about panels.

User: "Help me understand this LLM monitoring dashboard. I'm new to it"

Agent:

  1. Identifies the dashboard, fetches full config.
  2. Provides a beginner-friendly explanation with more context per panel:
    • Explains what the metrics mean (e.g., "Token usage measures how many tokens your LLM calls consume, which directly impacts cost")
    • Explains what the variables control and recommends starting with the "ALL" option to see the full picture before filtering
    • Highlights the most important panels to watch daily vs. those useful only during debugging
  3. Offers to set up alerts on critical panels.

原文・著作権は Anthropic および各プラグイン作者に帰属します。日本語訳は Claude API による自動翻訳です。