Improve SLO definition in CRDs
The following proposal is based on #274 (closed).
slos:
- name: "lag-trend"
sloType: "lag trend"
prometheusUrl: "http://prometheus-operated:9090" # optional, usually not needed
offsetSeconds: 0 # optional, usually not needed
properties:
threshold: 2000
warmupSeconds: 60
# externalSloUrl not needed
- name: "dropped-records"
sloType: "generic"
prometheusUrl: "http://prometheus-operated:9090" # optional, usually not needed
offsetSeconds: 0 # optional, usually not needed
properties:
promQLQuery: "sum by(job) (kafka_streams_stream_task_metrics_dropped_records_total>=0)"
warmupSeconds: 60
queryAggregation: "p95"
repetitionAggregation: "median"
operator: lte
threshold: 2000
# externalSloUrl not needed
- name: "something-completety-different"
sloType: "custom"
prometheusUrl: "http://prometheus-operated:9090" # optional, usually not needed
offsetSeconds: 0 # optional, usually not needed
properties:
promQLQuery: "sum by(job) (kafka_streams_stream_task_metrics_dropped_records_total>=0)"
externalChecker: "http://external-checker:8080/path"
# arbitrary parameters passed to external checker