Birder is an Open source service uptime monitor. It is not intented to be a replacement of Nagios or other system administrator's monitoring tools, it has been designed to be simple and easy do deploy on any environment, its audience is web site users to display SLA compliance and systems availability.
We wanted to create a simple status monitor with no dependencies that was able to monitor 24/7/365 service availability where the only configuration needed could be passed via environment variables.
- http/https
- Postgres/Postgis
- Redis
- Celery (workers running not only broker)
- MySQL
- TCP (raw socket)
-
SECRET_KEY = MUST BE SET
-
SERVER_NAME =
-
SITE_TITLE = 'Birder'
-
GRANULARITIES = "60m,24h,7d,30d"
-
REFRESH_INTERVAL = 60
-
POLLING_INTERVAL = 58
-
DISPLAY_URLS = True
-
ADMINS = ""
-
COOKIE_POLICY_MESSAGE = False
-
BOOTSTRAP_USE_MINIFIED = True
-
BOOTSTRAP_SERVE_LOCAL = True
-
BOOTSTRAP_QUERYSTRING_REVVING = True
-
SESSION_COOKIE_HTTPONLY = True
-
SESSION_COOKIE_SECURE = False
-
SESSION_COOKIE_NAME = "session"
-
SESSION_COOKIE_DOMAIN =
-
SESSION_COOKIE_PATH = /
-
APPLICATION_ROOT =
-
URL_PREFIX =
-
MONITOR_ = name|connection_string
- postgres://user:[email protected]
- redis://10.10.10.1
- celery://10.10.10.1/1?broker=redis
- http://os4d.org
The following is an example command for running the docker image monitoring a couple of
docker run \
--rm \
--name=${CONTAINER_NAME} \
-p 5000:5000 \
-e MONITOR_10=GitLab|https://gitlab.com \
-e MONITOR_20=database|postgres://user:[email protected] \
-e ADMINS=${BIRDER_ADMIN}:${BIRDER_PASSWORD}\
-v /tmp/~birder:/var/db \
${RUN_OPTIONS} \
birder
- MySql
- ftp
- RabbitMQ
- amqp
- clarify behaviour:
- how to clean/reset data for a monitored target