AdministrationView serverInternal Grafana metrics

Internal Grafana metrics

Grafana collects some metrics about itself internally. Grafana supports pushing metrics to Graphite or exposing them to be scraped by Prometheus.

For more information about configuration options related to Grafana metrics, refer to metrics and metrics.graphite in Configuration.

Available metrics

When enabled, Grafana exposes a number of metrics, including:

  • Active Grafana instances
  • Number of dashboards, users, and playlists
  • HTTP status codes
  • Requests by routing group
  • Grafana active alerts
  • Grafana performance

Pull metrics from Grafana into Prometheus

These instructions assume you have already added Prometheus as a data source in Grafana.

  1. Enable Prometheus to scrape metrics from Grafana. In your configuration file (grafana.ini or custom.ini depending on your operating system) remove the semicolon to enable the following configuration options:

    # Metrics available at HTTP API Url /metrics
    [metrics]
    # Disable / Enable internal metrics
    enabled           = true
    
    # Disable total stats (stat_totals_*) metrics to be generated
    disable_total_stats = false
    
  2. (optional) If you want to require authorization to view the metrics endpoint, then uncomment and set the following options:

    basic_auth_username =
    basic_auth_password =
    
  3. Restart Grafana. Grafana now exposes metrics at http://localhost:3000/metrics.

  4. Add the job to your prometheus.yml file. Example:

    - job_name: 'grafana_metrics'
    
       scrape_interval: 15s
       scrape_timeout: 5s
    
       static_configs:
         - targets: ['localhost:3000']
    
  5. Restart Prometheus. Your new job should appear on the Targets tab.

  6. In Grafana, hover your mouse over the Configuration (gear) icon on the left sidebar and then click Data Sources.

  7. Select the Prometheus data source.

  8. On the Dashboards tab, Import the Grafana metrics dashboard. All scraped Grafana metrics are available in the dashboard.

View Grafana metrics in Graphite

These instructions assume you have already added Graphite as a data source in Grafana.

  1. Enable sending metrics to Graphite. In your configuration file (grafana.ini or custom.ini depending on your operating system) remove the semicolon to enable the following configuration options:

    # Metrics available at HTTP API Url /metrics
    [metrics]
    # Disable / Enable internal metrics
    enabled           = true
    
    # Disable total stats (stat_totals_*) metrics to be generated
    disable_total_stats = false
    
  2. Enable [metrics.graphite] options:

    # Send internal metrics to Graphite
    [metrics.graphite]
    # Enable by setting the address setting (ex localhost:2003)
    address = <hostname or ip>:<port#>
    prefix = prod.grafana.%(instance_name)s.
    
  3. Restart Grafana. Grafana now exposes metrics at http://localhost:3000/metrics and sends them to the Graphite location you specified.