Configuring Agent Metrics

Server Scout's monitoring agent is designed to be lightweight and efficient, which means not every available metric is enabled by default. This guide will show you how to customise which metrics your agent collects and how often it gathers them.

Understanding Default Behaviour

By default, Server Scout enables only the most essential metrics to minimise system overhead whilst providing meaningful insights. The agent focuses on core performance indicators like CPU usage, memory consumption, and disk space—metrics that matter for virtually every server.

However, different server roles have different monitoring requirements. A database server might need detailed I/O metrics, whilst a web server might benefit from TCP connection monitoring. Understanding how to configure these options ensures you get the data you need without unnecessary overhead.

Using the Interactive Configuration Menu

The simplest way to configure metrics is through the built-in interactive menu:

sudo scout --configure

This launches a user-friendly interface that displays all available metrics organised by collection frequency. You can toggle metrics on or off using simple keystrokes, and the interface shows you exactly what each metric monitors.

The interactive menu is particularly useful when you're first setting up monitoring or experimenting with different configurations, as it provides descriptions and lets you see the impact of your choices immediately.

Manual Configuration via scout.conf

For automated deployments or precise control, you can edit the configuration file directly:

sudo nano /etc/scout/scout.conf

The configuration uses simple key=value pairs. Each metric can be set to true or false:

cpu_iowait=true
cpu_steal=false
net_errors=true
services=true

This approach is ideal for configuration management systems like Ansible or when deploying identical configurations across multiple servers.

Available Metrics and Collection Schedules

Server Scout organises metrics into five collection tiers based on how frequently the data changes and its importance for immediate alerting:

Fast (5 seconds): Core performance metrics like CPU usage, memory, and basic disk statistics that can change rapidly and require immediate attention.

Medium (30 seconds): Network statistics (neterrors), system load averages (load5m, load15m), process counts (procsrunning, procsblocked), and resource-intensive metrics like topprocesses.

Slow (5 minutes): File system checks (multimount, fsreadonly), service monitoring (services), system health indicators (zombiecount, oomkills), and detailed I/O metrics (ioread, iowrite).

Glacial (1 hour): Hardware monitoring (cputemp), security metrics (entropy), detailed connection statistics (tcpconnections), and system internals (context_switches).

Daily (24 hours): Long-term maintenance indicators like packageupdates, rebootrequired, and uptime_seconds that change infrequently but are important for system administration.

Choosing Metrics for Different Server Roles

Web Servers typically benefit from enabling tcpconnections, neterrors, and context_switches to monitor traffic patterns and connection handling.

Database Servers should enable ioread, iowrite, cpuiowait, and procsblocked to track storage performance and query processing.

Virtualised Environments running on shared infrastructure should enable cpu_steal to monitor hypervisor resource contention.

Critical Production Systems might want services, rebootrequired, and packageupdates for comprehensive health monitoring.

Resource-Constrained Servers should be selective, focusing only on metrics directly relevant to their primary function to minimise monitoring overhead.

Performance Considerations

Each enabled metric consumes small amounts of CPU, memory, and network bandwidth. The cumulative effect can be significant on resource-constrained systems or when monitoring hundreds of servers.

Metrics like topprocesses and tcpconnections are more resource-intensive than basic counters. Enable them only when their data provides actionable insights for your specific environment.

Applying Configuration Changes

After modifying your configuration, restart the agent to apply changes:

sudo systemctl restart scout-agent

The new configuration takes effect immediately, and you'll see the updated metrics in your Server Scout dashboard within the next collection cycle.

Frequently Asked Questions

How do I configure ServerScout agent metrics?

You can configure ServerScout agent metrics in two ways: using the interactive menu with 'sudo scout --configure' or manually editing the /etc/scout/scout.conf file. The interactive menu is user-friendly and shows descriptions of each metric, while manual editing is better for automated deployments.

What metrics are enabled by default in ServerScout?

ServerScout enables only essential metrics by default to minimize system overhead while providing meaningful insights. The default metrics focus on core performance indicators like CPU usage, memory consumption, and disk space that are relevant for virtually every server.

Why aren't my ServerScout configuration changes working?

After modifying your ServerScout configuration, you must restart the agent for changes to take effect. Run 'sudo systemctl restart scout-agent' and the new configuration will be applied immediately. Updated metrics will appear in your dashboard within the next collection cycle.

How do ServerScout metric collection frequencies work?

ServerScout organizes metrics into five collection tiers: Fast (5 seconds) for core performance metrics, Medium (30 seconds) for network stats and load averages, Slow (5 minutes) for file system checks, Glacial (1 hour) for hardware monitoring, and Daily (24 hours) for maintenance indicators like package updates.

Which ServerScout metrics should I enable for database servers?

Database servers should enable io_read, io_write, cpu_iowait, and procs_blocked metrics to track storage performance and query processing. These metrics help monitor the I/O intensive operations and resource contention that are critical for database performance monitoring.

Do ServerScout metrics impact server performance?

Each enabled ServerScout metric consumes small amounts of CPU, memory, and network bandwidth. The cumulative effect can be significant on resource-constrained systems. Metrics like top_processes and tcp_connections are more resource-intensive, so enable them only when their data provides actionable insights.

How do I edit ServerScout configuration file manually?

Edit the ServerScout configuration file at /etc/scout/scout.conf using 'sudo nano /etc/scout/scout.conf'. The configuration uses simple key=value pairs where each metric can be set to 'true' or 'false', like cpu_iowait=true or net_errors=false. This approach is ideal for configuration management systems.

Was this article helpful?