deploy: 26cb183d68
This commit is contained in:
1 parent
5b73d93bb4
commit
307b1394ff
209 files changed
+371
-343
No files matched your search
@@ -12,7 +12,7 @@
|
||||
<link rel="preload" href="/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin="">
|
||||
<link rel="modulepreload" href="/assets/chunks/framework.BmdFiWrL.js">
|
||||
<link rel="modulepreload" href="/assets/chunks/theme.D1TJKLdg.js">
|
||||
<link rel="modulepreload" href="/assets/guide_notifications.md.DIocKDc1.lean.js">
|
||||
<link rel="modulepreload" href="/assets/guide_notifications.md.DYN_LdB2.lean.js">
|
||||
<script src="https://cdn.wwads.cn/js/makemoney.js" async></script>
|
||||
<script async src="https://www.googletagmanager.com/gtag/js?id=G-FDME8GJGTW"></script>
|
||||
<script>window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments)}gtag("js",new Date),gtag("config","G-FDME8GJGTW");</script>
|
||||
@@ -49,8 +49,15 @@
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> "markdown"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: {</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> "content"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"# 哪吒通知消息</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\n\n\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">#NEZHA#</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"\n\n</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">> 名称: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">#SERVER.NAME#</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"\n</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">> IP: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">#SERVER.IP#</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"\n</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">> IPv4: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">#SERVER.IPV4#</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"\n</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">> IPv6: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">#SERVER.IPV6#</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"\n</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">> CPU: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">#SERVER.CPU#</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"\n</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">> 内存: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">#SERVER.MEM#</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"\n</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">> 交换分区: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">#SERVER.SWAP#</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"\n</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">> 存储: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">#SERVER.DISK#</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"\n</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">> 实时上传速度: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">#SERVER.NETINSPEED#</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"\n</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">> 实时下载速度: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">#SERVER.NETOUTSPEED#</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"\n</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">> 总上传: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">#SERVER.TRANSFERIN#</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"\n</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">> 总下载: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">#SERVER.TRANSFEROUT#</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"\n</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">> 1分钟内负载: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">#SERVER.LOAD1#</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"\n</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">> 5分钟内负载: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">#SERVER.LOAD5#</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"\n</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">> 15分钟内负载: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:Line truncated
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> }</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div></li></ul><p>根据需求删减相关内容信息即可。</p><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><h4 id="url-参数获取说明-4" tabindex="-1">URL 参数获取说明 <a class="header-anchor" href="#url-参数获取说明-4" aria-label="Permalink to "URL 参数获取说明""></a></h4><p>机器人 URL 通过飞书群 - 群机器人 - 添加机器人 - 自定义机器人(webhook)创建后获取。</p><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></ul></details><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><code>type</code>:可选取一个或多个类型,如在一个规则中选择了多个类型,需要<strong>同时满足</strong>所有选择的类型才会触发通知(可参考后面的示例) <ul><li><code>cpu</code>、<code>gpu</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> 进程数(目前取线程数占用资源太多,暂时不支持)</li><li><code>tcp_conn_count</code>、<code>udp_conn_count</code> 连接数</li><li><code>temperature_max</code> 最高温度值</li></ul></li><li><code>duration</code>:持续数秒,数秒内采样记录 30% 以上触发阈值才会告警(防数据插针)</li><li><code>min</code> 或 <code>max</code>: <ul><li>流量、网速类单位为字节(1KB=1024B,1MB=1024*1024B)</li><li>内存、硬盘、CPU 以占用百分比计数</li><li>离线监控无需设置此项</li></ul></li><li><code>cover</code>: <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><code>ignore</code>:选择忽略特定服务器,搭配 <code>cover</code> 使用,内容为服务器 ID 和布尔值,例如:<code>{"1": true, "2": false}</code></li></ul><p><strong>完整示例:</strong></p><p>添加一个离线告警:</p><ul><li>名称:离线通知</li><li>规则:<code>[{"Type":"offline","Duration":10}]</code></li><li>启用:√</li></ul><p>添加一个监控 CPU 持续 10 秒超过 50% <strong>且</strong> 内存持续 20 秒占用低于 20% 的告警:</p><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><p>将特定的服务器通知发送到特定的通知分组:</p><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"Line truncated
|
||||
<script>window.__VP_HASH_MAP__=JSON.parse("{\"case_index.md\":\"CIPGssEY\",\"case_case2.md\":\"BHooyMHJ\",\"developer_index.md\":\"CtlgRf1T\",\"en_us_case_case1.md\":\"BDRfjeIE\",\"en_us_guide_q6.md\":\"OLj4nUDe\",\"en_us_guide_q5.md\":\"BkvCmGgH\",\"en_us_guide_tasks.md\":\"XjHYAytW\",\"en_us_developer_theme.md\":\"Dc6WNAax\",\"en_us_case_index.md\":\"B9-7p7w3\",\"en_us_guide_agentq.md\":\"4-3lQrd1\",\"guide_api.md\":\"CRsM_OGI\",\"en_us_guide_q8.md\":\"hXJ8l9rT\",\"en_us_guide_q3.md\":\"ZKLoxJrT\",\"case_case6.md\":\"BkvGgucG\",\"en_us_case_case4.md\":\"CdBt3EDi\",\"case_case1.md\":\"DfKmMCRV\",\"guide_agent.md\":\"DJdSDXIe\",\"en_us_case_case7.md\":\"xf-nQtI4\",\"en_us_case_case5.md\":\"DAUbXLs9\",\"en_us_guide_dashboard.md\":\"B5MyjxvY\",\"guide_dashboard.md\":\"BRdyXZ2m\",\"en_us_guide_notifications.md\":\"Bd0Aq9ST\",\"en_us_guide_loginq.md\":\"oD3gls1x\",\"case_case7.md\":\"BWBTlLRV\",\"en_us_developer_index.md\":\"DmXLF2gn\",\"guide_q10.md\":\"BSu9uqI3\",\"en_us_guide_nat.md\":\"DBg_L-oY\",\"en_us_developer_l10n.md\":\"_vZMsGZx\",\"guide_q4.md\":\"Cpad8THN\",\"en_us_guide_services.md\":\"Cup_mtjx\",\"guide_q8.md\":\"Dnj4nJVX\",\"guide_nat.md\":\"Czxs6hwG\",\"guide_notifications.md\":\"DIocKDc1\",\"guide_servers.md\":\"D9nceLKt\",\"en_us_guide_agent.md\":\"DEEcSMaj\",\"en_us_guide_q9.md\":\"i0YSKods\",\"en_us_guide_dashboardq.md\":\"z7GQZaBQ\",\"en_us_guide_servers.md\":\"BtulAIwY\",\"guide_q5.md\":\"DEmm1r4q\",\"en_us_guide_q11.md\":\"Dn3w_vx2\",\"en_us_guide_q2.md\":\"DeW_Ql3t\",\"en_us_case_case2.md\":\"C54I1Lal\",\"en_us_index.md\":\"D-Ti1zB0\",\"guide_q6.md\":\"DBzcEoWm\",\"guide_q7.md\":\"Bf535GdZ\",\"case_case4.md\":\"_VvvPLBN\",\"en_us_guide_q7.md\":\"DoD-zhCJ\",\"guide_q9.md\":\"BAub8nGU\",\"guide_agentq.md\":\"62Pu_VIp\",\"en_us_case_case6.md\":\"GtJ0MMcW\",\"case_case5.md\":\"DEc7uIL4\",\"en_us_guide_q10.md\":\"DsTBi1P4\",\"case_case3.md\":\"CAdKgOmj\",\"guide_dashboardq.md\":\"ByGgzhgL\",\"guide_q2.md\":\"B2uGU2Ni\",\"developer_theme.md\":\"1XX6ruOl\",\"guide_services.md\":\"Dl37SOQc\",\"en_us_guide_q4.md\":\"CQOaF8R7\",\"en_us_case_case3.md\":\"IbUrUZ_z\",\"guide_q3.md\":\"CVYXQZEq\",\"developer_l10n.md\":\"DOdZZlM1\",\"guide_tasks.md\":\"DTbJMQAA\",\"en_us_guide_api.md\":\"Bmm7Pyig\",\"guide_settings.md\":\"DHfH0R7Q\",\"index.md\":\"CR9V_8Ka\",\"en_us_guide_settings.md\":\"5ox7Snrd\",\"guide_loginq.md\":\"CG6LCBEf\",\"guide_q1.md\":\"DUmLWsqm\",\"guide_q11.md\":\"BW3Qomql\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"zh-CN\",\"dir\":\"ltr\",\"title\":\"VitePress\",\"description\":\"A VitePress site\",\"base\":\"/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24,\"alt\":\"NezhaLogo\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/nezhahq/nezhahq.github.io\"},{\"icon\":{\"svg\":\"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 496 512\\\"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d=\\\"M248 8C111 8 0 119 0 256S111 504 248 504 496 393 496 256 385 8 248 8zM363 176.7c-3.7 39.2-19.9 134.4-28.1 178.3-3.5 18.6-10.3 24.8-16.9 25.4-14.4 1.3-25.3-9.5-39.3-18.7-21.8-14.3-34.2-23.2-55.3-37.2-24.5-16.1-8.6-25 5.3-39.5 3.7-3.8 67.1-61.5 68.3-66.7 .2-.7 .3-3.1-1.2-4.4s-3.6-.8-5.1-.5q-3.3 .7-104.6 69.1-14.8 10.2-26.9 9.9c-8.9-.2-25.9-5-38.6-9.1-15.5-5-27.9-7.7-26.8-16.3q.8-6.7 18.5-13.7 108.4-47.2 144.6-62.3c68.9-28.6 83.2-33.6 92.5-33.8 2.1 0 6.6 .5 9.6 2.9a10.5 10.5 0 0 1 3.5 6.7A43.8 43.8 0 0 1 363 176.7z\\\"/></svg>\"},\"link\":\"https://t.me/nezhanews\"}],\"search\":{\"provider\":\"algolia\",\"options\":{\"appId\":\"HP6QF6KMZD\",\"apiKey\":\"fb8bae9ed373d1057e0c07fcf32b3f1a\",\"indexName\":\"nezhahq\",\"locales\":{\"root\":{\"placeholder\":\"搜索文档\",\"translations\":{\"button\":{\"buttonText\":\"搜索文档\",\"buttonAriaLabel\":\"搜索文档\"},\"modal\":{\"searchBox\":{\"resetButtonTitle\":\"清除查询条件\",\"resetButtonAriaLabel\":\"清除查询条件\",\"cancelButtonText\":\"取消\",\"cancelButtonAriaLabel\":\"取消\"},\"startScreen\":{\"recentSearchesTitle\":\"搜索历史\",\"noRecentSearchesText\":\"没有搜索历史\",\"saveRecentSearchButtonTitle\":\"保存至搜索历史\",\"removeRecentSearchButtonTitle\":\"从搜索历史中移除\",\"favoriteSearchesTitle\":\"收藏\",\"removeFavoriteSearchButtonTitle\":\"从收藏中移除\"},\"errorScreen\":{\"titleText\":\"无法获取结果\",\"helpText\":\"你可能需要检查你的网络连接\"},\"footer\":{\"selectText\":\"选择\",\"navigateText\":\"切换\",\"closeText\":\"关闭\",\"searchByText\":\"搜索提供者\"},\"noResultsScreen\":{\"noResultsText\":\"无法找到相关结果\",\"suggestedQueryText\":\"你可以尝试查询\",\"reportMissingResultsText\":\"你认为该查询应该有结果?\",\"reportMissingResultsLinkText\":\"点击反馈\"}}}}}}},\"footer\":{Line truncated
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div></li></ul><p>根据需求删减相关内容信息即可。</p><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><h4 id="url-参数获取说明-4" tabindex="-1">URL 参数获取说明 <a class="header-anchor" href="#url-参数获取说明-4" aria-label="Permalink to "URL 参数获取说明""></a></h4><p>机器人 URL 通过飞书群 - 群机器人 - 添加机器人 - 自定义机器人(webhook)创建后获取。</p><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></ul></details><h3 id="matrix-通知示例" tabindex="-1">Matrix 通知示例 <a class="header-anchor" href="#matrix-通知示例" aria-label="Permalink to "Matrix 通知示例""></a></h3><details><summary>点击展开/收起</summary><h4 id="参数说明" tabindex="-1">参数说明 <a class="header-anchor" href="#参数说明" aria-label="Permalink to "参数说明""></a></h4><ul><li>以 <code>$</code> 开头的大写变量都需要替换为你的实际值。 <ul><li><strong><code>YOUR_HOME_SERVER</code></strong>: Matrix 服务器的地址。</li><li><strong><code>YOUR_NEZHA_URL</code></strong>: 你的哪吒面板的 URL。</li><li><strong><code>YOUR_MATRIX_USERNAME</code></strong> 和 <strong><code>YOUR_MATRIX_PASSWD</code></strong>: Matrix 用户名和密码。</li><li><strong><code>YOUR_MATRIX_TOKEN</code></strong> 获取方式:<div class="language-sh vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">sh</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">curl</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -XPOST</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -d</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> '{"type": "m.login.password", "identifier": {"user": "$YOUR_MATRIX_USERNAME", "type": "m.id.user"}, "password": "$YOUR_MATRIX_PASSWD"}'</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> "https://</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">$YOUR_HOME_SERVER</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">/_matrix/client/r0/login"</span></span></code></pre></div></li></ul></li></ul><h4 id="请求配置" tabindex="-1">请求配置 <a class="header-anchor" href="#请求配置" aria-label="Permalink to "请求配置""></a></h4><ul><li><strong>名称</strong>: Matrix</li><li><strong>URL</strong>: <code>https://$YOUR_HOME_SERVER/_matrix/client/r0/rooms/$ROOM_ID/send/m.room.message</code></li><li><strong>请求方式</strong>: <code>POST</code></li><li><strong>请求类型</strong>: <code>JSON</code></li><li><strong>Header</strong>:<div class="language-json vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> "Authorization"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"Bearer $YOUR_MATRIX_TOKEN"</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div></li><li><strong>Body</strong>:<div class="language-json vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> "msgtype"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"m.text"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> "format"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"org.matrix.custom.html"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> "formatted_body"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"<html><head><title>Nezha Dashboard</title></head><body><h1><a href=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">$YOUR_NEZHA_URL</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> target=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">_blank</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">\"</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">>Nezha Dashboard</a></h1><ul><li>datetime: #DATETIME#</li><li>Message: #NEZHA#</li></ul></body></html>"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> "body"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"#NEZHA#"</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div></li></ul><h4 id="使用步骤" tabindex="-1">使用步骤 <a class="header-anchor" href="#使用步骤" aria-label="Permalink to "使用步骤""></a></h4><ol><li><strong>替换变量</strong>: 将 <code>$YOUR_HOME_SERVER</code>, <code>$YOUR_NEZHA_URL</code>, <code>$YOUR_MATRIX_USERNAME</code>, <code>$YOUR_MATRIX_PASSWD</code>, 以及 <code>$YOUR_MATRIX_TOKEN</code> 替换为你自己的值。</li><li><strong>获取 Token</strong>: 使用上面提供的 <code>curl</code> 命令来获取 <code>YOUR_MATRIX_TOKEN</code>,确保替换所有相关的变量。</li><li><strong>配置请求</strong>: 使用上述配置来设置你的请求,确保使用正确的 URL、请求头和请求体。</li><li><strong>发送通知</strong>: 通过配置后的请求发送 Matrix 消息,完成哪吒监控的通知集成。</li></ol><p>这样设置好后,每次触发通知时,你的 Matrix 房间中就会收到格式化的哪吒面板信息。</p></details><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><code>type</code>:可选取一个或多个类型,如在一个规则中选择了多个类型,需要<strong>同时满足</strong>所有选择的类型才会触发通知(可参考后面的示例) <ul><li><code>cpu</code>、<code>gpu</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> 进程数(目前取线程数占用资源太多,暂时不支持)</li><li><code>tcp_conn_count</code>、<code>udp_conn_count</code> 连接数</li><li><code>temperature_max</code> 最高温度值</li></ul></li><li><code>duration</code>:持续数秒,数秒内采样记录 30% 以上触发阈值才会告警(防数据插针)</li><li><code>min</code> 或 <code>max</code>: <ul><li>流量、网速类单位为字节(1KB=1024B,1MB=1024*1024B)</li><li>内存、硬盘、CPU 以占用百分比计数</li><li>离线监控无需设置此项</li></ul></li><li><code>cover</code>: <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><code>ignore</code>:选择忽略特定服务器,搭配 <code>cover</code> 使用,内容为服务器 ID 和布尔值,例如:<code>{"1": true, "2": false}</code></li></ul><p><strong>完整示例:</strong></p><p>添加一个离线告警:</p><ul><li>名称:离线通知</li><li>规则:<code>[{"Type":"offline","Duration":10}]</code></li><li>启用:√</li></ul><p>添加一个监控 CPU 持续 10 秒超过 50% <strong>且</strong> 内存持续 20 秒占用低于 20% 的告警:</p><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><p>将特定的服务器通知发送到特定的通知分组:</p><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><p><strong>Line truncated
|
||||
<script>window.__VP_HASH_MAP__=JSON.parse("{\"developer_index.md\":\"BxHPGI4D\",\"developer_l10n.md\":\"BXKiVAed\",\"en_us_case_case3.md\":\"i5w3qiCe\",\"en_us_case_case2.md\":\"B5ew0MAj\",\"en_us_guide_agent.md\":\"eLGrY1b1\",\"en_us_case_case6.md\":\"i9Dyurwq\",\"guide_nat.md\":\"D3Wi3iDN\",\"en_us_case_case5.md\":\"DGiMAHZr\",\"case_case2.md\":\"uWaImfP5\",\"case_case1.md\":\"Cy-fj0KG\",\"case_case4.md\":\"D3OIw7rR\",\"en_us_case_index.md\":\"BQhUGfPN\",\"en_us_case_case7.md\":\"COy08vvv\",\"developer_theme.md\":\"CBNDJrhp\",\"guide_q10.md\":\"DmCS0p_V\",\"en_us_developer_index.md\":\"CKNI60FK\",\"en_us_guide_q4.md\":\"DdZdNi_N\",\"en_us_developer_l10n.md\":\"B4KyXnVw\",\"en_us_guide_nat.md\":\"CaHPz97h\",\"guide_q1.md\":\"CvYW_nrh\",\"en_us_guide_q5.md\":\"ChJ6wB6R\",\"en_us_developer_theme.md\":\"BTp8bKqD\",\"en_us_guide_loginq.md\":\"gjVvg0fB\",\"guide_dashboard.md\":\"D5aT48Vj\",\"case_case3.md\":\"jjw6EPXz\",\"en_us_guide_q7.md\":\"APtby8ZA\",\"en_us_guide_q8.md\":\"mEJq9arg\",\"en_us_guide_services.md\":\"UdqHU2eY\",\"en_us_guide_q9.md\":\"ChDyXv2S\",\"en_us_guide_agentq.md\":\"XAZgZFB0\",\"en_us_guide_api.md\":\"nmBhgcw3\",\"case_case7.md\":\"DBKz_Vxe\",\"index.md\":\"B-1w-4-C\",\"en_us_case_case4.md\":\"BitHPJB9\",\"guide_tasks.md\":\"dCoTQlJG\",\"guide_api.md\":\"B4Y59-mI\",\"guide_agentq.md\":\"B3CLMKGD\",\"guide_dashboardq.md\":\"PGgMu2gV\",\"guide_servers.md\":\"CHvbs_bq\",\"guide_loginq.md\":\"BREhEvZa\",\"guide_agent.md\":\"YP61D2Sg\",\"guide_notifications.md\":\"DYN_LdB2\",\"en_us_guide_q3.md\":\"NNjIgGbh\",\"case_case6.md\":\"DdQSHal4\",\"en_us_guide_notifications.md\":\"DzEMZ4fM\",\"en_us_guide_q11.md\":\"C4WENyG_\",\"en_us_guide_q2.md\":\"Bjwldk7H\",\"en_us_case_case1.md\":\"Dh22iL0h\",\"en_us_guide_q10.md\":\"CwW53nPW\",\"en_us_guide_settings.md\":\"B9nzENlN\",\"en_us_guide_servers.md\":\"ttsfzdCS\",\"en_us_guide_tasks.md\":\"Bz5ATSX-\",\"en_us_guide_q6.md\":\"DgNrOFKS\",\"guide_q2.md\":\"DXfolJ9t\",\"case_index.md\":\"DSeyDNXF\",\"guide_q6.md\":\"BeVocVaB\",\"guide_q11.md\":\"BvbW4bA7\",\"guide_q4.md\":\"B7lFBkdh\",\"guide_q9.md\":\"Da6Beenw\",\"en_us_index.md\":\"DRz4-f6e\",\"case_case5.md\":\"CR61PZ8I\",\"en_us_guide_dashboard.md\":\"B7jTJxeS\",\"en_us_guide_dashboardq.md\":\"BqoM5H4p\",\"guide_q5.md\":\"C735mg_Y\",\"guide_q7.md\":\"D9qxsgnw\",\"guide_q3.md\":\"Czq_ENGT\",\"guide_q8.md\":\"D6i_20q2\",\"guide_services.md\":\"b_7Bjs4S\",\"guide_settings.md\":\"B3cshTUZ\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"zh-CN\",\"dir\":\"ltr\",\"title\":\"VitePress\",\"description\":\"A VitePress site\",\"base\":\"/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24,\"alt\":\"NezhaLogo\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/nezhahq/nezhahq.github.io\"},{\"icon\":{\"svg\":\"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 496 512\\\"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d=\\\"M248 8C111 8 0 119 0 256S111 504 248 504 496 393 496 256 385 8 248 8zM363 176.7c-3.7 39.2-19.9 134.4-28.1 178.3-3.5 18.6-10.3 24.8-16.9 25.4-14.4 1.3-25.3-9.5-39.3-18.7-21.8-14.3-34.2-23.2-55.3-37.2-24.5-16.1-8.6-25 5.3-39.5 3.7-3.8 67.1-61.5 68.3-66.7 .2-.7 .3-3.1-1.2-4.4s-3.6-.8-5.1-.5q-3.3 .7-104.6 69.1-14.8 10.2-26.9 9.9c-8.9-.2-25.9-5-38.6-9.1-15.5-5-27.9-7.7-26.8-16.3q.8-6.7 18.5-13.7 108.4-47.2 144.6-62.3c68.9-28.6 83.2-33.6 92.5-33.8 2.1 0 6.6 .5 9.6 2.9a10.5 10.5 0 0 1 3.5 6.7A43.8 43.8 0 0 1 363 176.7z\\\"/></svg>\"},\"link\":\"https://t.me/nezhanews\"}],\"search\":{\"provider\":\"algolia\",\"options\":{\"appId\":\"HP6QF6KMZD\",\"apiKey\":\"fb8bae9ed373d1057e0c07fcf32b3f1a\",\"indexName\":\"nezhahq\",\"locales\":{\"root\":{\"placeholder\":\"搜索文档\",\"translations\":{\"button\":{\"buttonText\":\"搜索文档\",\"buttonAriaLabel\":\"搜索文档\"},\"modal\":{\"searchBox\":{\"resetButtonTitle\":\"清除查询条件\",\"resetButtonAriaLabel\":\"清除查询条件\",\"cancelButtonText\":\"取消\",\"cancelButtonAriaLabel\":\"取消\"},\"startScreen\":{\"recentSearchesTitle\":\"搜索历史\",\"noRecentSearchesText\":\"没有搜索历史\",\"saveRecentSearchButtonTitle\":\"保存至搜索历史\",\"removeRecentSearchButtonTitle\":\"从搜索历史中移除\",\"favoriteSearchesTitle\":\"收藏\",\"removeFavoriteSearchButtonTitle\":\"从收藏中移除\"},\"errorScreen\":{\"titleText\":\"无法获取结果\",\"helpText\":\"你可能需要检查你的网络连接\"},\"footer\":{\"selectText\":\"选择\",\"navigateText\":\"切换\",\"closeText\":\"关闭\",\"searchByText\":\"搜索提供者\"},\"noResultsScreen\":{\"noResultsText\":\"无法找到相关结果\",\"suggestedQueryText\":\"你可以尝试查询\",\"reportMissingResultsText\":\"你认为该查询应该有结果?\",\"reportMissingResultsLinkText\":\"点击反馈\"}}}}}}},\"footer\":{Line truncated
|
||||
|
||||
</body>
|
||||
</html>
|
||||
Reference in new issue
Block a user