easy-alert
Super Simple Server Monitoring Tool.
Features
- Check various types of status, and then send notifications.
Dependencies
- Python >= 2.6
- pyyaml
- paramiko (for ssh watcher)
- /bin/ps (for process watcher)
- /usr/bin/aws (aws-cli for SES notifier)
Installation
-
pip
command may needsudo
Operation | Command |
---|---|
Install | pip install easy-alert |
Upgrade | pip install --upgrade easy-alert |
Uninstall | pip uninstall easy-alert |
- Check the installed version:
easy-alert --version
- Write your configuration to the file
/etc/easy-alert/easy-alert.yml
.
See an example below.
Configuration Example
/etc/easy-alert/easy-alert.yml
:
--- watchers: process: - { name: syslogd, error: "=1", regexp: "^/usr/sbin/syslogd" } - { name: awesome batch, error: "<=3", warn: "<=2", regexp: "^/usr/local/bin/awesome arg1 arg2" } ssh: - { dynamic: "aws ec2 describe-instances --output text --query 'sort_by(Reservations[].Instances[?not_null(Tags[?Key==`Name`].Value)][].[PrivateIpAddress,Tags[?Key==`Name`].Value|[0]],&[1])'", user: ec2-user, key: ~/.ssh/your.key.pem } - { name: web-1, host: xxx.xxx.xxx.xxx, user: ec2-user, key: ~/.ssh/your.key.pem } - { name: web-2, host: yyy.example.com, user: ec2-user, key: ~/.ssh/your.key.pem } notifiers: email: group_id: awesome from_address: foo@example.com to_address_list: bar@example.com,baz@example.com smtp_server: mail.example.com smtp_port: 587
Quickstart Guide
(todo)
easy-alert process --check easy-alert process easy-alert ssh --check easy-alert ssh