image: repository: twinproduction/gatus tag: v5.35.0 # Does envFrom secret named gatus secrets: true serviceMonitor: enabled: true config: web: address: "[::]" read-buffer-size: 32768 metrics: true storage: type: postgres path: "postgres://app:${DB_PASS}@prod-gatus-db-rw:5432/app" ui: title: Oceanbox | Service Status header: Oceanbox Service Status logo: https://maps.oceanbox.io/ob.png link: https://maps.oceanbox.io default-sort-by: "group" security: oidc: issuer-url: "https://login.microsoftonline.com/3f737008-e9a0-4485-9d27-40329d288089/v2.0" redirect-url: "https://uptime.adm.hel1.obx/authorization-code/callback" client-id: "38af7e63-b097-4f1b-8dac-3d0030dceaf9" client-secret: "${CLIENT_SECRET}" scopes: ["openid"] alerting: custom: url: "https://oncall-prod-eu-west-0.grafana.net/oncall/integrations/v1/formatted_webhook/${WEBHOOK}/" method: "POST" body: | { "title": "[ENDPOINT_GROUP] ➔ [ENDPOINT_NAME]", "message": "[ALERT_TRIGGERED_OR_RESOLVED]: [ENDPOINT_GROUP] ➔ [ENDPOINT_NAME] ➔ [ALERT_DESCRIPTION]", "state": "[ALERT_TRIGGERED_OR_RESOLVED]", "image_url": "" } headers: Content-Type: "application/json" send-on-resolved: true failure-threshold: 3 success-threshold: 2 placeholders: ALERT_TRIGGERED_OR_RESOLVED: TRIGGERED: "alerting" RESOLVED: "ok" .defaults: &defaults interval: 30s .https-endpoint: &https-endpoint <<: *defaults conditions: - "[STATUS] == 200" - "[RESPONSE_TIME] <= 2000" - "[CERTIFICATE_EXPIRATION] > 168h" # 7 days .tls-endpoint: &tls-endpoint <<: *defaults conditions: - "[CONNECTED] == true" - "[RESPONSE_TIME] <= 2000" - "[CERTIFICATE_EXPIRATION] > 168h" # 7 days .tcp-endpoint: &tcp-endpoint <<: *defaults conditions: - "[CONNECTED] == true" - "[RESPONSE_TIME] <= 2000" endpoints: - name: Atlantis TOS <<: *https-endpoint group: "Primary Services" url: https://maps.oceanbox.io/healthz alerts: - type: custom - name: Sorcerer TOS <<: *https-endpoint group: "Primary Services" url: https://sorcerer.data.oceanbox.io/healthz alerts: - type: custom - name: Atlantis Beta TOS <<: *https-endpoint group: "Primary Services" url: https://maps.beta.oceanbox.io/healthz alerts: - type: custom # NOTE: Ingress is down # - name: Sorcerer VTN # <<: *https-endpoint # group: "Primary Services" # url: https://sorcerer.vtn.oceanbox.io/healthz # alerts: # - type: custom - name: Plume TOS <<: *https-endpoint group: "Secondary Services" url: https://plume.data.oceanbox.io/healthz alerts: - type: custom - name: Homepage <<: *https-endpoint group: "Secondary Services" url: https://oceanbox.io alerts: - type: custom - name: Atlantis Dev TOS <<: *https-endpoint group: "Experimental Services" url: https://maps.dev.oceanbox.io/healthz extra-labels: environment: staging alerts: - type: custom - name: Sorcerer Dev TOS <<: *https-endpoint group: "Experimental Services" url: https://sorcerer.ekman.oceanbox.io/healthz extra-labels: environment: staging alerts: - type: custom