37 lines
28 KiB
JavaScript
37 lines
28 KiB
JavaScript
import{_ as o,o as s,c as t,R as l}from"./chunks/framework.44fd0451.js";const d=JSON.parse('{"title":"","description":"","frontmatter":{"outline":"deep"},"headers":[],"relativePath":"guide/notifications.md","filePath":"guide/notifications.md","lastUpdated":1715016176000}'),a={name:"guide/notifications.md"},e=l(`<p>哪吒监控支持对服务器的负载、CPU、内存、硬盘、流量、月流量、进程数、连接数进行监控,并在其中某项达到用户设定值时发送告警通知 <br><br></p><h2 id="灵活的通知方式" tabindex="-1">灵活的通知方式 <a class="header-anchor" href="#灵活的通知方式" aria-label="Permalink to "灵活的通知方式""></a></h2><ul><li>在面板消息中,占位符 <code>#DATETIME#</code> 代表事件发生的时间戳。当通知被触发时,面板会自动将 <code>#DATETIME#</code> 替换为事件的实际时间。</li><li><code>#NEZHA#</code> 是面板消息占位符,面板触发通知时会自动用实际消息替换占位符</li><li>Body 内容是<code>JSON</code> 格式的:<strong>当请求类型为 FORM 时</strong>,值为 <code>key:value</code> 的形式,<code>value</code> 里面可放置占位符,通知时会自动替换。<strong>当请求类型为 JSON 时</strong> 只会简单进行字符串替换后直接提交到<code>URL</code>。</li><li>URL 里面也可放置占位符,请求时会进行简单的字符串替换。</li></ul><p><strong>请参考以下的通知方式示例,也可以根据自己的需求灵活设置推送方式</strong></p><h3 id="bark-示例" tabindex="-1">Bark 示例 <a class="header-anchor" href="#bark-示例" aria-label="Permalink to "Bark 示例""></a></h3><details><summary>点击展开/收起</summary><ul><li><p>名称:Bark</p></li><li><p>URL 组成: 第一个部分是 key,之后有三个匹配 /:key/:body or /:key/:title/:body or /:key/:category/:title/:body</p></li><li><p>请求方式: GET</p></li><li><p>请求类型: 默认</p></li><li><p>Body: 空</p></li><li><p>名称:Bark</p></li><li><p>URL 组成: /push</p></li><li><p>请求方式: POST</p></li><li><p>请求类型: form</p></li><li><p>Body: <code>{"title": "#SERVER.NAME#","device_key":"xxxxxxxxx","body":"#NEZHA#","icon":"https://xxxxxxxx/nz.png"}</code></p></li></ul></details><h3 id="server-酱示例" tabindex="-1">Server 酱示例 <a class="header-anchor" href="#server-酱示例" aria-label="Permalink to "Server 酱示例""></a></h3><details><summary>点击展开/收起</summary><ul><li>名称:Server 酱</li><li>URL:<a href="https://sc.ftqq.com/SCUrandomkeys.send?title=%E5%93%AA%E5%90%92%E5%91%8A%E8%AD%A6%E4%BF%A1%E6%81%AF&desp=#NEZHA#" target="_blank" rel="noreferrer">https://sc.ftqq.com/SCUrandomkeys.send?title=哪吒告警信息&desp=#NEZHA#</a></li><li>请求方式: GET</li><li>请求类型: 默认</li><li>Body: 空</li></ul><p><strong>Server 酱进阶</strong></p><ul><li>名称:Server 酱</li><li>URL:<a href="https://sc.ftqq.com/SCUrandomkeys.send" target="_blank" rel="noreferrer">https://sc.ftqq.com/SCUrandomkeys.send</a></li><li>请求方式: POST</li><li>请求类型: FORM</li><li>Body:</li></ul><div class="language-json"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#89DDFF;">{</span></span>
|
||
<span class="line"><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">title</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#SERVER.NAME#</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||
<span class="line"><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">desp</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">**#NEZHA#</span><span style="color:#A6ACCD;">\\n\\n</span></span>
|
||
<span class="line"><span style="color:#C3E88D;">平均负载: </span><span style="color:#A6ACCD;">\\"</span><span style="color:#C3E88D;">#SERVER.LOAD1#</span><span style="color:#A6ACCD;">\\"</span><span style="color:#C3E88D;">,</span><span style="color:#A6ACCD;">\\"</span><span style="color:#C3E88D;">#SERVER.LOAD5#</span><span style="color:#A6ACCD;">\\"</span><span style="color:#C3E88D;">,</span><span style="color:#A6ACCD;">\\"</span><span style="color:#C3E88D;">#SERVER.LOAD15#</span><span style="color:#A6ACCD;">\\"\\n\\n</span></span>
|
||
<span class="line"><span style="color:#C3E88D;">## [点击访问面板](https://你的面板域名)</span><span style="color:#A6ACCD;">\\n\\n</span></span>
|
||
<span class="line"><span style="color:#C3E88D;"></span><span style="color:#89DDFF;">"</span></span>
|
||
<span class="line"><span style="color:#89DDFF;">}</span></span></code></pre></div><p><img src="https://github.com/iilemon/nezhahq.github.io/blob/main/docs/images/photo_2023-03-16_00-22-47a.jpg?raw=true" alt="展示"></p></details><h3 id="wxpusher-示例" tabindex="-1">wxpusher 示例 <a class="header-anchor" href="#wxpusher-示例" aria-label="Permalink to "wxpusher 示例""></a></h3><p><strong>需要提前关注你的应用</strong></p><details><summary>点击展开/收起</summary><ul><li>名称: wxpusher</li><li>URL:<a href="http://wxpusher.zjiecode.com/api/send/message" target="_blank" rel="noreferrer">http://wxpusher.zjiecode.com/api/send/message</a></li><li>请求方式: POST</li><li>请求类型: JSON</li><li>Body: <code>{"appToken":"你的appToken","topicIds":[],"content":"#NEZHA#","contentType":"1","uids":["你的uid"]}</code></li></ul></details><h3 id="telegram-示例-贡献者-haitau" tabindex="-1">Telegram 示例 贡献者:<a href="https://github.com/haitau" target="_blank" rel="noreferrer">@haitau</a> <a class="header-anchor" href="#telegram-示例-贡献者-haitau" aria-label="Permalink to "Telegram 示例 贡献者:[@haitau](https://github.com/haitau)""></a></h3><details><summary>点击展开/收起</summary><ul><li>名称:telegram 机器人消息通知</li><li>URL:<a href="https://api.telegram.org/botXXXXXX/sendMessage?chat_id=YYYYYY&text=#NEZHA#" target="_blank" rel="noreferrer">https://api.telegram.org/botXXXXXX/sendMessage?chat_id=YYYYYY&text=#NEZHA#</a></li><li>请求方式: GET</li><li>请求类型: 默认</li><li>Body: 空</li><li>URL 参数获取说明:botXXXXXX 中的 XXXXXX 是在 telegram 中关注官方 @Botfather ,输入/newbot ,创建新的机器人(bot)时,会提供的 token(在提示 Use this token to access the HTTP API:后面一行)这里 'bot' 三个字母不可少。创建 bot 后,需要先在 telegram 中与 BOT 进行对话(随便发个消息),然后才可用 API 发送消息。YYYYYY 是 telegram 用户的数字 ID。与机器人@userinfobot 对话可获得。</li></ul></details><h3 id="邮件通知示例-sendcloud-贡献者-白歌" tabindex="-1">邮件通知示例 - SendCloud 贡献者:<a href="https://github.com/cantoblanco" target="_blank" rel="noreferrer">@白歌</a> <a class="header-anchor" href="#邮件通知示例-sendcloud-贡献者-白歌" aria-label="Permalink to "邮件通知示例 - SendCloud 贡献者:[@白歌](https://github.com/cantoblanco)""></a></h3><details><summary>点击展开/收起</summary><p><strong>注意:SendCloud 有每日免费发送邮件限额限制,这里仅作示例,你可以选择付费服务或其他类似的免费服务,使用方法类似。</strong></p><ul><li>名称:邮件告警</li><li>URL:<a href="https://api.sendcloud.net/apiv2/mail/send?apiUser=" target="_blank" rel="noreferrer">https://api.sendcloud.net/apiv2/mail/send?apiUser=</a><替换APIUSER>apiKey=<替换APIKEY>&from=<自定义发件邮箱>&fromName=Nezha&to=<自定义收件邮箱>&subject=Nezha-Notification&html=#NEZHA#</li><li>请求方式: POST</li><li>请求类型: JSON</li><li>Header: 留空</li><li>Body: 留空</li></ul><p>URL 参数获取说明:此方式需提前在 <a href="https://www.sendcloud.net/" target="_blank" rel="noreferrer">SendCloud</a> 注册账号,创建发件邮箱,然后在<a href="https://www.sendcloud.net/sendSetting/apiuser" target="_blank" rel="noreferrer">这里</a>获取 APIUSER 和 APIKEY,替换 URL 中的 <替换APIUSER> 和 <替换APIKEY> 为自己的 APIUSER 和 APIKEY,替换 URL 中的 <自定义发件邮箱> 和 <自定义收件邮箱> 为自己的发件邮箱和收件邮箱。</p></details><h3 id="钉钉群机器人配置-示例" tabindex="-1">钉钉群机器人配置 示例 <a class="header-anchor" href="#钉钉群机器人配置-示例" aria-label="Permalink to "钉钉群机器人配置 示例""></a></h3><details><summary>点击展开/收起</summary><ul><li>名称: 哪吒探针小跟班</li><li>URL:<a href="https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxxxxxxxxxx" target="_blank" rel="noreferrer">https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxxxxxxxxxx</a></li><li>请求方式: POST</li><li>请求类型: JSON</li><li>Header: <code>{"Content-Type": "application/json"}</code></li><li>Body: <code>{"msgtype": "text","text": {"content":"哪吒探针:\\n#NEZHA#"}}</code></li><li>URL 参数获取说明:机器人URL在钉钉群-管理机器人-创建机器人后获取,安全方式选择自定义关键词,Body中content中需包含该关键词</li></ul></details><h3 id="企业微信-群机器人-示例-贡献者-chowrex" tabindex="-1">企业微信 群机器人 示例 贡献者:<a href="https://github.com/ChowRex" target="_blank" rel="noreferrer">@ChowRex</a> <a class="header-anchor" href="#企业微信-群机器人-示例-贡献者-chowrex" aria-label="Permalink to "企业微信 群机器人 示例 贡献者:[@ChowRex](https://github.com/ChowRex)""></a></h3><details><summary>点击展开/收起</summary><p>支持的占位符一览</p><div class="language-json"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#89DDFF;">{</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">content</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#NEZHA#</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">ServerName</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#SERVER.NAME#</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">ServerIP</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#SERVER.IP#</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">ServerIPV4</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#SERVER.IPV4#</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">ServerIPV6</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#SERVER.IPV6#</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">CPU</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#SERVER.CPU#</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">MEM</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#SERVER.MEM#</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">SWAP</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#SERVER.SWAP#</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">DISK</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#SERVER.DISK#</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">NetInSpeed</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#SERVER.NETINSPEED#</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">NetOutSpeed</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#SERVER.NETOUTSPEED#</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">TransferIn</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#SERVER.TRANSFERIN#</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">TranferOut</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#SERVER.TRANSFEROUT#</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">Load1</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#SERVER.LOAD1#</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">Load5</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#SERVER.LOAD5#</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">Load15</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#SERVER.LOAD15#</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">TCP_CONN_COUNT</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#SERVER.TCPCONNCOUNT</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span><span style="color:#A6ACCD;"> # 无效</span></span>
|
||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">UDP_CONN_COUNT</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">#SERVER.UDPCONNCOUNT</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span><span style="color:#A6ACCD;"> # 无效</span></span>
|
||
<span class="line"><span style="color:#89DDFF;">}</span></span></code></pre></div><blockquote><p><a href="https://developer.work.weixin.qq.com/document/path/91770#markdown%E7%B1%BB%E5%9E%8B" target="_blank" rel="noreferrer">群机器人配置说明 - 文档 - 企业微信开发者中心</a></p></blockquote><ul><li><p>名称:企业微信群机器人</p></li><li><p>URL:<a href="https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=YOUR_BOT_KEY" target="_blank" rel="noreferrer">https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=YOUR_BOT_KEY</a></p></li><li><p>请求方式: POST</p></li><li><p>请求类型: JSON</p></li><li><p>Body:</p><pre><code>\`\`\`json
|
||
{
|
||
"msgtype": "markdown",
|
||
"markdown": {
|
||
"content": "# 哪吒通知消息\\n\\n\\"#NEZHA#\\"\\n\\n> 名称: \\"#SERVER.NAME#\\"\\n> IP: \\"#SERVER.IP#\\"\\n> IPv4: \\"#SERVER.IPV4#\\"\\n> IPv6: \\"#SERVER.IPV6#\\"\\n> CPU: \\"#SERVER.CPU#\\"\\n> 内存: \\"#SERVER.MEM#\\"\\n> 交换分区: \\"#SERVER.SWAP#\\"\\n> 存储: \\"#SERVER.DISK#\\"\\n> 实时上传速度: \\"#SERVER.NETINSPEED#\\"\\n> 实时下载速度: \\"#SERVER.NETOUTSPEED#\\"\\n> 总上传: \\"#SERVER.TRANSFERIN#\\"\\n> 总下载: \\"#SERVER.TRANSFEROUT#\\"\\n> 1分钟内负载: \\"#SERVER.LOAD1#\\"\\n> 5分钟内负载: \\"#SERVER.LOAD5#\\"\\n> 15分钟内负载: \\"#SERVER.LOAD15#\\"\\n> TCP连接数: \\"#SERVER.TCPCONNCOUNT\\"\\n> UDP连接数: \\"#SERVER.UDPCONNCOUNT\\"\\n\\n"
|
||
}
|
||
}
|
||
\`\`\`
|
||
|
||
根据需求删减相关内容信息即可
|
||
</code></pre></li></ul><p><img src="https://user-images.githubusercontent.com/30169860/223605620-eac53ee6-09f9-4583-94fa-9b0cdedba81c.png" alt="通知效果"></p></details><h3 id="飞书群机器人配置-示例-贡献者-eya46" tabindex="-1">飞书群机器人配置 示例 贡献者:<a href="https://github.com/eya46" target="_blank" rel="noreferrer">@eya46</a> <a class="header-anchor" href="#飞书群机器人配置-示例-贡献者-eya46" aria-label="Permalink to "飞书群机器人配置 示例 贡献者:[@eya46](https://github.com/eya46)""></a></h3><details><summary>点击展开/收起</summary><ul><li>名称: 哪吒面板Bot</li><li>URL:<a href="https://open.feishu.cn/open-apis/bot/v2/hook/xxxxxxxxxxxxxxxxx" target="_blank" rel="noreferrer">https://open.feishu.cn/open-apis/bot/v2/hook/xxxxxxxxxxxxxxxxx</a></li><li>请求方式: POST</li><li>请求类型: JSON</li><li>Body: <code>{"content":{"text":"#NEZHA#\\n#DATETIME#"},"msg_type":"text"}</code></li><li>URL 参数获取说明:机器人URL通过飞书群-群机器人-添加机器人-自定义机器人(webhook)创建后获取</li></ul></details><br><br><h2 id="告警规则说明" tabindex="-1">告警规则说明 <a class="header-anchor" href="#告警规则说明" aria-label="Permalink to "告警规则说明""></a></h2><h3 id="基本规则" tabindex="-1">基本规则 <a class="header-anchor" href="#基本规则" aria-label="Permalink to "基本规则""></a></h3><ul><li>type:可选取一个或多个类型,如在一个规则中选择了多个类型,需要<strong>同时满足</strong>所有选择的类型才会触发通知(可参考后面的示例) <ul><li><code>cpu</code>、<code>memory</code>、<code>swap</code>、<code>disk</code></li><li><code>net_in_speed</code> 入站网速、<code>net_out_speed</code> 出站网速、<code>net_all_speed</code> 双向网速、<code>transfer_in</code> 入站流量、<code>transfer_out</code> 出站流量、<code>transfer_all</code> 双向流量</li><li><code>offline</code> 离线监控</li><li><code>load1</code>、<code>load5</code>、<code>load15</code> 负载</li><li><code>process_count</code> 进程数 <em>目前取线程数占用资源太多,暂时不支持</em></li><li><code>tcp_conn_count</code>、<code>udp_conn_count</code> 连接数</li></ul></li><li>duration:持续数秒,数秒内采样记录 30% 以上触发阈值才会告警(防数据插针)</li><li>min 或 max: <ul><li>流量、网速类数值 为字节(1KB=1024B,1MB = 1024*1024B)</li><li>内存、硬盘、CPU 以占用百分比计数</li><li>离线监控无需设置此项</li></ul></li><li>cover: <ul><li><code>0</code> 监控所有,通过 <code>ignore</code> 忽略特定服务器</li><li><code>1</code> 忽略所有,通过 <code>ignore</code> 监控特定服务器<br> 例如:<code>[{"type":"offline","duration":10, "cover":0, "ignore":{"5": true}}]</code></li></ul></li><li>ignore: 选择忽略特定服务器,搭配 <code>cover</code> 使用,内容为服务器 id 和布尔值,例如:<code>{"1": true, "2":false}</code></li></ul><p><strong>完整示例:</strong></p><blockquote><blockquote><p>添加一个离线告警</p></blockquote><ul><li>名称:离线通知</li><li>规则:<code>[{"Type":"offline","Duration":10}]</code></li><li>启用:√</li></ul></blockquote><blockquote><blockquote><p>添加一个监控 CPU 持续 10s 超过 50% <strong>且</strong> 内存持续 20s 占用低于 20% 的告警</p></blockquote><ul><li>名称:CPU+内存</li><li>规则:<code>[{"Type":"cpu","Min":0,"Max":50,"Duration":10},{"Type":"memory","Min":20,"Max":0,"Duration":20}]</code></li><li>启用:√</li></ul></blockquote><blockquote><blockquote><p>将特定的服务器通知发送到特定的通知分组</p></blockquote><p>示例场景:<br> 你有 1、2、3、4 四台服务器和 A、B 两个不同的通知组<br> 1、2 这两台服务器掉线十分钟后给通知组 A 发送通知<br> 3、4 这两台服务器掉线十分钟后给通知组 B 发送通知</p><p>首先你需要先设置好 A、B 两个通知组,然后添加两条告警规则:</p><p><strong>规则一:</strong></p><ul><li>名称:1、2 离线,发送给通知组 A</li><li>规则:<code>[{"type":"offline","duration":600,"cover":1,"ignore":{"1":true,"2":true}}]</code></li><li>通知方式组: A</li><li>启用:√</li></ul><p><strong>规则二:</strong></p><ul><li>名称:3、4 离线,发送给通知组 B</li><li>规则:<code>[{"type":"offline","duration":600,"cover":1,"ignore":{"3":true,"4":true}}]</code></li><li>通知方式组: B</li><li>启用:√</li></ul></blockquote><p><strong>灵活使用参数可以让你的告警功能被充分使用</strong></p><br><h3 id="特殊-任意周期流量告警" tabindex="-1">特殊:任意周期流量告警 <a class="header-anchor" href="#特殊-任意周期流量告警" aria-label="Permalink to "特殊:任意周期流量告警""></a></h3><p>可以用作月流量告警</p><ul><li>type: <ul><li><code>transfer_in_cycle</code> 周期内的入站流量</li><li><code>transfer_out_cycle</code> 周期内的出站流量</li><li><code>transfer_all_cycle</code> 周期内双向流量和</li></ul></li><li>cycle_start: 统计周期开始日期(可以是你机器计费周期的开始日期),时间格式为RFC3339,例如北京时间为<code>2022-01-11T08:00:00.00+08:00</code></li><li>cycle_interval:每隔多少个周期单位(例如,周期单位为天,该值为 7,则代表每隔 7 天统计一次)</li><li>cycle_unit 统计周期单位,默认<code>hour</code>,可选(<code>hour</code>, <code>day</code>, <code>week</code>, <code>month</code>, <code>year</code>)</li><li>min/max、cover、ignore 参考基本规则配置</li></ul><blockquote><p>示例:</p><blockquote><p>ID 为 3 和 4 的服务器(ignore 里面定义),以每月 1 号为统计周期,周期内统计的出站月流量达到 1TB 时告警</p></blockquote><p><code>[{"type":"transfer_out_cycle","max":1099511627776,"cycle_start":"2022-01-01T00:00:00+08:00","cycle_interval":1,"cycle_unit":"month","cover":1,"ignore":{"3":true,"4":true}}]</code></p></blockquote><h2 id="通知触发模式" tabindex="-1">通知触发模式 <a class="header-anchor" href="#通知触发模式" aria-label="Permalink to "通知触发模式""></a></h2><ul><li>始终触发:每当 Agent 上报的状态符合告警的规则时,都会触发一次通知</li><li>单次触发:仅状态改变时触发一次通知,如从正常状态改变为异常状态,或异常状态恢复为正常状态</li></ul><h2 id="设置告警时执行任务" tabindex="-1">设置告警时执行任务 <a class="header-anchor" href="#设置告警时执行任务" aria-label="Permalink to "设置告警时执行任务""></a></h2><p>如果你需要在发出告警消息的同时执行某项任务,可以设置此项目</p><ul><li><code>告警时触发任务</code> 当告警状态符合从“正常”变更为“事件”时,所要执行的任务,任务应提前在任务页设置</li><li><code>恢复时触发任务</code> 当告警状态符合从“事件”恢复为“正常”时,所要执行的任务,任务应提前在任务页设置</li></ul>`,41),n=[e];function p(r,c,u,i,D,q){return s(),t("div",null,n)}const F=o(a,[["render",p]]);export{d as __pageData,F as default};
|