← Home

📊

⌘K
ðŸĪ–
Claude Code AI Tools
ðŸĪ—
Hugging Face AI Tools
ðŸĶœ
LangChain AI Tools
🧠
Keras AI Tools
ðŸĶ™
Ollama AI Tools
🐍
Python Programming Languages
ðŸŸĻ
JavaScript Programming Languages
🔷
TypeScript Programming Languages
⚛ïļ
React Programming Languages
ðŸđ
Go Programming Languages
ðŸĶ€
Rust Programming Languages
📊
MATLAB Programming Languages
🗄ïļ
SQL Programming Languages
⚙ïļ
C/C++ Programming Languages
☕
Java Programming Languages
ðŸŸĢ
C# Programming Languages
🍎
Swift Programming Languages
🟠
Kotlin Programming Languages
â–ē
Next.js Programming Languages
💚
Vue.js Programming Languages
ðŸ”Ĩ
Svelte Programming Languages
ðŸŽĻ
Tailwind CSS Programming Languages
💚
Node.js Programming Languages
🌐
HTML Programming Languages
ðŸŽĻ
CSS/SCSS Programming Languages
🐘
PHP Programming Languages
💎
Ruby Programming Languages
ðŸ”ī
Scala Programming Languages
📊
R Programming Languages
ðŸŽŊ
Dart Programming Languages
💧
Elixir Programming Languages
🌙
Lua Programming Languages
🐊
Perl Programming Languages
🅰ïļ
Angular Programming Languages
🚂
Express.js Programming Languages
ðŸą
NestJS Programming Languages
ðŸ›Īïļ
Ruby on Rails Programming Languages
◾ïļ
GraphQL Programming Languages
🟊
Haskell Programming Languages
💚
Nuxt.js Programming Languages
🔷
SolidJS Programming Languages
⚡
htmx Programming Languages
ðŸ’ŧ
VS Code Development Tools
🧠
PyCharm Development Tools
📓
Jupyter Development Tools
🧠
IntelliJ IDEA Development Tools
💚
Neovim Development Tools
ðŸ”Ū
Emacs Development Tools
🔀
Git DevOps & CLI
ðŸģ
Docker DevOps & CLI
â˜ļïļ
Kubernetes DevOps & CLI
☁ïļ
AWS CLI DevOps & CLI
🔄
GitHub Actions DevOps & CLI
🐧
Linux Commands DevOps & CLI
ðŸ’ŧ
Bash Scripting DevOps & CLI
🌐
Nginx DevOps & CLI
📝
Vim DevOps & CLI
ðŸ”Ļ
Makefile DevOps & CLI
🧊
Pytest DevOps & CLI
🊟
Windows DevOps & CLI
ðŸ“Ķ
Package Managers DevOps & CLI
🍎
macOS DevOps & CLI
🏗ïļ
Terraform DevOps & CLI
🔧
Ansible DevOps & CLI
⎈
Helm DevOps & CLI
ðŸ”Ļ
Jenkins DevOps & CLI
ðŸ”Ĩ
Prometheus DevOps & CLI
📊
Grafana DevOps & CLI
ðŸ’ŧ
Zsh DevOps & CLI
🐟
Fish Shell DevOps & CLI
💙
PowerShell DevOps & CLI
🔄
Argo CD DevOps & CLI
🔀
Traefik DevOps & CLI
☁ïļ
Azure CLI DevOps & CLI
☁ïļ
Google Cloud CLI DevOps & CLI
📟
tmux DevOps & CLI
🔧
jq DevOps & CLI
✂ïļ
sed DevOps & CLI
📊
awk DevOps & CLI
🌊
Apache Airflow DevOps & CLI
ðŸ”Ē
NumPy Databases & Data
🐞
Pandas Databases & Data
ðŸ”Ĩ
PyTorch Databases & Data
🧠
TensorFlow Databases & Data
📈
Matplotlib Databases & Data
🐘
PostgreSQL Databases & Data
🐎
MySQL Databases & Data
🍃
MongoDB Databases & Data
ðŸ”ī
Redis Databases & Data
🔍
Elasticsearch Databases & Data
ðŸĪ–
Scikit-learn Databases & Data
👁ïļ
OpenCV Databases & Data
⚡
Apache Spark Databases & Data
ðŸŠķ
SQLite Databases & Data
⚡
Supabase Databases & Data
ðŸ”ĩ
Neo4j Databases & Data
ðŸ“Ļ
Apache Kafka Databases & Data
🐰
RabbitMQ Databases & Data
ðŸ”Ī
Regex Utilities
📝
Markdown Utilities
📄
LaTeX Utilities
🔐
SSH & GPG Utilities
🌐
curl & HTTP Utilities
📜
reStructuredText Utilities
🚀
Postman Utilities
🎎
FFmpeg Utilities
🖞ïļ
ImageMagick Utilities
🔍
ripgrep Utilities
🔍
fzf Utilities
📗
Microsoft Excel Office Applications
📘
Microsoft Word Office Applications
📙
Microsoft PowerPoint Office Applications
📝
Hancom Hangul Hancom Office
ðŸ“―ïļ
Hancom Hanshow Hancom Office
📊
Hancom Hancell Hancom Office
📄
Google Docs Google Workspace
📊
Google Sheets Google Workspace
ðŸ“―ïļ
Google Slides Google Workspace
🔌
Cadence Virtuoso EDA & Hardware
⚙ïļ
Synopsys EDA EDA & Hardware
💎
Verilog & VHDL EDA & Hardware
⚡
LTSpice EDA & Hardware
🔧
KiCad EDA & Hardware
📝
Notion Productivity
💎
Obsidian Productivity
💎
Slack Productivity
ðŸŽŪ
Discord Productivity
ðŸŽĻ
Figma Design Tools
📘
Confluence Atlassian
📋
Jira Atlassian
🃏
Jest Testing
⚡
Vitest Testing
🎭
Playwright Testing
ðŸŒē
Cypress Testing
🌐
Selenium Testing
💙
Flutter Mobile Development
ðŸ“ą
React Native Mobile Development
🍎
SwiftUI Mobile Development
ðŸ“ą
Expo Mobile Development
🐍
Django Web Frameworks
⚡
FastAPI Web Frameworks
ðŸŒķïļ
Flask Web Frameworks
🍃
Spring Boot Web Frameworks
ðŸļ
Gin Web Frameworks
⚡
Vite Build Tools
ðŸ“Ķ
Webpack Build Tools
⚡
esbuild Build Tools
🐘
Gradle Build Tools
ðŸŠķ
Maven Build Tools
🔧
CMake Build Tools
ðŸŽŪ
Unity Game Development
ðŸĪ–
Godot Game Development
🔌
Arduino Embedded & IoT
🔍
Nmap Security
🐕
Datadog Monitoring
📖
Swagger/OpenAPI Documentation
No results found
EN KO

