/uptime

Availability tool for distributed services

Primary LanguageGoMIT LicenseMIT

uptime

Availability tool for distributed services. A toy project. Includes support for mongodb and any http end point (which works for rabbitmq, elasticsearch)

usage

Path to config file required

$ uptime path/to/config

Example of a valid config.yaml

services: # a list of services
  - name: service name
    type: http|mongodb|redis
    method: http method (defaults to GET, only applies to http)
    url: fully qualified url
    expect: server response status considered successful (defaults to 200, only applies to http)
    auth: basic auth credentials in format user:pwd (only applies to http)
    pwd: password (only applies to redis)

todos

  • http method should default to GET
  • status
  • concurrent service calls
  • http connection timeout
  • http request timeout
  • cron + storage
  • conf defaults
  • opt to add ip as var in conf
  • bug: mongodb does not time out

license

MIT