Monitor types
DevHelm supports six monitor types:HTTP
Web endpoints, APIs, health checks. Supports headers, auth, TLS verification, and 11 assertion types.
TCP
Port connectivity checks. Verify services accept connections with response time thresholds.
DNS
Domain resolution. Verify records resolve correctly with expected values, TTLs, and response times.
ICMP
Host reachability via ping. Measure response time and packet loss.
MCP Server
AI tool server availability. Verify MCP servers start, respond, and list expected tools.
Heartbeat
Passive monitoring. Your service pings DevHelm — an incident opens if pings stop arriving.
Check flow
For active monitors (HTTP, TCP, DNS, ICMP, MCP Server):- DevHelm runs checks from each configured probe region at the set frequency
- Each check evaluates all assertions and records a result (pass/fail)
- Results flow into the incident policy engine
- If the policy’s trigger rules are met, an incident is created and alerts fire
- When the monitor recovers, the incident auto-resolves per the recovery policy
Frequency
Check frequency is configurable from 30 seconds to 86,400 seconds (24 hours). The default is 60 seconds. Minimum frequency depends on your plan.| Plan | Minimum frequency |
|---|---|
| Free | 300s (5 min) |
| Starter | 60s (1 min) |
| Pro | 30s |
Regions
Monitors run from one or more probe regions. Multi-region checks enable the incident policy to require failures from multiple locations before opening an incident, reducing false positives.Assertions
Assertions define what “healthy” means for your monitor. Each assertion has a severity (fail or warn) and type-specific configuration.
- fail severity — contributes to incident creation when the assertion fails
- warn severity — records a
DEGRADEDseverity hint but doesn’t directly triggerDOWNincidents
| Monitor type | Available assertions |
|---|---|
| HTTP | status_code, response_time, body_contains, json_path, header, regex, ssl_expiry, response_size, redirect_count, redirect_target, response_time_warn |
| TCP | tcp_connects, tcp_response_time, tcp_response_time_warn |
| DNS | dns_resolves, dns_response_time, dns_expected_ips, dns_expected_cname, dns_record_contains, dns_record_equals, dns_txt_contains, dns_min_answers, dns_max_answers, dns_response_time_warn, dns_ttl_low, dns_ttl_high |
| ICMP | icmp_reachable, icmp_response_time, icmp_response_time_warn, icmp_packet_loss |
| MCP Server | mcp_connects, mcp_response_time, mcp_has_capability, mcp_tool_available, mcp_min_tools, mcp_protocol_version, mcp_response_time_warn, mcp_tool_count_changed |
| Heartbeat | heartbeat_received, heartbeat_max_interval, heartbeat_interval_drift, heartbeat_payload_contains |
Assertion operators
Where an assertion uses anoperator field, the options are:
| Operator | Behavior |
|---|---|
equals | Exact match |
contains | Substring match |
less_than | Numeric less-than |
greater_than | Numeric greater-than |
matches | Regex match |
range | Numeric range |
Authentication
HTTP monitors support authenticated requests via vault secrets. Store credentials in the encrypted vault, then reference them by ID in your monitor configuration.| Auth type | What it sends |
|---|---|
bearer | Authorization: Bearer <token> |
basic | Authorization: Basic <base64> |
header | Custom header with secret value |
api_key | Named header with API key value |
Incident policy
Every monitor has an incident policy that controls when incidents open and close. The policy has three components:- Trigger rules — conditions that open an incident (consecutive failures, failures in window, response time)
- Confirmation — multi-region confirmation to prevent false positives
- Recovery — how many passing checks are required before auto-resolving
Management modes
Monitors track who manages them via themanagedBy field:
| Mode | Set by | Meaning |
|---|---|---|
DASHBOARD | Dashboard or API | Managed through the UI or direct API calls |
CLI | devhelm deploy | Managed by YAML config-as-code |
TERRAFORM | Terraform provider | Managed by Terraform state |
Next steps
HTTP monitors
The most feature-rich monitor type — endpoints, APIs, TLS, assertions.
Monitors guide
Step-by-step guide to creating and configuring monitors.
First HTTP monitor
Create your first HTTP monitor end-to-end.
Monitoring as Code
Define monitors in YAML.