最近接触到了这款探针,搭建起来也很方便,之前用的 ServerStatus-Hotaru ,添加机器调整顺序不是很方便, 故此换了哪吒探针,发现哪吒添加机器添加机器很方便。现在在这里分享一下教程。
github项目地址:https://github.com/naiba/nezha
开始之前,请先确定你搭建探针的域名
比如说tz.llxx.cc
作为面板的域名,还有一个tzz.llxx.cc
是用来记录面板服务器的IP
首先打开:https://github.com/settings/developers,然后点击New OAuth App按钮。
记录下OAuth Apps的Client ID和Client secrets
打开github项目地址,现在有一键代码,我还是比较推荐使用国外的机器搭建哪吒探针的。https://github.com/naiba/nezha
curl -L https://raw.githubusercontent.com/naiba/nezha/master/script/install.sh -o nezha.sh && chmod +x nezha.sh
sudo ./nezha.sh #国外机
curl -L https://cdn.jsdelivr.net/gh/naiba/nezha@master/script/install.sh -o nezha.sh && chmod +x nezha.sh
CN=true sudo ./nezha.sh #国内机
在你的服务器上开放8088和5555端口。并且解析两个域名到服务器!
location /
{
proxy_pass http://127.0.0.1:8008;
proxy_set_header Host $host;
}
location /ws
{
proxy_pass http://127.0.0.1:8008;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host;
}
这时候就可以输入tz.llxx.cc访问后台了,登入后台,设置未接入CDN的面板服务器域名/IP
复制一键命令到其他要被监控的机器,一键添加,非常方便
可以去版权、改LOGO、加统计代码等等。
默认主题更改进度条颜色示例
<style>
.ui.fine.progress> .bar {
background-color: pink !important;
}
</style>
默认主题修改LOGO、移除版权示例
<style>
.right.menu>a{
visibility: hidden;
}
.footer .is-size-7{
visibility: hidden;
}
.item img{
visibility: hidden;
}
</style>
<script>
window.onload = function(){
var avatar=document.querySelector(".item img")
var footer=document.querySelector("div.is-size-7")
footer.innerHTML="Powered by 你的名字"
footer.style.visibility="visible"
avatar.src="你的方形logo地址"
avatar.style.visibility="visible"
}
</script>
hotaru 主题更改背景图片示例
<style>
.hotaru-cover {
background: url(https://s3.ax1x.com/2020/12/08/DzHv6A.jpg) center;
}
</style>
#NEZHA#
是面板消息占位符,面板触发通知时会自动替换占位符到实际消息
Body 内容是JSON
格式的:当请求类型为FORM时,值为 key:value
的形式,value
里面可放置占位符,通知时会自动替换。当请求类型为JSON时 只会简进行字符串替换后直接提交到URL
。
URL 里面也可放置占位符,请求时会进行简单的字符串替换。
参考下方的示例,非常灵活。
{"appToken":"你的appToken","topicIds":[应用topicID],"content":"#NEZHA#","contentType":"1","uids":["你的uid"]}
[{"Type":"offline","Min":0,"Max":0,"Duration":10}]
[{"Type":"cpu","Min":0,"Max":50,"Duration":10},{"Type":"memory","Min":20,"Max":0,"Duration":20}]
哪吒面板,顶部导航栏,点报警,添加通知方式
https://api.telegram.org/botXXXXXX/sendMessage?chat_id=YYYYYY&text=#NEZHA#
参数获取说明:botXXXXXX
中的 XXXXXX
是在 telegram
中关注官方 @Botfather
,输入/newbot
,创建新的机器人(bot
)时,会提供的 token
(在提示 Use this token to access the HTTP API
:后面一行)这里 'bot'
三个字母不可少。创建 bot
后,需要先在 telegram
中与 BOT
进行对话(随便发个消息),然后才可用 API
发送消息。YYYYYY
是 telegram
用户的数字 ID
。与机器人@userinfobot
对话可获得。
然后添加,报警规则,以下表示小鸡离线10s
后就会报警通知到tgbot
[{"Type":"offline","Duration":10}]
cpu
、memory
、swap
、disk
net_in_speed
入站网速、net_out_speed
出站网速、net_all_speed
双向网速、transfer_in
入站流量、transfer_out
出站流量、transfer_all
双向流量offline
离线监控load1
、load5
、load15
负载process_count
进程数 目前取线程数占用资源太多,暂时不支持tcp_conn_count
、udp_conn_count
连接数CPU
为占用百分比[{"type":"offline","duration":10, "cover":0, "ignore":{"5": true}}]
{"1": true, "2":false}
特定服务器,搭配 cover
使用transfer_in_cycle
周期内的入站流量transfer_out_cycle
周期内的出站流量transfer_all_cycle
周期内双向流量和RFC3339
时间格式,例如北京时间为2022-01-11T08:00:00.00+08:00
7
,则代表每隔 7
天统计一次)hour
,可选(hour
, day
, week
, month
, year
)[{"type":"transfer_out_cycle","max":1000000000000,"cycle_start":"2022-01-11T08:00:00.00+08:00","cycle_interval":1,"cycle_unit":"month","cover":1,"ignore":{"3":true}}]
数据储存在 /opt/nezha
文件夹中,迁移数据时打包这个文件夹,到新环境解压。然后执行一键脚本安装即可
使用宝塔反代或者上CDN,建议 Agent配置 跟 访问管理面板 使用不同的域名,这样管理面板使用的域名可以直接套CDN,Agent配置的域名是解析管理面板IP使用的,也方便后面管理面板迁移(如果你使用IP,后面IP更换了,需要修改每个agent,就麻烦了)
使用反向代理时需要针对 /ws
路径的 WebSocket 进行特别配置以支持实时更新服务器状态。
proxy /ws http://ip:8008 { websocket }
原文地址:
https://www.nbmao.com/archives/5045
https://www.nbmao.com/archives/5080