Skip to main content
Monitors are scheduled checks that write a status and latency sample on every run. Each monitor has a tag (a URL-friendly identifier), a name, a type, and a cron schedule.

Status values

Every monitoring result resolves to one of five statuses:
StatusMeaning
UPCheck succeeded
DEGRADEDCheck succeeded but is outside a healthy threshold
DOWNCheck failed
MAINTENANCEOverridden by an active maintenance window
NO_DATANo result recorded yet (common on freshly created heartbeat monitors)

Status priority

When multiple sources could apply, Kener resolves status by priority:
MAINTENANCE > INCIDENT > REALTIME > DEFAULT
An active maintenance window or open incident overrides any live check result.

Scheduling

Monitors run on a cron expression set per monitor (for example * * * * * for every minute). Use tighter schedules for critical services and more relaxed schedules for low-risk dependencies.

Monitor tag rules

A monitor tag is used in URLs and as a unique key. It must:
  • contain only lowercase letters, numbers, hyphens (-), and underscores (_)
  • start and end with a letter or number
  • be unique across all monitors
Examples of valid tags: api-gateway, db_primary, web01

Uptime calculation

The default uptime formula is:
  UP + MAINTENANCE + DEGRADED
---------------------------------  × 100
UP + MAINTENANCE + DEGRADED + DOWN
You can override the numerator and denominator expressions per monitor in Monitor settings.

Monitor types

API

Monitor HTTP/HTTPS endpoints with custom methods, headers, body, and JavaScript eval logic.

Ping, TCP & DNS

ICMP reachability, TCP port availability, and DNS record validation.

SSL, SQL & gRPC

TLS certificate expiry, database query health, and gRPC Health Checking Protocol.

Heartbeat

Passive push-based monitoring — your service pings Kener to prove it is alive.

Groups

Aggregate multiple monitors into a single weighted status.

All supported types

TypeHow it works
APISends an HTTP request and evaluates the response with JavaScript
PINGSends ICMP packets to one or more hosts
TCPOpens a TCP connection to a host and port
DNSResolves a DNS record and compares it to expected values
SSLChecks TLS certificate expiry against time thresholds
SQLRuns a query against a database connection
HEARTBEATWaits for your service to call Kener’s heartbeat endpoint
GRPCCalls the standard gRPC Health Checking Protocol
GAMEDIGQueries a game server using the GameDig library
GROUPAggregates member monitor statuses with configurable weights
NONEA placeholder monitor with no active check

Creating a monitor

1

Open the dashboard

Navigate to Monitors in the Kener management dashboard.
2

Click New monitor

Select the monitor type that fits your check — API, Ping, TCP, DNS, SSL, SQL, Heartbeat, gRPC, GameDig, or Group.
3

Set the tag and name

Enter a unique, URL-friendly tag (e.g. api-gateway) and a human-readable name. The tag cannot be changed after creation.
4

Configure type-specific fields

Fill in the fields required for the monitor type — URL, host, port, thresholds, and so on. See the per-type pages for details.
5

Set the cron schedule

Enter a cron expression for how often the check should run. * * * * * runs every minute.
6

Save

Click Save. The monitor becomes active immediately and starts writing results on its next scheduled run.

Build docs developers (and LLMs) love