Coder Social home page Coder Social logo

zoro's Introduction

Zoro

我们的目标是让每一台服务器都安装有zoro。

zoro

简单介绍###

你的网站,VPS,服务器的性能,业务都需要进行监控,并在异常的时候及时通知你。

zoro用来定时收集你服务器运行状态、性能、业务等信息,根据你定义好的规则,发现异常后通知你。

zoro定位是一个很简单就能安装使用的本机监控软件,不需要运营一个网站, 而且强调扩展性,让人们去开发各种插件满足不同的监控需求以及和自己的监控系统集成。

快速上手

下载安装

git clone https://github.com/onlytiancai/zoro.git

cd zoro 
pip install -r requirement.txt

cd src

打开config.ini,修改报警邮件配置

[sender:mail]
name = mail 
smtphost = smtp.163.com
username = [email protected]
password = password
from = [email protected]
;可以用逗号隔开写多个报警收件人
to = [email protected]
ssl = False
;每小时最多发送多少报警
one_hour_max_send = 1

配置主机的基本报警规则

[rule:default]
name = default
;主机名,对外发送报警时,区分多台机器
host = wawahost
;以下每行为一个报警规则,格式为"计数器名称 阈值 超过阈值最大次数 报警的标题"
rule1 = cpu_utilization 70 5 CPU使用率连续5次超过70%
rule2 = mem_utilization 70 5 内存使用率连续5次超过70%
rule3 = swap_utilization 70 5 交换分区使用率连续5次超过70%
rule4 = disk_utilization 70 5 磁盘使用率连续5次超过70%

如果要确保本机必须监听某些端口,做如下配置

[rule:tcpport]
name = tcpport 
host = wawahost
;格式为"ip port 报警的标题"
rule1 = 127.0.0.1 80 nginx端口挂掉
rule2 = 127.0.0.1 27017 mongodb端口挂掉
rule3 = 127.0.0.1 3306 mysql端口挂掉

如果要确保本机必须运行某些进程,做如下配置

[rule:process]
name = process 
host = wawahost
;格式为"进程cmdline的正则匹配模式 报警的标题", 报警标题为最后一个空格之后的文字
rule1 = gunicorn mainweb:wsgiapp.*-k gevent 检测到wsgiapp进程不存在

运行zoro

setsid python zoro_main.py &

可以睡个好觉了,服务有问题你会收到通知的。

小技巧

  1. 最好专门申请一个独立的邮箱用来发送报警,163,qq都可以免费注册邮箱。
  2. 接收报警的邮箱推荐用qq邮箱,引起如果你开通了微信的话,收到邮件后手机会有提醒。

其它

如果你有兴趣进一步了解并参与这个项目,可以阅读如下链接。

  1. 详细文档
  2. 给我提issue
  3. 开发中遇到的挑战
  4. TODO list

zoro's People

Contributors

onlytiancai avatar yizero avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.