Basics

Installation

docker run -d -p 3000:3000 grafana/grafana Run with Docker
brew install grafana Install on macOS
sudo apt-get install grafana Install on Ubuntu
grafana-server Start server
grafana-cli plugins install grafana-piechart-panel Install plugin
grafana-cli plugins list-remote List available plugins

Keyboard Shortcuts

Esc Exit edit mode / Close modal
Ctrl+S Save dashboard
E Edit panel
V View panel fullscreen
P S Share panel
D S Dashboard settings
Ctrl+F Search dashboards
Ctrl+H Toggle all rows
T Z Zoom out time range
T Left Move time back
T Right Move time forward

Provisioning

Data Sources

datasources.yml
# /etc/grafana/provisioning/datasources/datasources.yml
apiVersion: 1

datasources:
  - name: Prometheus
    type: prometheus
    access: proxy
    url: http://prometheus:9090
    isDefault: true
    editable: false

  - name: Loki
    type: loki
    access: proxy
    url: http://loki:3100

  - name: InfluxDB
    type: influxdb
    access: proxy
    url: http://influxdb:8086
    database: mydb
    user: admin
    secureJsonData:
      password: secret

  - name: PostgreSQL
    type: postgres
    url: postgres:5432
    database: grafana
    user: grafana
    secureJsonData:
      password: secret
    jsonData:
      sslmode: disable

Dashboard Provisioning

dashboards.yml
# /etc/grafana/provisioning/dashboards/dashboards.yml
apiVersion: 1

providers:
  - name: "Default"
    orgId: 1
    folder: ""
    type: file
    disableDeletion: false
    updateIntervalSeconds: 10
    options:
      path: /var/lib/grafana/dashboards
      foldersFromFilesStructure: true
Dashboard JSON
{
  "dashboard": {
    "title": "My Dashboard",
    "tags": ["production"],
    "timezone": "browser",
    "refresh": "5s",
    "time": {
      "from": "now-6h",
      "to": "now"
    },
    "panels": [
      {
        "id": 1,
        "title": "CPU Usage",
        "type": "graph",
        "gridPos": { "x": 0, "y": 0, "w": 12, "h": 8 },
        "targets": [
          {
            "expr": "100 - (avg(rate(node_cpu_seconds_total{mode=\"idle\"}[5m])) * 100)",
            "legendFormat": "{{instance}}"
          }
        ]
      }
    ]
  }
}

