Back to Blog
Guides
agent-based monitoring
agentless monitoring

What Is Agent-Based Monitoring? Pros, Cons, and Examples

Agent-based monitoring uses software installed on servers to collect metrics. Learn what it is, how it compares to agentless monitoring, and when to use each approach.

WT

Wakestack Team

Engineering Team

6 min read

Agent-based monitoring uses a small software program installed on your servers to collect and report internal metrics like CPU usage, memory consumption, disk space, and running processes. Unlike external monitoring that checks if services respond, agent-based monitoring sees inside the server to understand its health.

The "agent" is typically a lightweight program that runs continuously, collecting data and sending it to a central dashboard.

How Agent-Based Monitoring Works

┌─────────────────────────────────────┐
│           Your Server               │
│                                     │
│  ┌─────────────────────────────┐   │
│  │     Monitoring Agent        │   │
│  │  • Reads CPU stats          │   │
│  │  • Reads memory info        │   │
│  │  • Checks disk space        │   │
│  │  • Lists running processes  │   │
│  └─────────────┬───────────────┘   │
│                │                    │
└────────────────┼────────────────────┘
                 │ HTTPS (encrypted)
                 ▼
         ┌───────────────┐
         │  Monitoring   │
         │  Dashboard    │
         └───────────────┘

The agent:

  1. Runs continuously on the server
  2. Collects metrics at regular intervals (typically 30-60 seconds)
  3. Sends data securely to your monitoring platform
  4. Triggers alerts when thresholds are exceeded

What Agent-Based Monitoring Collects

Metric CategoryExamples
CPUUsage percentage, load average, per-core stats
MemoryUsed, available, cached, swap
DiskSpace used, I/O throughput, inode usage
NetworkBandwidth in/out, packet errors
ProcessesRunning processes, resource per process
CustomApplication-specific metrics

Agent-Based vs Agentless Monitoring

AspectAgent-BasedAgentless
InstallationRequires agent on serverNo installation
PerspectiveInside the serverOutside the server
MetricsCPU, memory, disk, processesResponse codes, latency
Answers"Why is it slow?""Is it responding?"
Works forServers you controlAny public endpoint
ExamplesWakestack agent, Datadog agentHTTP checks, ping

You typically need both.

Agentless monitoring tells you something is wrong. Agent-based monitoring tells you why.

Pros of Agent-Based Monitoring

1. Deep Visibility

See metrics impossible to get externally:

  • CPU saturation before it causes timeouts
  • Memory leaks before they crash applications
  • Disk filling up before writes fail
  • Specific processes consuming resources

2. Root Cause Analysis

When an external check fails, server metrics explain why:

  • API timing out → CPU at 98%
  • Database connection failed → Disk at 100%
  • Slow response → Memory swapping

3. Proactive Alerting

Catch problems before they cause outages:

  • Disk at 80% → Clean up before 100%
  • Memory trending up → Fix leak before OOM
  • CPU sustained high → Scale before saturation

4. Process-Level Detail

See exactly what's consuming resources:

Top Processes:
├── node (web app)    — CPU: 45%, Memory: 2.1GB
├── postgres          — CPU: 12%, Memory: 4.2GB
├── nginx             — CPU: 2%, Memory: 128MB
└── monitoring-agent  — CPU: 0.3%, Memory: 22MB

Cons of Agent-Based Monitoring

1. Requires Installation

You need to install software on each server. This means:

  • SSH access required
  • Brief setup time
  • Agent must be maintained/updated

2. Not for Serverless

If you use:

  • AWS Lambda
  • Vercel
  • Netlify
  • Cloudflare Workers

There's no server to install an agent on. Use external monitoring instead.

3. Security Considerations

You're running third-party software on your servers. Mitigate by:

  • Using reputable, open-source agents
  • Reviewing agent permissions
  • Keeping agents updated

4. Additional Resource Usage

Agents consume (minimal) server resources:

  • Wakestack agent: Under 1% CPU, ~20MB RAM
  • Datadog agent: ~1-2% CPU, ~200MB RAM
  • Prometheus node_exporter: Under 1% CPU, ~20MB RAM

Examples of Agent-Based Monitoring

Wakestack Agent

  • Language: Go (single binary)
  • Metrics: CPU, memory, disk, processes
  • Focus: Essential metrics integrated with uptime monitoring
  • Resource usage: Under 1% CPU, ~20MB RAM

Datadog Agent

  • Language: Python/Go hybrid
  • Metrics: Hundreds, with 500+ integrations
  • Focus: Full observability platform
  • Resource usage: ~1-2% CPU, ~200MB RAM

Prometheus Node Exporter

  • Language: Go
  • Metrics: Extensive system metrics
  • Focus: Works with Prometheus/Grafana stack
  • Resource usage: Minimal

Netdata Agent

  • Language: C
  • Metrics: Thousands with 1-second resolution
  • Focus: Real-time visualization
  • Resource usage: Optimized for performance

Common Mistakes

1. Not Installing an Agent at All

External monitoring alone leaves you diagnosing blindly during incidents.

2. Monitoring Too Many Metrics

Start with essentials:

  • CPU usage
  • Memory usage
  • Disk space
  • Key processes

Add more only when you need them.

3. Setting Alerts Too Sensitive

Brief CPU spikes are normal. Alert on sustained issues:

Alert if: CPU > 85% for 5+ minutes
Not: CPU > 85% once

4. Ignoring Agent Health

If your agent stops reporting, you're blind. Alert on:

  • Agent not reporting for 5+ minutes
  • Agent errors in logs

When Wakestack Is a Good Fit

Wakestack's approach combines agent-based server monitoring with external uptime monitoring in one platform:

  • Lightweight Go agent — Single binary, minimal resources
  • Essential metrics — CPU, memory, disk, processes
  • Integrated with uptime — See server health alongside endpoint status
  • Nested hosts — Group monitors by infrastructure
  • Status pages included — No separate tool needed

Comparison

FeatureWakestackDatadog
Agent size~10MB~200MB
CPU usageUnder 1%~1-2%
SetupOne commandMore complex
MetricsEssentialComprehensive
Price$29/mo flat$15+/host/mo
Best forUptime + server basicsFull observability

Install the Wakestack agent — One command, immediate visibility.

Quick Installation

# Wakestack agent
curl -sSL https://wakestack.co.uk/install.sh | bash
 
# Verify it's running
systemctl status wakestack-agent

That's it. Metrics start flowing immediately.

Key Takeaways

  • Agent-based monitoring installs software on servers to collect internal metrics
  • It answers "why is it broken?" while external monitoring answers "is it broken?"
  • Pros: Deep visibility, root cause analysis, proactive alerting
  • Cons: Requires installation, not for serverless, uses minimal resources
  • Most teams need both agent-based and external monitoring

About the Author

WT

Wakestack Team

Engineering Team

Frequently Asked Questions

What is agent-based monitoring?

Agent-based monitoring uses a small software program (an 'agent') installed directly on your servers to collect internal metrics like CPU, memory, disk usage, and running processes. It provides deep visibility that external monitoring can't achieve.

Is agent-based monitoring safe?

Yes, reputable monitoring agents are read-only—they collect data without making changes. Good agents use minimal resources (under 1% CPU, ~20MB RAM) and communicate over encrypted connections.

When should I use agent-based vs agentless monitoring?

Use agentless (external) monitoring for public endpoints anyone can access. Use agent-based monitoring for servers you control when you need to understand internal health—CPU, memory, disk, processes.

Related Articles

Ready to monitor your uptime?

Start monitoring your websites, APIs, and services in minutes. Free forever for small projects.