Monitoring uptime

How to monitor a production app's uptime using the status integration

🚧

Please note the status integration is currently a beta feature and may change.

Every Meya app has a built-in status integration that can be used to probe for bot uptime and latency. The endpoint will probe your app’s end-to-end functionality by responding to an http request and creating a SayEvent. There is a built-in flow that will respond with a status 200 and a JSON payload with text = “STATUS OK” to indicate that your bot is functional. Any other response implies that your bot is down.

👍

Try it live for the demo app here

Example curl

Simply replace {app_id} with your app id that you want to monitor.

curl -i \
  -H "Cache-Control: no-cache" \
  https://grid.meya.ai/gateway/v2/status/{app_id}/__status__?user_id=monitor&text=__status__

📘

Note the Cache-Control: no-cache header. Otherwise your request may be cached.

Success response

Headers

HTTP/2 200 
content-type: application/json; charset=utf-8
content-length: 71
date: Wed, 09 Sep 2020 19:24:58 GMT
server: Python/3.7 aiohttp/3.6.2
x-ratelimit-limit-second: 50
x-ratelimit-remaining-second: 49
x-ratelimit-remaining-minute: 598
ratelimit-limit: 50
ratelimit-remaining: 49
x-ratelimit-limit-minute: 600
ratelimit-reset: 1
x-kong-upstream-latency: 615
x-kong-proxy-latency: 1
via: kong/2.0.4, 1.1 google
alt-svc: clear

JSON

{
  "ok": true,
  "text": "STATUS OK",
  "time": "2020-09-09 19:24:58.826689"
}

Orb response

Monitoring & Alerting

You can easily connect this endpoint to any 3rd party uptime monitoring tool to track and be alerted of downtime events. The response time also serves as and end-to-end latency metric.

For a list of uptime monitoring services, see this list on G2.