スキル一覧に戻る
oimiragieo

grafana-dashboards

by oimiragieo

1🍴 0📅 2026年1月21日
GitHubで見るManusで実行

SKILL.md


name: grafana-dashboards description: Grafana dashboard management, visualization, and alerting version: 1.0.0 allowed-tools: [Bash, Read, WebFetch]

Grafana Dashboards Skill

Overview

Provides 90%+ context savings vs raw Grafana API calls. Comprehensive dashboard, datasource, and alerting operations with progressive disclosure by feature category.

Requirements

  • Grafana instance accessible via URL
  • API key with appropriate permissions
  • Environment variables configured

Environment Variables

  • GRAFANA_URL (required): Base URL of Grafana instance (e.g., https://grafana.example.com)
  • GRAFANA_API_KEY (required): API key for authentication
  • GRAFANA_ORG_ID (optional): Organization ID (defaults to 1)

Tools (Progressive Disclosure)

Dashboard Operations

ToolDescriptionConfirmation
list-dashboardsList all dashboardsNo
get-dashboardGet dashboard JSON by UIDNo
search-dashboardsSearch dashboards by tag/queryNo
create-dashboardCreate new dashboard from JSONYes
update-dashboardUpdate existing dashboardYes
delete-dashboardDelete dashboard by UIDYes (DANGEROUS)

Folder Management

ToolDescriptionConfirmation
list-foldersList dashboard foldersNo
get-folderGet folder details by UIDNo
create-folderCreate new folderYes

Data Sources

ToolDescriptionConfirmation
list-datasourcesList all data sourcesNo
get-datasourceGet datasource config by ID/nameNo
test-datasourceTest datasource connectionNo
create-datasourceAdd new datasourceYes
update-datasourceUpdate datasource configYes
delete-datasourceDelete datasourceYes (DANGEROUS)

Alerting

ToolDescriptionConfirmation
list-alertsList alert rulesNo
get-alertGet alert rule by UIDNo
alert-stateGet current alert stateNo
pause-alertPause alert ruleYes
resume-alertResume paused alertYes
test-alertTest alert ruleNo

Panels & Queries

ToolDescriptionConfirmation
query-datasourceExecute query against datasourceNo
render-panelRender panel as PNG imageNo
export-dashboardExport dashboard to JSON fileNo

Quick Reference

Dashboard Operations

# List all dashboards
curl -H "Authorization: Bearer $GRAFANA_API_KEY" \
  "$GRAFANA_URL/api/search?type=dash-db"

# Get dashboard by UID
curl -H "Authorization: Bearer $GRAFANA_API_KEY" \
  "$GRAFANA_URL/api/dashboards/uid/<dashboard-uid>"

# Search dashboards by tag
curl -H "Authorization: Bearer $GRAFANA_API_KEY" \
  "$GRAFANA_URL/api/search?tag=production"

# Delete dashboard (DANGEROUS)
curl -X DELETE \
  -H "Authorization: Bearer $GRAFANA_API_KEY" \
  "$GRAFANA_URL/api/dashboards/uid/<dashboard-uid>"

Data Source Operations

# List all datasources
curl -H "Authorization: Bearer $GRAFANA_API_KEY" \
  "$GRAFANA_URL/api/datasources"

# Test datasource connection
curl -X POST \
  -H "Authorization: Bearer $GRAFANA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"datasource": {"uid": "<datasource-uid>"}}' \
  "$GRAFANA_URL/api/datasources/proxy/<datasource-id>/test"

Alert Operations

# List alert rules
curl -H "Authorization: Bearer $GRAFANA_API_KEY" \
  "$GRAFANA_URL/api/v1/provisioning/alert-rules"

# Get alert state
curl -H "Authorization: Bearer $GRAFANA_API_KEY" \
  "$GRAFANA_URL/api/v1/provisioning/alert-rules/<alert-uid>"

# Pause alert
curl -X POST \
  -H "Authorization: Bearer $GRAFANA_API_KEY" \
  "$GRAFANA_URL/api/v1/provisioning/alert-rules/<alert-uid>/pause"

Panel Rendering

# Render panel as PNG
curl -H "Authorization: Bearer $GRAFANA_API_KEY" \
  "$GRAFANA_URL/render/d-solo/<dashboard-uid>/<panel-name>?panelId=<panel-id>&width=1000&height=500" \
  -o panel.png

Configuration

API Key Permissions

Ensure your API key has appropriate permissions:

  • Viewer: Read-only access to dashboards and datasources
  • Editor: Create and modify dashboards
  • Admin: Full access including datasource and alert management

Organization Context

If using multiple organizations, set GRAFANA_ORG_ID or include X-Grafana-Org-Id header:

curl -H "Authorization: Bearer $GRAFANA_API_KEY" \
  -H "X-Grafana-Org-Id: 2" \
  "$GRAFANA_URL/api/dashboards/home"

Security

⚠️ CRITICAL: Never expose API keys in logs or responses ⚠️ Dashboard deletion is DANGEROUS - requires extra confirmation ⚠️ Datasource credentials must be masked in all outputs ⚠️ Use viewer-level keys when read-only access is sufficient

Security Best Practices

  1. Store API keys in environment variables, never hardcode
  2. Use least-privilege API keys (viewer > editor > admin)
  3. Mask sensitive datasource connection strings
  4. Require confirmation for all destructive operations
  5. Audit all dashboard modifications
  6. Rotate API keys regularly

Agent Integration

  • devops (primary): Dashboard provisioning, monitoring setup
  • performance-engineer (primary): Performance metrics visualization
  • incident-responder (secondary): Real-time incident dashboards
  • analyst (secondary): Data analysis and reporting
  • qa (secondary): Test metrics visualization

Common Workflows

Dashboard Provisioning

  1. Export dashboard from Grafana UI or create JSON template
  2. Use create-dashboard to provision to target instance
  3. Verify with get-dashboard
  4. Configure alerts with create-alert

Performance Monitoring

  1. List existing datasources with list-datasources
  2. Test datasource connectivity with test-datasource
  3. Query metrics with query-datasource
  4. Create performance dashboards with create-dashboard
  5. Set up alerts with appropriate thresholds

Incident Response

  1. Search for relevant dashboards with search-dashboards
  2. Render critical panels with render-panel
  3. Check alert states with alert-state
  4. Query datasources for incident timeline

Troubleshooting

IssueSolution
401 UnauthorizedCheck GRAFANA_API_KEY is valid and not expired
403 ForbiddenVerify API key has required permissions
404 Dashboard not foundConfirm dashboard UID is correct
500 Internal Server ErrorCheck Grafana logs, verify datasource connectivity
Connection timeoutVerify GRAFANA_URL is accessible, check network/firewall
Invalid JSONValidate dashboard JSON schema before upload

API Version Compatibility

  • Supports Grafana v8.x, v9.x, v10.x, v11.x
  • Alert API uses v1 provisioning endpoints
  • Legacy alerting (pre-v8) not supported

Examples

Create Dashboard from Template

# Read dashboard template
DASHBOARD_JSON=$(cat dashboard-template.json)

# Create dashboard
curl -X POST \
  -H "Authorization: Bearer $GRAFANA_API_KEY" \
  -H "Content-Type: application/json" \
  -d "{\"dashboard\": $DASHBOARD_JSON, \"folderId\": 0, \"overwrite\": false}" \
  "$GRAFANA_URL/api/dashboards/db"

Search and Export Dashboards

# Search by tag
DASHBOARDS=$(curl -H "Authorization: Bearer $GRAFANA_API_KEY" \
  "$GRAFANA_URL/api/search?tag=kubernetes")

# Export each dashboard
for uid in $(echo $DASHBOARDS | jq -r '.[].uid'); do
  curl -H "Authorization: Bearer $GRAFANA_API_KEY" \
    "$GRAFANA_URL/api/dashboards/uid/$uid" > "dashboard-$uid.json"
done

Monitor Alert States

# Get all alerts
ALERTS=$(curl -H "Authorization: Bearer $GRAFANA_API_KEY" \
  "$GRAFANA_URL/api/v1/provisioning/alert-rules")

# Filter firing alerts
echo $ALERTS | jq '.[] | select(.state == "firing")'

スコア

総合スコア

50/100

リポジトリの品質指標に基づく評価

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

レビュー

💬

レビュー機能は近日公開予定です