卡博特很稳定,并被数百家公司和个人在生产中使用,但并未得到积极维护。我们希望将项目的维护工作移交给一名或多名负责任且经验丰富的维护人员。如果您有兴趣,请发送电子邮件至 [email protected],并提供一些有关您自己的信息(github 个人资料和/或简历)。
Cabot 是一个免费、开源、自托管的基础设施监控平台,提供 PagerDuty、服务器密度、Pingdom 和 Nagios 的一些最佳功能,但没有成本和复杂性。 (Nagios,我主要是在看你。)
它提供了一个 Web 界面,允许您监控服务(例如“Stage Redis 服务器”、“生产 ElasticSearch 集群”),并在这些服务开始出现问题或出现故障时向您的值班团队发送电话、短信或 hipchat/电子邮件警报 -无需编写任何代码。最重要的是,您可以使用已经推送到 Graphite/statsd 的数据来生成警报,而不是实施和维护全新的数据收集器系统。
您可以根据以下内容发出警报:
我们在 Arachnys 建立了 Cabot 作为圣诞节项目,因为我们无法完全理解 Nagios,而且那里似乎没有其他东西适合我们的用例。我们将其开源,希望其他人发现它有用。
Cabot 使用 Python 编写,并使用 Django、Bootstrap、Font Awesome 以及大量其他底层功能。
使用 Docker:使用 cabotapp.com 上的官方快速入门指南在 5 分钟或更短的时间内完成部署。 (另请参阅 https://hub.docker.com/r/cabotapp/cabot/)
文档已移至 cabotapp.com
部分:
对于那些想要贡献的人:
我的狗叫卡伯特,他喜欢监视事物。主要是他周围环境中食物的存在,或者松鼠访问我们花园的频率。他还会大声吠叫以提醒我们某些事件(例如邮递员上门)。
这只是一个幸运的巧合,他的名字听起来像是一个自动化工具。
API 已自动生成可通过浏览 https://cabot.yourcompany.com/api 获取的文档。可浏览的文档显示示例 GET 请求并列出其他允许的 HTTP 方法。
要查看单个项目,请将项目id
附加到 URL。例如,要查看graphite_check
1,请浏览:
/api/graphite_checks/1/
该 API 允许使用标准 Django 用户名和密码以及会话身份验证(通过在登录页面上提交登录表单)进行 HTTP 基本身份验证。 API 同样使用标准 Django 权限来允许和拒绝 API 访问。
任何经过身份验证的用户都可以获取所有资源,但必须为 POST、PUT 和其他写入方法授予单独的权限。
例如,要对所有status_check
子类进行 POST 访问,请添加以下权限:
cabotapp | status check | Can add graphite status check
cabotapp | status check | Can add http status check
cabotapp | status check | Can add icmp status check
cabotapp | status check | Can add jenkins status check
访问 Django 管理页面 https://cabot.yourcompany.com/admin 以添加/删除用户、更改用户权限、添加/删除组以进行基于组的权限控制以及更改组权限。
REST 客户端和可浏览的 API 都可以使用排序和过滤功能。可浏览 API 中可见的所有字段都可用于过滤和排序。
获取所有启用 debounce 且至关重要的jenkins_checks
:
https://cabot.yourcompany.com/api/jenkins_checks/?debounce=1&importance=CRITICAL
按name
字段升序对graphite_checks
进行排序:
https://cabot.yourcompany.com/api/graphite_checks/?ordering=name
按name
字段排序,降序:
https://cabot.yourcompany.com/api/graphite_checks/?ordering=-name
Django REST Framework 文档中提供了其他(非 Cabot 特定)示例。
请参阅此存储库中的LICENSE
文件。