Panel Types

Common Panels

  • Time series: Line/area charts for time-based data
  • Stat: Single value with optional sparkline
  • Gauge: Value with min/max thresholds
  • Bar chart: Categorical comparisons
  • Table: Tabular data display
  • Heatmap: Distribution over time
  • Logs: Log line display (Loki)
  • Alert list: Current alerts display

Variables

Variable Types

Query variable
# In Dashboard Settings > Variables

# Prometheus label values
Name: instance
Type: Query
Data source: Prometheus
Query: label_values(up, instance)

# Prometheus label values with filter
Query: label_values(up{job="$job"}, instance)

# Loki label values
Query: label_values({job="$job"}, level)
Custom variable
# Custom static values
Name: environment
Type: Custom
Values: dev, staging, prod

# Or comma-separated
Values: dev : Development, staging : Staging, prod : Production
Interval variable
# Auto interval based on time range
Name: interval
Type: Interval
Values: 1m, 5m, 10m, 30m, 1h, 6h, 12h, 1d
Auto option: enabled
Min interval: 1m
Using variables
# In queries
rate(http_requests_total{instance="$instance"}[$interval])

# Multiple selection
rate(http_requests_total{instance=~"$instance"}[$interval])

# In panel titles
CPU Usage - $instance

# Special variables
$__interval      # Auto interval
$__interval_ms   # Auto interval in ms
$__range         # Time range
$__range_s       # Time range in seconds
$__from          # From timestamp (ms)
$__to            # To timestamp (ms)

Transformations

Common Transformations

  • Reduce: Aggregate series to single value (last, mean, max, etc.)
  • Merge: Combine multiple queries into one table
  • Filter by name: Show only matching series
  • Organize fields: Reorder, rename, or hide columns
  • Group by: Group rows by field values
  • Join by field: Outer join on common field
  • Add field from calculation: Create calculated columns
  • Sort by: Order rows by field value

Alerting

Alert Rules

Creating alerts
# Alert rule structure
1. Query and condition
   - Query: rate(http_errors_total[5m]) / rate(http_requests_total[5m])
   - Condition: IS ABOVE 0.05

2. Evaluation behavior
   - Evaluate every: 1m
   - For: 5m (pending period)

3. Add details
   - Rule name: High Error Rate
   - Folder: Production
   - Group: HTTP Alerts
   - Summary: Error rate is {{ $values.A }}%
   - Description: Check the application logs

4. Notifications
   - Contact point: Slack, Email, PagerDuty, etc.
Alert annotations
# Available template variables in annotations
{{ $labels }}           # All labels
{{ $labels.instance }}  # Specific label
{{ $values }}           # All values
{{ $values.A }}         # Specific value (query refId)
{{ $value }}            # Alert value
{{ humanize $value }}   # Human readable value
{{ humanizePercentage $value }}  # As percentage
{{ humanizeDuration $value }}    # As duration

Contact Points

Notification templates
# Custom template example
{{ define "slack.message" }}
{{ range .Alerts }}
*Alert:* {{ .Labels.alertname }}
*Severity:* {{ .Labels.severity }}
*Instance:* {{ .Labels.instance }}
*Summary:* {{ .Annotations.summary }}
*Value:* {{ .Values.A }}
{{ end }}
{{ end }}

HTTP API

API Examples

curl -H "Authorization: Bearer TOKEN" http://localhost:3000/api/org Get current org
curl -H "Authorization: Bearer TOKEN" http://localhost:3000/api/dashboards/db/my-dashboard Get dashboard
curl -H "Authorization: Bearer TOKEN" http://localhost:3000/api/search?query=cpu Search dashboards
curl -X POST -H "Content-Type: application/json" -d @dashboard.json http://localhost:3000/api/dashboards/db Create dashboard
curl -H "Authorization: Bearer TOKEN" http://localhost:3000/api/datasources List data sources
curl -H "Authorization: Bearer TOKEN" http://localhost:3000/api/alerts List alerts

Configuration

grafana.ini

Common settings
[server]
http_port = 3000
domain = grafana.example.com
root_url = https://grafana.example.com/

[database]
type = postgres
host = localhost:5432
name = grafana
user = grafana
password = secret

[auth]
disable_login_form = false
disable_signout_menu = false

[auth.anonymous]
enabled = true
org_role = Viewer

[auth.github]
enabled = true
client_id = xxx
client_secret = xxx
allowed_organizations = my-org

[smtp]
enabled = true
host = smtp.gmail.com:587
user = alerts@example.com
password = secret
from_address = alerts@example.com

[log]
mode = console file
level = info