Amas is a monitor alert system based on big-data platform, with features below:
So far, Amas repository is automated build on docker hub, you are recommended to run amas quickly by docker:
#!/usr/bin/env bash
docker network create amas
docker run -d -p 4242:4242 --name opentsdb --network amas eacon/docker-opentsdb docker run -d -p 27017:27017 --name mongo --network amas mongo docker run -d -p 6379:6379 --name redis --network amas redis
docker run -d --name collector --network amas -p 8001:8001 eacon/argus_collector
docker run -d --name alert --network amas eacon/argus_alert
docker run -d --name statistics --network amas eacon/argus_statistics
docker run -d --name web --network amas -p 8080:8080 eacon/argus-web
3. Visit: open browser(try not to use ```localhost```, but ```127.0.0.1```):[http://127.0.0.1:8080](http://127.0.0.1:8080)
4. Init: execute web container to generate default account(username/password: admin/123):
docker exec -it web init_user
### Docker-Compose
With docker-compose installed,you could run amas as below:
1. git clone:
git clone https://github.com/amas-eye/amas.git; cd amas/docker/compose/
- Or just get that compose file:
mkdir amas; cd amas; curl https://raw.githubusercontent.com/amas-eye/amas/master/docker/compose/docker-compose.yml > docker-compose.yml
2. Execute command to run all containers up:
docker-compose up -d
## Metrics
See more in [Metrics.md](./docs/dev/argus_collector/Metrics.md).
## Screenshots
Dashboard
![](./docs/img/Dashboard1.png)
![](./docs/img/Dashboard2.png)
Metric chart view
![](./docs/img/chartview.png)
Alert rules and messages:
![](./docs/img/alert1.png)
![](./docs/img/alert2.png)
Slack notification:
![](./docs/img/alert_notify_slack.jpeg)
Tracing display:
![](./docs/img/callchain1.png)
![](./docs/img/callchain2.png)
## Architect
### Modules(corresponding repo)
- Web server: argus-web
- Backend:
* Collector: argus_collector
* Alert: argus_alert
* Tracing: argus_chain
* Statistics: argus_statistics
* AIOps: argus_aiops
## Authors
Amas is maintained by [@Eacon](https://github.com/EaconTang) and his develop team, see more in [AUTHORS](AUTHORS).
## Other
* Amas' code name is "argus", and this would be reserved in source code.
## ToDoList:
- [ ] Support DSL defined rules in alert engine
- [ ] Integrate with Zabbix, Nagios...
- [ ] Java bytecode injection based on AspectJ
- [ ] Python bytecode injection based on pyrasite
- [ ] Landing more AIOps...