Knative Eventing
If your platform runs on Kubernetes with Knative, YipYap fits in as a first-class CloudEvents source and sink. The integration covers four use cases:
- Receive alerts as CloudEvents. Route
run.yipyap.alert.*andrun.yipyap.monitor.*events into your Broker for automation, fanout, and filtering. - Send heartbeats and status updates as CloudEvents. Point any Knative source at YipYap’s ingest endpoint.
- Run YipYap as a ContainerSource or first-class Source CRD for clusters that cannot expose their Broker publicly.
- Reply to alerts with CloudEvents. Your Knative Services can claim, enrich, remediate, or suppress alerts by returning a CloudEvent in the HTTP response.
Where to start
Section titled “Where to start”| Goal | Page |
|---|---|
| Pipe YipYap alerts into a Knative Broker | Receive alerts |
| Send heartbeats or status updates from Knative to YipYap | Send heartbeats |
| Look up event types, fields, and schemas | Event catalog |
Architecture
Section titled “Architecture”Every yipyap event, alert fired, monitor down, maintenance started, is published internally as a CloudEvent. Consumers subscribe to a single canonical stream:
events.cloudevents.out.{org_id}.{type}Outbound channels (cloudevent_http notification channels, future YipYapSource CRD adapters) receive the same wire bytes regardless of how they’re configured. This means your Knative Triggers filter on exactly the same ce.type attributes that appear on the public surface, no YipYap-specific quirks.
Inbound, a single endpoint accepts binary, structured, and batched CloudEvents:
POST https://console.yipyap.run/api/v1/cloudevents/ingest/{integration-key}Rate-limited per IP, idempotent via the CloudEvent id attribute (24-hour retention window), and verified against the monitor’s allowed event-type list.
CloudEvents 1.0 compliance
Section titled “CloudEvents 1.0 compliance”- Binary and structured HTTP bindings supported on both sides.
ce-specversion: 1.0mandatory.- Event IDs are ULIDs, globally unique, sortable, 26 characters.
- Sources are canonical URIs:
https://console.yipyap.run/orgs/{org_id}orhttps://console.yipyap.run/orgs/{org_id}/monitors/{monitor_id}.
Schemas for every emitted type are published at https://console.yipyap.run/schemas/cloudevents/{type}.json as JSON Schema 2020-12.