14个稳定版本
新版本 1.4.0 | 2024年8月14日 |
---|---|
1.3.7 | 2023年9月1日 |
1.3.4 | 2023年1月6日 |
1.3.3 | 2022年7月9日 |
0.0.1 |
|
#164 in Web编程
每月 116 次下载
54KB
998 行
Crisp Status Local
Crisp Status Local用于监控内部主机并向Crisp Status报告其状态。
Crisp Status Local是一个守护程序,您可以使用它向您的Crisp Status状态页面报告内部服务健康状况。它设计用于在防火墙后面使用,并监控绑定到您的本地回环或局域网网络的宿主(例如,在局域网IP地址上运行的MySQL服务器)。
在您的服务器上安装Crisp Status Local,并使用您的Crisp Status令牌进行配置;然后它将自动开始监控您在Crisp中配置的所有节点(在local
模式下)。local
模式类似于poll
模式,但专门用于crisp-status-local
监控。
版权所有 2018 Crisp IM SAS。有关复制信息,请参阅LICENSE。
在Rust版本:rustc 1.62.0 (a8314ef7d 2022-06-27)
上进行测试
- 😘 维护者: @valeriansaliou
Crisp Status是什么?
Crisp Status是Crisp上提供的状态页面服务。在Crisp上查看Crisp Status的实时演示(Enrich是一个使用Crisp的服务)。
它允许Crisp用户使用各种方法监控其关键系统:使用Crisp Status Reporter库的应用程序使用push
,公共互联网的HTTP & TCP服务使用poll
,以及私有局域网的HTTP & TCP服务使用local
。
当监控节点出现故障时,Crisp Status会向网站管理员发送警报。如果故障持续时间过长,网站用户也会通过Crisp Chatbox、Crisp 帮助台以及Crisp状态页面的详细信息来接收通知。
Crisp Status Local允许Crisp Status用户监控配置在local
模式下的节点(即私有局域网内HTTP & TCP服务),同时还可以使用不需要Crisp Status Local工具的其他监控方法。
它是如何工作的呢?
Crisp Status Local需要安装在你的基础设施服务器上。每个Crisp状态页面最多只能运行一个Crisp Status Local实例。
Crisp Status Local会动态获取你的Crisp状态配置并检查local
模式节点的健康状态。然后它会报告这些内部节点是健康的
、生病的
还是死亡的
。
👉 Crisp Status Local是开源的,并使用Rust编写;因此,你可以自由地审查、修改其代码并自行编译。我们知道在您的基础设施中运行此类二进制文件可能会很敏感,这就是为什么我们将其开源。
如何添加监控节点?
您可以在Crisp仪表板上轻松添加要监控的本地节点,方法如下
如何使用它?
安装
A. 从Docker Hub安装(⭐️推荐)
您可能会发现通过Docker运行Crisp Status Local很方便。您可以在Docker Hub上找到预构建的Crisp Status Local镜像,网址为crispim/crisp-status-local。
首先,拉取crispim/crisp-status-local
镜像
docker pull crispim/crisp-status-local:v1.4.0
然后,创建一个配置文件并运行它(将/path/to/your/crisp-status-local/config.cfg
替换为您配置文件的路径)
docker run -v /path/to/your/crisp-status-local/config.cfg:/etc/crisp-status-local.cfg crispim/crisp-status-local:v1.4.0
在配置文件中,请确保
report.token
设置为您的Crisp状态报告者令牌(您可以在Crisp仪表板上获取它)
B. 从软件包安装
Crisp Status Local为基于Debian的系统(Debian、Ubuntu等)提供了预构建的软件包。
重要提示:Crisp Status Local目前只提供针对Debian 10、11 & 12的64位软件包(代号:buster
、bullseye
& bookworm
)。您仍然可以在其他Debian版本以及Ubuntu上使用它们。
首先,添加Crisp Status Local APT仓库(例如,对于Debian bookworm
)
echo "deb [signed-by=/usr/share/keyrings/crisp-im_crisp-status-local.gpg] https://packagecloud.io/crisp-im/crisp-status-local/debian/ bookworm main" > /etc/apt/sources.list.d/crisp-im_crisp-status-local.list
curl -fsSL https://packagecloud.io/crisp-im/crisp-status-local/gpgkey | gpg --dearmor -o /usr/share/keyrings/crisp-im_crisp-status-local.gpg
apt-get update
然后,安装Crisp Status Local软件包
apt-get install crisp-status-local
然后,编辑预填充的Crisp Status Local配置文件
nano /etc/crisp-status-local.cfg
最后,重新启动Crisp Status Local
service crisp-status-local restart
C. 从二进制文件安装
Crisp Status Local的二进制文件在GitHub的发行版中共享。您可以直接从发行版页面下载最新的二进制版本,并在您的服务器上运行。每个发行版二进制文件都附带一个.asc
签名文件,可以使用Crisp GPG密钥进行验证。
您仍然需要为二进制文件提供配置文件,因此请确保您已准备好Crisp Status Local的config.cfg
文件。
提供的二进制文件是静态链接的,这意味着它可以在任何基于Linux的服务器上运行。然而,它将无法在MacOS或Windows机器上运行。
D. 从Cargo安装
如果您更喜欢通过Rust的Cargo管理crisp-status-local
,可以直接通过cargo install
直接安装
cargo install crisp-status-local
确保您的 $PATH
正确配置以源码编译 Crates 二进制文件,然后使用 crisp-status-local
命令运行 Crisp Status Local。
E. 从源码构建
最后一个选项是从 Git 拉取源代码,通过 cargo
编译 Crisp Status Local。
cargo build --release
您可以在 ./target/release
目录中找到编译后的二进制文件。
配置
使用示例 config.cfg 配置文件,并根据您的环境进行修改。
您还可以在配置文件中使用环境变量和字符串插值,例如:token = ${{CRISP_STATUS_TOKEN}}
。
以下列出了可用的配置选项和允许的值
[server]
log_level
(类型:字符串,允许:debug
,info
,warn
,error
,默认:warn
)— 日志详细程度,在生产环境中设置为error
。
[report]
token
(类型:字符串,允许:任何字符串,无默认值)— 您的 Crisp Status Reporter 令牌(您可以在 Crisp 控制台中获取)
注意:如果 report.token
值无效,当守护进程运行时,您将在 syslog
中看到错误。
运行
Crisp Status Local 可以这样运行
./crisp-status-local -c/path/to/config.cfg
获取更多帮助
您可以在我们的帮助文章中找到更多帮助:[如何设置 Crisp Status Local 服务?](https://help.crisp.chat/en/article/1vbyqkt/)
🔥 报告漏洞
如果您在 Crisp Status Local 中发现漏洞,非常欢迎您直接通过发送加密邮件到 [email protected] 向 @crisp-im 报告。请勿在公共 GitHub 问题中报告漏洞,因为这可能会被恶意人士利用,针对运行未打补丁的 Crisp Status Local 服务器。
依赖项
~18MB
~441K SLoC