GitOps-Native
Store monitor configuration as Kubernetes resources in Git and let your normal deployment workflow apply it.
CRD-driven, GitOps-friendly, and database-free.
The Timoni module under timoni/yuptime/ is the authoritative packaging source for this repository. The checked-in k8s/, helm/yuptime/, and manifests/ trees are mirrors kept aligned from that CUE-first workflow.
timoni apply yuptime oci://ghcr.io/briansunter/yuptime/timoni-module \
--version latest \
--namespace yuptimehelm install yuptime oci://ghcr.io/briansunter/yuptime/charts/yuptime \
--namespace yuptime \
--create-namespacekubectl apply -f https://raw.githubusercontent.com/briansunter/yuptime/master/k8s/crds.yaml
kubectl create namespace yuptime
kubectl apply -f https://raw.githubusercontent.com/briansunter/yuptime/master/manifests/all.yaml -n yuptimeThen create a simple HTTP monitor:
apiVersion: monitoring.yuptime.io/v1
kind: Monitor
metadata:
name: website-health
namespace: yuptime
spec:
type: http
schedule:
intervalSeconds: 60
timeoutSeconds: 30
target:
http:
url: "https://example.com"
successCriteria:
http:
acceptedStatusCodes: [200]Yuptime currently exposes 17 monitor enum values. docker is reserved but not implemented; the rest map to active checkers or protocol-specific validation flows.
| Type | Description |
|---|---|
| HTTP | HTTP/HTTPS endpoints |
| TCP | TCP connectivity and send/expect checks |
| DNS | DNS lookups |
| Ping | ICMP reachability |
| WebSocket | WebSocket connectivity |
| gRPC | gRPC health checks |
| MySQL | MySQL connectivity |
| PostgreSQL | PostgreSQL connectivity |
| Redis | Redis connectivity |
| Kubernetes | In-cluster resource health |
| Push | Push/heartbeat monitoring |
| Steam | Steam game servers |
keyword | HTTP body keyword matching |
jsonQuery | JSONPath-based validation |
xmlQuery | XPath-based validation |
htmlQuery | CSS selector validation |
docker | Reserved placeholder |
3000.