- BEHAVIOR — Invokes a unary gRPC method and asserts on the response
- HEALTH — Queries the standard
grpc.health.v1.Health/Checkendpoint
Prerequisites
Prerequisites
Before creating gRPC Monitors, ensure you have:
- An initialized Checkly CLI project
- The hostname and port of the gRPC service you want to monitor
- In BEHAVIOR mode: the fully-qualified method name, and either server reflection enabled on the target or an inline
.protofile
Configuration
gRPC monitors have their own gRPC-specific settings, plus the standard monitor options shared across all check types.- gRPC Monitor Settings
- General Monitor Settings
GrpcMonitor Options
gRPC connection and call configuration.Usage:Parameters:
gRPC-specific call configuration nested inside
request.Parameters:Response time in milliseconds at which the monitor is marked as degraded (warning state). Maximum: 180,000.Usage:
Response time in milliseconds at which the monitor is marked as failed. Maximum: 180,000.Usage:
GrpcMonitor Assertions
Use GrpcAssertionBuilder to define assertions for the request of a GrpcMonitor. The following sources are available:
responseTime(): Assert the total response time (DNS + connect + call) in millisecondsstatusCode(): Assert the numeric gRPC status code (0= OK,14= UNAVAILABLE, etc.)healthCheckStatus(): Assert the health status by its numeric value (HEALTH mode). The runner evaluates this as a number — not a string. Enum mapping:UNKNOWN=0,SERVING=1,NOT_SERVING=2,SERVICE_UNKNOWN=3responseMessage(property?): Assert against the JSON response body (BEHAVIOR mode), with an optional JSON path (e.g.'$.name')textBody(property?): Assert against the raw response body as textresponseMetadata(property?): Assert against response metadata (header) values returned by the server, identified by key
- Assert the call returns gRPC OK (code 0):
- Assert the health check reports SERVING (numeric target required — the runner does not accept string labels):
- Assert a specific field in the JSON response body:
- Assert the total response time:
- Assert a response metadata header value:
General Monitor Options
Friendly name for your gRPC Monitor displayed in the Checkly dashboard and used in notifications.Usage:
How often the gRPC Monitor should run. Use the Available frequencies:
Frequency enum to set the check interval.Usage:EVERY_10S, EVERY_20S, EVERY_30S, EVERY_1M, EVERY_2M, EVERY_5M, EVERY_10M, EVERY_15M, EVERY_30M, EVERY_1H, EVERY_2H, EVERY_3H, EVERY_6H, EVERY_12H, EVERY_24HArray of public location codes where the gRPC Monitor runs from. Multiple locations provide geographic coverage.Usage:
Whether the gRPC Monitor is enabled and will run according to its schedule.Usage:
Examples
- Health check
- Unary method (proto file)
- Authenticated with metadata