PubSub
This check connects to a PubSub Queue (SQS, GCP PubSub, RabbitMQ, Kafka, NATs) and pulls messages.
pubsub-gcp.yamlapiVersion: canaries.flanksource.com/v1
kind: Canary
metadata:
name: pubsub-check
spec:
schedule: "@every 30s"
pubsub:
- name: gcp-incidents
pubsub:
project_id: flanksource-sandbox
subscription: incident-alerts-sub
transform:
expr: |
results.messages.map(r, gcp.incidents.toCheckResult(r)).toJSON()
Field | Description | Scheme |
---|---|---|
name* | Name of the check, must be unique within the canary |
|
kafka | Apache Kafka queue configuration | |
nats | NATS messaging system configuration | |
pubsub | Google Cloud Pub/Sub configuration | |
rabbitmq | RabbitMQ queue configuration | |
sqs | Amazon SQS queue configuration | |
description | Description for the check |
|
display | Expression to change the formatting of the display | |
icon | Icon for overwriting default icon on the dashboard | |
labels | Labels for check |
|
metrics | Metrics to export from | |
test | Evaluate whether a check is healthy | |
transform | Transform data from a check into multiple individual checks |
SQS
Field | Description | Scheme |
---|---|---|
queue* | Amazon SQS queue ARN |
|
raw* | Enable raw message delivery without JSON wrapping |
|
waitTime | Time in seconds to long-poll for messages (default: 15, max: 20) |
|
accessKey | Access Key ID | |
secretKey | Secret Access Key | |
region | The AWS region |
|
endpoint | Custom AWS Endpoint to use |
|
skipTLSVerify | Skip TLS verify when connecting to AWS |
|
Kafka
Field | Description | Scheme |
---|---|---|
brokers* | List of Kafka broker addresses |
|
group* | Kafka consumer group ID |
|
topic* | Kafka topic name |
|
GCP PubSub
Field | Description | Scheme |
---|---|---|
project_id* | Google Cloud project ID |
|
subscription* | Pub/Sub subscription name |
|
credentials | The credentials to use for authentication | |
endpoint | Custom GCP Endpoint to use |
|
skipTLSVerify | Skip TLS verification when connecting to GCP |
|
NATS
Field | Description | Scheme |
---|---|---|
queue* | NATS queue group name for load balancing |
|
subject* | NATS subject pattern |
|
url* | NATS server URL |
|
RabbitMQ
Field | Description | Scheme |
---|---|---|
host* | RabbitMQ server hostname |
|
queue* | RabbitMQ queue name |
|
password | RabbitMQ authentication password |
|
port | RabbitMQ server port |
|
username | RabbitMQ authentication username |
|