Integrating Server Scout with Grafana

Why Integrate Server Scout with Grafana?

Server Scout provides excellent built-in dashboards that meet most monitoring needs without requiring additional tooling. However, if you're already using Grafana for other data sources, you might want to integrate Server Scout metrics into your existing dashboards to create:

  • Unified NOC-style overview screens combining infrastructure, application, and business metrics
  • Custom visualisations that blend Server Scout data with metrics from other sources
  • Single-pane-of-glass dashboards for teams managing diverse monitoring tools
  • Specialised reports or displays for specific stakeholder groups

Available Data Through the API

Server Scout's API provides comprehensive access to your monitoring data, including:

  • Current metrics: Real-time CPU, memory, disk, network, and system load data
  • Historical data: Time-series metrics across all collection tiers (Fast, Medium, Slow, Glacial, Daily)
  • Server status: Online/offline states and connectivity information
  • Alert states: Current alert conditions and acknowledgment status
  • System information: Server specifications, operating system details, and installed plugins

Setting Up the Integration

Step 1: Install a JSON Data Source Plugin

In your Grafana instance, install either:

  • JSON API data source plugin (recommended for simpler queries)
  • Infinity data source plugin (more advanced transformation options)

Navigate to Configuration > Plugins in Grafana and search for your chosen plugin.

Step 2: Configure the Data Source

  1. Go to Configuration > Data Sources and click Add data source
  2. Select your installed JSON plugin
  3. Configure the connection:

- URL: Your Server Scout API endpoint (available in your dashboard settings) - Authentication: Add your API key in the headers or authentication section - Headers: Set Content-Type: application/json

Step 3: Create API Queries

When building panels, structure your queries to match Server Scout's JSON response format:

{
  "servers": [
    {
      "id": "server-123",
      "hostname": "web01.example.com",
      "status": "online",
      "metrics": {
        "cpu_usage": 23.5,
        "memory_used": 78.2,
        "disk_usage": 45.1
      }
    }
  ]
}

Step 4: Map Data to Panels

Configure your Grafana panels to extract the relevant metrics from the JSON response:

  • Use JSONPath expressions to navigate the data structure
  • Set appropriate field mappings for time series data
  • Configure units and thresholds to match your Server Scout alert settings

Important Rate Limiting Considerations

To maintain system performance and avoid API throttling:

  • Never poll more frequently than every 5 seconds — this matches Server Scout's fastest data collection tier
  • Set Grafana refresh intervals to 10 seconds or longer for most panels
  • Cache data where possible using Grafana's query caching features
  • Consider longer refresh intervals (30 seconds to 5 minutes) for overview dashboards

Excessive API requests may result in temporary rate limiting, which could affect both your Grafana dashboards and Server Scout's normal operation.

Practical Examples

Server Overview Panel

Create a stat panel showing online/offline server counts by querying the server status endpoints and using Grafana transformations to aggregate the data.

Resource Utilisation Heatmap

Build a heatmap visualising CPU or memory usage across all servers, useful for capacity planning and identifying patterns.

Combined Infrastructure View

Merge Server Scout metrics with application performance data, database metrics, or business KPIs for comprehensive operational dashboards.

When to Use This Integration

Grafana integration makes most sense when you:

  • Already have established Grafana dashboards for other systems
  • Need to correlate Server Scout metrics with external data sources
  • Require custom visualisation types not available in Server Scout
  • Want to create role-specific dashboard views

For most use cases, Server Scout's built-in dashboard provides comprehensive monitoring capabilities with real-time updates, alert management, and multi-user access without requiring additional infrastructure or maintenance overhead.

The native Server Scout dashboard also includes features like progressive web app support, responsive design, and integrated alert acknowledgment that may not translate directly to Grafana implementations.

Frequently Asked Questions

How do I connect ServerScout to Grafana

Install a JSON API data source plugin in Grafana, then configure it with your ServerScout API endpoint and authentication key. Go to Configuration > Data Sources, add the JSON plugin, and set your API URL with proper headers including Content-Type: application/json.

What data can I get from ServerScout API for Grafana

ServerScout's API provides current metrics (CPU, memory, disk, network), historical time-series data across all collection tiers, server online/offline status, alert states, acknowledgment status, and system information including specifications and installed plugins.

What are the rate limits for ServerScout API in Grafana

Never poll more frequently than every 5 seconds to match ServerScout's fastest collection tier. Set Grafana refresh intervals to 10 seconds or longer, with 30 seconds to 5 minutes recommended for overview dashboards. Excessive requests may trigger rate limiting.

Should I use Grafana instead of ServerScout built-in dashboards

ServerScout's built-in dashboards meet most monitoring needs with real-time updates, alert management, and responsive design. Use Grafana integration only when you need to combine ServerScout data with other sources or already have established Grafana infrastructure for other systems.

Which Grafana plugin works best with ServerScout

The JSON API data source plugin is recommended for simpler queries with ServerScout. The Infinity data source plugin offers more advanced transformation options. Both can handle ServerScout's JSON response format effectively.

How do I create a server overview panel in Grafana with ServerScout

Create a stat panel that queries ServerScout's server status endpoints, then use Grafana transformations to aggregate the online/offline server counts. Use JSONPath expressions to navigate the JSON response structure and extract the status data.

Was this article helpful?