<?xml version="1.0" encoding="utf-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><title>HQY</title><link>https://kinber.cn/</link><description>HQY|VPS|VPN|华为|思科|H3C|DELL|VMWARE|VCENTER|ESXI</description><item><title>我把小时候那条街的街机厅，搬进了浏览器</title><link>https://kinber.cn/post/6828.html</link><description>&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;你有没有过这种时刻：&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;刷到一段《拳皇 97》的对战录像，手指跟着记忆动起来——八神的鬼步、不知火舞的扇子、一套连招打完手心出汗。你心想，就玩一把。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;然后你打开搜索引擎，下载了一个叫不出名字的模拟器压缩包，解压之后是二十几个看不懂的文件夹。你照着教程把 BIOS 放进某个目录，双击启动，黑屏。换个版本，能进去了，但手柄没反应。再装一个映射工具，键盘和手柄开始抢键位，1P 一动 2P 跟着动。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;折腾两小时，游戏没进去，耐心先没了。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; background-color: #FFF4C2; color: #1A1A1A; font-weight: 700;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;我受够了这件事，于是自己写了一个——打开网页就能玩的街机厅。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;它叫&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #6D28D9; font-weight: 700;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Allen 街机大厅&lt;/span&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;。不用装任何东西，不用找驱动，不用学配置。打开网址，登录，选游戏，开始。键盘、手柄、摇杆都能用，按键全自己说了算，还能开房间拉朋友联机。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;这篇文章，我把它是怎么做出来的、解决了哪些具体问题、以及一件我必须说清楚的事，原原本本讲一遍。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-bottom: 5px; font-family: 微软雅黑, 宋体, Arial, Helvetica, sans-serif; text-wrap: wrap;&quot;&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;section nodeleaf=&quot;&quot; style=&quot;text-align: center;&quot;&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; text-wrap: wrap; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;一句话：&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #1A1A1A; font-weight: 700;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;一个跑在浏览器里的街机厅，带后台、带会员、能建房联机。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section nodeleaf=&quot;&quot; style=&quot;text-align: center;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img js_insertlocalimg&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100003470&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261103151344_51461.png&quot; data-type=&quot;png&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;1&quot; data-ratio=&quot;0.8680555555555556&quot; data-w=&quot;1440&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261103151344_51461.png&quot; _width=&quot;440px&quot; __sec_open_place_holder__=&quot;true&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1793689939920&quot; data-report-img-idx=&quot;1&quot; data-fail=&quot;0&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.975px !important;&quot;/&gt;&lt;/section&gt;&lt;section nodeleaf=&quot;&quot; style=&quot;text-align: center;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img js_insertlocalimg&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100003469&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261103151345_75668.png&quot; data-type=&quot;png&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;2&quot; data-ratio=&quot;0.9722222222222222&quot; data-w=&quot;1440&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261103151345_75668.png&quot; _width=&quot;440px&quot; __sec_open_place_holder__=&quot;true&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1793689940388&quot; data-report-img-idx=&quot;2&quot; data-fail=&quot;0&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.987px !important;&quot;/&gt;&lt;/section&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 26px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); text-align: center; color: rgb(208, 208, 216); letter-spacing: 6px; font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;· · ·&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); margin: 30px 0px 16px; font-size: 17px; line-height: 1.5; color: rgb(26, 26, 26); border-left: 4px solid rgb(168, 85, 247); padding-left: 10px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;一、它到底是个什么&lt;/span&gt;&lt;/h2&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; color: #6D28D9; font-weight: 700;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;站点设置&lt;/span&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;——站点名、副标题、公告、维护模式、模拟器内核路径、联机信令地址，全在界面上改。还有配置的导入导出，换机器直接搬 JSON。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-bottom: 5px; font-family: 微软雅黑, 宋体, Arial, Helvetica, sans-serif; text-wrap: wrap;&quot;&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;section nodeleaf=&quot;&quot; style=&quot;text-align: center;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img js_insertlocalimg&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100003475&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261103151346_93721.png&quot; data-type=&quot;png&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;6&quot; data-ratio=&quot;1.1111111111111112&quot; data-w=&quot;1440&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261103151346_93721.png&quot; _width=&quot;440px&quot; __sec_open_place_holder__=&quot;true&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1793689972315&quot; data-report-img-idx=&quot;6&quot; data-fail=&quot;0&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.987px !important;&quot;/&gt;&lt;/section&gt;&lt;section nodeleaf=&quot;&quot; style=&quot;text-align: center;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img js_insertlocalimg&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100003478&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261103151351_90732.png&quot; data-type=&quot;png&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;7&quot; data-ratio=&quot;0.9027777777777778&quot; data-w=&quot;1440&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261103151351_90732.png&quot; _width=&quot;440px&quot; __sec_open_place_holder__=&quot;true&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1793689982469&quot; data-report-img-idx=&quot;7&quot; data-fail=&quot;0&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.987px !important;&quot;/&gt;&lt;/section&gt;&lt;section nodeleaf=&quot;&quot; style=&quot;text-align: center;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img js_insertlocalimg&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100003477&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261103151352_49732.png&quot; data-type=&quot;png&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;8&quot; data-ratio=&quot;0.7638888888888888&quot; data-w=&quot;1440&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261103151352_49732.png&quot; _width=&quot;440px&quot; __sec_open_place_holder__=&quot;true&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1793689983067&quot; data-report-img-idx=&quot;8&quot; data-fail=&quot;0&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.987px !important;&quot;/&gt;&lt;/section&gt;&lt;section nodeleaf=&quot;&quot; style=&quot;text-align: center;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img js_insertlocalimg&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100003476&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261103151353_24291.png&quot; data-type=&quot;png&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;9&quot; data-ratio=&quot;0.625&quot; data-w=&quot;1440&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261103151353_24291.png&quot; _width=&quot;440px&quot; __sec_open_place_holder__=&quot;true&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1793689983485&quot; data-report-img-idx=&quot;9&quot; data-fail=&quot;0&quot; style=&quot;height: auto !important; visibility: visible !important; width: 677px !important;&quot;/&gt;&lt;/section&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 26px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); text-align: center; color: rgb(208, 208, 216); letter-spacing: 6px; font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;· · ·&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); margin: 30px 0px 16px; font-size: 17px; line-height: 1.5; color: rgb(26, 26, 26); border-left: 4px solid rgb(168, 85, 247); padding-left: 10px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;四、联机：换了个思路，反而做成了&lt;/span&gt;&lt;/h2&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;浏览器里做联机，最容易想到的是&amp;quot;两边各跑一个模拟器，帧同步&amp;quot;。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;说实话，这条路我放弃了。&lt;/span&gt;&lt;strong style=&quot;box-sizing: border-box; color: rgb(26, 26, 26);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;真正的帧同步（rollback netplay）需要为每个模拟器内核单独实现确定性回滚&lt;/span&gt;&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，浏览器端不具备这个条件，硬做的代价是：为每一个机种单独适配，且大概率不稳定。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;我换了个更符合真实场景的思路：&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #6D28D9; font-weight: 700;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;房主权威&lt;/span&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;房主的浏览器跑模拟器，其他人的按键通过&amp;nbsp;&lt;span class=&quot;&quot; link-id=&quot;link-1793677226563-0.44728836495024293&quot;&gt;WebRTC&lt;/span&gt;&amp;nbsp;数据通道实时传给房主并注入进去，延迟通常不到 50ms；剩下的人看房主的画面直播。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;这个形态意外地贴合街机厅的真实玩法——&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #1A1A1A; font-weight: 700;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;车轮战&lt;/span&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;。房主可以一键&amp;quot;把操作权交给 TA&amp;quot;，输了换人，旁边人看直播等着上。小时候街机厅就是这个样子：一个人打，一圈人围观，输了把摇杆让给下一位。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;技术上信令通道给了三种：不配置就走浏览器本地通道（同机器多标签页可直接演示）、填一个 ws:// 地址就走自带的零依赖&lt;span class=&quot;&quot; link-id=&quot;link-1793677226563-0.33735403778739237&quot;&gt;信令服务器&lt;/span&gt;（跨设备跨网络）、或者接云服务走数据库轮询。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-bottom: 5px; font-family: 微软雅黑, 宋体, Arial, Helvetica, sans-serif; text-wrap: wrap;&quot;&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;section nodeleaf=&quot;&quot; style=&quot;text-align: center;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img js_insertlocalimg&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100003479&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261103151354_99241.png&quot; data-type=&quot;png&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;10&quot; data-ratio=&quot;0.8680555555555556&quot; data-w=&quot;1440&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261103151354_99241.png&quot; _width=&quot;440px&quot; __sec_open_place_holder__=&quot;true&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1793689984051&quot; data-report-img-idx=&quot;10&quot; data-fail=&quot;0&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.975px !important;&quot;/&gt;&lt;/section&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-bottom: 5px; font-family: 微软雅黑, 宋体, Arial, Helvetica, sans-serif; text-wrap: wrap;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 26px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); text-align: center; color: rgb(208, 208, 216); letter-spacing: 6px; font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;· · ·&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); margin: 30px 0px 16px; font-size: 17px; line-height: 1.5; color: rgb(26, 26, 26); border-left: 4px solid rgb(168, 85, 247); padding-left: 10px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;五、有件事我必须说清楚QS&lt;/span&gt;&lt;/h2&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; background-color: #FFE0E0; color: #B91C1C; font-weight: 700;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;这个程序不内置、也不分发任何商业游戏的 ROM 和 BIOS。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;一个 ROM 文件，是别人花了几年做出来的作品。把它打包进程序里分发Q，就是侵权。哪怕有人说&amp;quot;我有授权&amp;quot;，我也没法替他核实、更没法代为分发。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;所以程序里一个游戏都没有。取而代之的是一条&amp;quot;导入即玩&amp;quot;的链路：你自己合法取得的文件（比如自己买过、备份下来的卡带和基板转储，或者作者明确允许自由分发的自制游戏）拖进后台，自动识别机种、匹配内核、生成卡片。文件只存在你自己浏览器的本地存储里，不上传服务器，也不随程序分发。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;这件事让产品&amp;quot;开箱即用&amp;quot;打了折扣，我知道。但&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; background-color: #FFF4C2; color: #1A1A1A; font-weight: 700;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;有些方便是不能用别人的劳动换的。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;也正因为此，它天然适合一类用法：企业内网、展会体验区、线下街机吧、或者你自己那台放着一堆老卡带的机器——文件来源清晰，用起来才踏实。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 26px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); text-align: center; color: rgb(208, 208, 216); letter-spacing: 6px; font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;· · ·&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); margin: 30px 0px 16px; font-size: 17px; line-height: 1.5; color: rgb(26, 26, 26); border-left: 4px solid rgb(168, 85, 247); padding-left: 10px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;六、做下来最有价值的一个判断&lt;/span&gt;&lt;/h2&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;整个项目做完，回头看，最有价值的不是某个功能，而是一个取舍：&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; background-color: #FFF4C2; color: #1A1A1A; font-weight: 700;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;能配置化的，绝不写死。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;套餐、额度、权益、站点名、内核路径、信令地址……凡是运营过程中一定会变的东西，全部放进后台，界面上改。代码里只留默认值。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;代价是前期多写了不少&amp;quot;配置读写&amp;quot;的活儿。收益是：运营同学想调个价格，三十秒搞定，不用等我。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; background-color: #FFF4C2; color: #1A1A1A; font-weight: 700;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;技术人的价值，不是把需求实现一次，而是让需求下次变更的时候不需要再找你。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 26px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); text-align: center; color: rgb(208, 208, 216); letter-spacing: 6px; font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;· · ·&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); margin: 30px 0px 16px; font-size: 17px; line-height: 1.5; color: rgb(26, 26, 26); border-left: 4px solid rgb(168, 85, 247); padding-left: 10px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;七、它还差什么&lt;/span&gt;&lt;/h2&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 14px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;我不想把它吹成成品，说几个真实的边界：&lt;/span&gt;&lt;/p&gt;&lt;ul class=&quot; list-paddingleft-2&quot; style=&quot;margin-bottom: 18px; width: 774.5px; padding-left: 22px; text-wrap: wrap; box-sizing: border-box; color: rgb(51, 51, 51); font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; font-size: medium; background-color: rgb(255, 255, 255);&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;支付目前是模拟的。正式运营必须换成你自己的商户后端，&lt;/span&gt;&lt;strong style=&quot;box-sizing: border-box; color: rgb(26, 26, 26);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;在服务端校验支付成功之后再发权益&lt;/span&gt;&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，前端只负责下单展示——这一步偷懒，等于白送会员。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;账号、订单、房间现在存在浏览器本地，清缓存就没了。要正式跑，得接云端真实账号体系。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;存档读档依赖模拟器内核是否暴露接口，不支持的时候会提示用内核自带的菜单。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;跨域加载的模拟器内核读不到画布，截图和画面推流会退化；自托管内核能解决。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;后台的权限校验目前只在前端，接了服务端之后要在数据库层面再做一层。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; background-color: #FFF4C2; color: #1A1A1A; font-weight: 700;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;把半成品说成成品，是技术人最容易犯、也最不该犯的错。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 26px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); text-align: center; color: rgb(208, 208, 216); letter-spacing: 6px; font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;· · ·&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); margin: 30px 0px 16px; font-size: 17px; line-height: 1.5; color: rgb(26, 26, 26); border-left: 4px solid rgb(168, 85, 247); padding-left: 10px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;最后&lt;/span&gt;&lt;/h2&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;我做这个的初衷很小：就是想再打一把《合金弹头》，不想再装两个小时东西。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;做着做着发现，真正难的不是让游戏跑起来——那部分模拟器内核早就解决了。难的是让一个普通人从&amp;quot;想玩&amp;quot;到&amp;quot;玩上&amp;quot;之间，不要有任何一道需要查教程的坎。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; background-color: #FFF4C2; color: #1A1A1A; font-weight: 700;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;好的工具不是功能多，是让人忘记它的存在。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 18px; text-wrap: wrap; box-sizing: border-box; font-family: -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; background-color: rgb(255, 255, 255); font-size: 15px; line-height: 1.75; color: rgb(63, 63, 63); letter-spacing: 0.3px; text-align: justify;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;你小时候在游戏厅最常玩的是哪一台？评论区说说，我看看要不要给它单独做个键位预设。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-bottom: 5px; font-family: 微软雅黑, 宋体, Arial, Helvetica, sans-serif; text-wrap: wrap;&quot;&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Tue, 03 Nov 2026 15:13:34 +0800</pubDate></item><item><title>99元！闲鱼大量流出6年前政F采购平板，1080P屏、4G运存，部分还能插卡带GPS</title><link>https://kinber.cn/post/6827.html</link><description>&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;不知道有没有在关注iOS移植的情况，我看到有消息说，目前已经有项目已经攻克GPU渲染的问题，这么看来某某某真的要崛起了。&lt;/span&gt;&lt;/section&gt;&lt;p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;感觉好久没买垃圾平板来玩了，今天搜了下，闲鱼上又有新玩具了。&lt;/span&gt;&lt;/section&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;它是一家深圳的科技公司生产的，型号为---希科普 SP1099X，多由地政F教育机构采购，也常见于中国移动等定制机，由于批次不同，配置也有点差异。&lt;/span&gt;&lt;/section&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;&lt;img data-src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261102202737_83412.jpeg&quot; class=&quot;rich_pages wxw-img&quot; data-ratio=&quot;0.75&quot; data-type=&quot;webp&quot; data-w=&quot;1080&quot; data-imgfileid=&quot;100005328&quot; data-aistatus=&quot;1&quot; data-original-style=&quot;null&quot; data-index=&quot;0&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261102202737_83412.jpeg&quot; _width=&quot;677px&quot; __sec_open_place_holder__=&quot;true&quot; data-sec-load-status=&quot;2&quot; style=&quot;height: auto !important; visibility: visible !important; width: 677px !important;&quot; data-report-img-idx=&quot;0&quot; alt=&quot;图片&quot;/&gt;&lt;/span&gt;&lt;/section&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;目前闲鱼上流出来的这批机器，配置算是不错的，10.1英寸IPS大屏幕，主打护眼，分辨率为1920x1200（少数为1280x800），处理器为&lt;span class=&quot;&quot; link-id=&quot;link-1793350059944-0.9301433415297659&quot;&gt;联发科MT6762&lt;/span&gt;，4GB RAM+32GB（少数64GB）组合，安卓版本基本为Android 9，部分批次支持全网通，电池容量一般为7000mAh，所有版本支持内存卡拓展。&lt;/span&gt;&lt;/section&gt;&lt;br/&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;对了，它是Type-C口充电的，支持最大18W快充。&lt;/span&gt;&lt;/section&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;&lt;img data-src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261102202738_20495.jpeg&quot; class=&quot;rich_pages wxw-img&quot; data-ratio=&quot;1.3333333333333333&quot; data-type=&quot;webp&quot; data-w=&quot;1080&quot; data-imgfileid=&quot;100005330&quot; data-aistatus=&quot;1&quot; data-original-style=&quot;null&quot; data-index=&quot;1&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261102202738_20495.jpeg&quot; _width=&quot;677px&quot; __sec_open_place_holder__=&quot;true&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.987px !important;&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1793622419559&quot; data-report-img-idx=&quot;1&quot; data-fail=&quot;0&quot;/&gt;&lt;/span&gt;&lt;/section&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;这款平板最早似乎是淮南那边的政F采购的学生终端，采购于2020年时间，目前为止，时间也就6年，还挺热乎的，好处就是电池挺不错，有卖家描述，在最高亮度的情况下，视频可以播放6小时左右。&lt;/span&gt;&lt;/section&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;分析下性能，这种低端平板，肯定安装TV版的软件（就是家里电视上装的App，对性能要求低），4GB运行内存肯定够用，1080P的屏幕显示也够用，就是这个联发科的处理器有点弱。&lt;/span&gt;&lt;/section&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;&lt;img data-src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261102202739_54042.jpeg&quot; class=&quot;rich_pages wxw-img&quot; data-ratio=&quot;0.75&quot; data-type=&quot;webp&quot; data-w=&quot;1080&quot; data-imgfileid=&quot;100005329&quot; data-aistatus=&quot;1&quot; data-original-style=&quot;null&quot; data-index=&quot;2&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261102202739_54042.jpeg&quot; _width=&quot;677px&quot; __sec_open_place_holder__=&quot;true&quot; style=&quot;height: auto !important; visibility: visible !important; width: 677px !important;&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1793622420291&quot; data-report-img-idx=&quot;2&quot; data-fail=&quot;0&quot;/&gt;&lt;/span&gt;&lt;/section&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;MT6762，就是我们常说联发科P22，八核心设计，工艺是12nm，用的是A53的架构，有点弱，GPU是IMG PowerVR GE8320，支持1080P H.264（HEVC）硬解，属于看个视频够用的档次。&lt;/span&gt;&lt;/section&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;我看到有一个卖家描述，为了拍照，膜都是刚刚撕掉，整体嘎嘎新&lt;/span&gt;&lt;/section&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;&lt;img data-src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261102202740_79112.jpeg&quot; class=&quot;rich_pages wxw-img&quot; data-ratio=&quot;1.3333333333333333&quot; data-type=&quot;webp&quot; data-w=&quot;1080&quot; data-imgfileid=&quot;100005333&quot; data-aistatus=&quot;1&quot; data-original-style=&quot;null&quot; data-index=&quot;3&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261102202740_79112.jpeg&quot; _width=&quot;677px&quot; __sec_open_place_holder__=&quot;true&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.987px !important;&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1793622420857&quot; data-report-img-idx=&quot;3&quot; data-fail=&quot;0&quot;/&gt;&lt;/span&gt;&lt;/section&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;不知道这么平板能不能用Diplay，能用上的话，身价又得涨一些。&lt;/span&gt;&lt;/section&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;这平板卖的比我想象中快太多了，隔一个晚上，有一个商家居然卖完下架了。&lt;/span&gt;&lt;/section&gt;&lt;section style=&quot;text-align: center;&quot; nodeleaf=&quot;&quot;&gt;&lt;img data-src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261102202741_53422.jpeg&quot; class=&quot;rich_pages wxw-img&quot; data-ratio=&quot;2.1675925925925927&quot; data-s=&quot;300,640&quot; data-type=&quot;jpeg&quot; data-w=&quot;1080&quot; type=&quot;block&quot; data-imgfileid=&quot;100005332&quot; data-aistatus=&quot;1&quot; data-original-style=&quot;null&quot; data-index=&quot;4&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261102202741_53422.jpeg&quot; _width=&quot;677px&quot; __sec_open_place_holder__=&quot;true&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.987px !important;&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1793622421517&quot; data-report-img-idx=&quot;4&quot; data-fail=&quot;0&quot;/&gt;&lt;/section&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;目前这个平板在小黄鱼上的售价普遍在百元出点头，我之前说的卖完的商家卖98元，还剩一个卖99元的，剩下的个人卖家普遍价格在130元左右，有个卖家有电池测试的，不想碰运气的可以多花前买个省心。&lt;/span&gt;&lt;/section&gt;&lt;section style=&quot;text-align: center;&quot; nodeleaf=&quot;&quot;&gt;&lt;img data-src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261102202742_88265.png&quot; class=&quot;rich_pages wxw-img&quot; data-ratio=&quot;0.5370370370370371&quot; data-s=&quot;300,640&quot; data-type=&quot;png&quot; data-w=&quot;1080&quot; type=&quot;block&quot; data-imgfileid=&quot;100005331&quot; data-aistatus=&quot;1&quot; data-original-style=&quot;null&quot; data-index=&quot;5&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/11/20261102202742_88265.png&quot; _width=&quot;677px&quot; __sec_open_place_holder__=&quot;true&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.975px !important;&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1793622422941&quot; data-report-img-idx=&quot;5&quot; data-fail=&quot;0&quot;/&gt;&lt;/section&gt;&lt;section style=&quot;margin-bottom: 0px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;还挺想弄一个来玩玩串流的。&lt;/span&gt;&lt;/section&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Mon, 02 Nov 2026 20:18:52 +0800</pubDate></item><item><title>用了这么多 Windows 集成环境，最后还是选了 FlyEnv</title><link>https://kinber.cn/post/6826.html</link><description>&lt;section style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); color: rgb(10, 10, 10); text-wrap: wrap; background-color: rgb(255, 255, 255); line-height: 1.75; font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; font-size: 16px;&quot;&gt;&lt;section style=&quot;text-align: center;&quot; nodeleaf=&quot;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100002120&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261027173151_67134.png&quot; data-type=&quot;png&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;0&quot; data-ratio=&quot;0.5642965204236006&quot; data-w=&quot;1983&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261027173151_67134.png&quot; _width=&quot;677px&quot; __sec_open_place_holder__=&quot;true&quot; data-sec-load-status=&quot;2&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.987px !important;&quot; data-report-img-idx=&quot;0&quot; alt=&quot;图片&quot;/&gt;&lt;/section&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;作为一个老程序员，以前用&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, monospace;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Mac&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;的时候还好，各种开发环境基本都可以通过&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Brew&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;管理。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;换了&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Windows&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;之后，搞环境真的是太痛苦了，所以集成环境也就成了不二之选！&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;这些年，我用过不少集成环境，像&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;phpStudy&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;、&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;FlyEnv&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;、&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;ServBay&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;、&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Laragon&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，基本都折腾过。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;先说说&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;phpStudy&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;这应该算是比较古老的集成环境了，也是我用得最多的一个，真的是让我又爱又恨。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;版本残缺、扩展支持少、操作复杂、配置难管理，界面还丑。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;好在它支持不少古老版本，而且相关资源也确实好找。尤其是维护一些老项目的时候，还真离不开它。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;至于&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Laragon&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，这一言难尽的玩意儿，我就不说它了……&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;ServBay&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;其实也确实不错。界面相当漂亮时尚，功能也贼全，还支持多平台。但就是占用内存太高了，那家伙一启动，机器磁磁响，受不了一点。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;当然，也可以通过修改配置，减少一些服务的启动，达到优化内存的效果。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;但问题是，我都用集成环境了，不就是图个方便吗？还让我配这配那，我还用啥集成环境呢？&lt;/span&gt;&lt;/p&gt;&lt;br/&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;strong style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); text-align: left; line-height: 1.75; font-size: inherit; color: rgb(15, 76, 129);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;最后说说&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; font-feature-settings: normal; font-variation-settings: normal; font-size: 14.4px; line-height: 1.75; color: rgb(221, 17, 68); background: rgba(27, 31, 35, 0.05); padding: 3px 5px; border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;FlyEnv&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，目前我觉得最合适的一个。&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;首先是界面。清新、简洁，完全长在了我的审美上。毕竟我连车都喜欢毛坯&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Y&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;的人，对这种简洁的设计确实没什么抵抗力。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;其次是功能，也足够全面。&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Web&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;服务器除了常见的&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Nginx&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;、&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Apache&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，还支持&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Caddy&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;数据库就不用多说了，缓存、队列啥的都有，甚至连对象存储也支持。容器、&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;AI&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;啥的，现在这些集成环境基本也都开始支持了。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;语言环境同样比较全面，像&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;PHP&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;、&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Python&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;、&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Bun&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;、&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Node.js&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;、&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Go&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;、&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Java&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;、&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Flutter&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，以及&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Swoole&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;等常用开发环境和扩展，基本都能覆盖。其他乱七八糟的开发工具也有不少。&lt;/span&gt;&lt;/p&gt;&lt;section style=&quot;text-align: center;&quot; nodeleaf=&quot;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100002125&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261027173153_13929.png&quot; data-type=&quot;png&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;1&quot; data-ratio=&quot;0.6687254351487928&quot; data-w=&quot;1781&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261027173153_13929.png&quot; _width=&quot;677px&quot; __sec_open_place_holder__=&quot;true&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.984px !important;&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1793093486776&quot; data-report-img-idx=&quot;1&quot; data-fail=&quot;0&quot;/&gt;&lt;/section&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;不过，这些其实还不是最吸引我的。最关键的是，它支持添加自定义版本。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;比如&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;PHP 5.2&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;FlyEnv&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;本身没有提供，但&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;phpStudy&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;有啊！我可以直接把对应的版本导入进来使用。&lt;/span&gt;&lt;/p&gt;&lt;br/&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;还有数据库也是一样。之前使用&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;phpStudy&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;搭建的数据库环境，重新迁移、配置比较麻烦，我干脆直接添加进来继续用。&lt;/span&gt;&lt;/p&gt;&lt;section style=&quot;text-align: center;&quot; nodeleaf=&quot;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100002124&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261027173153_87020.png&quot; data-type=&quot;png&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;2&quot; data-ratio=&quot;0.6687254351487928&quot; data-w=&quot;1781&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261027173153_87020.png&quot; _width=&quot;677px&quot; __sec_open_place_holder__=&quot;true&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.984px !important;&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1793093487275&quot; data-report-img-idx=&quot;2&quot; data-fail=&quot;0&quot;/&gt;&lt;/section&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;这个功能就很舒服了。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;尤其是我们这种经常需要维护老项目的程序员，不用为了某个特殊版本，再去装一套集成环境。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;另外，它还可以直接在操作列添加环境变量。这个功能我也特别喜欢。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Windows&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;添加环境变量麻烦得要死，不像&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Mac&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，本来就比较简单，还可以直接通过&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;ln&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;或&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;alias&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;来处理一些命令路径问题。而在&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;FlyEnv&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;里，基本点几下就能搞定，不用再去系统设置里翻来翻去。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;对于&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;PHP&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;开发者来说，还有一个非常实用的地方。可以直接在操作列编辑&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;php.ini&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，添加扩展、禁用扩展，操作起来也贼方便。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;不用到处找配置文件，也不用记各种目录路径。说到底，&lt;/span&gt;&lt;strong style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); text-align: left; line-height: 1.75; font-size: inherit; color: rgb(15, 76, 129);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;我选择集成环境，就是为了少折腾环境，把时间花在真正的开发上。&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;至于性能、资源占用、功能完整度，每个人的需求不同，实际体验肯定也不一样。但就我目前的使用体验来说，&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;FlyEnv&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;确实是最符合我习惯的一个。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin: 1.5em 8px; text-align: justify; line-height: 1.75; letter-spacing: 0.1em; color: rgb(63, 63, 63);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;所以后面如果不换回&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Mac&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，我大概就只推荐&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;box-sizing: border-box;border-width: 0px;border-style: solid;border-color: rgb(229, 229, 229);font-family: -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 14.4px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;FlyEnv&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;了。&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;p style=&quot;box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 229, 229); margin-top: 0px; margin-bottom: 0px; color: rgb(10, 10, 10); font-family: ui-sans-serif, system-ui, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Noto Color Emoji&amp;quot;; text-wrap: wrap; background-color: rgb(255, 255, 255); font-size: 0px; line-height: 0;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Tue, 27 Oct 2026 15:14:29 +0800</pubDate></item><item><title>Grafana Alerting 实战：主机异常自动通知到企微群</title><link>https://kinber.cn/post/6825.html</link><description>&lt;section style=&quot;color: rgb(58, 58, 58); font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; font-size: 15px; letter-spacing: 0.5px; text-wrap: wrap; margin: 18px 22px; padding: 14px 16px; background-color: rgb(255, 247, 239); border-left: 4px solid rgb(250, 100, 0); border-radius: 0px 8px 8px 0px; visibility: visible;&quot; data-pm-slice=&quot;0 0 []&quot;&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; font-size: 14px; line-height: 1.9; color: rgb(107, 74, 32); visibility: visible;&quot;&gt;&lt;strong style=&quot;color: rgb(194, 87, 5); visibility: visible;&quot;&gt;导读：&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;前几篇我们把 Zabbix 的主机和 MySQL 指标搬进了 Grafana 大屏。但大屏再漂亮，也得有人&amp;quot;盯着&amp;quot;才算数——值班同学不可能 7×24 盯着墙。这篇补上闭环的关键一块：&lt;/span&gt;&lt;strong style=&quot;color: rgb(194, 87, 5); visibility: visible;&quot;&gt;Grafana Alerting 告警链路&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;。CPU 飙了、磁盘满了、MySQL 延迟超阈值，Grafana 自动把告警卡片推到企微群，30 秒内 @ 到人。全程 5 步配置，附每一步的高清截图。&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;p&gt;&lt;section style=&quot;color: rgb(58, 58, 58); font-family: -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, sans-serif; font-size: 15px; letter-spacing: 0.5px; text-wrap: wrap; padding: 0px 22px; visibility: visible;&quot;&gt;&lt;section style=&quot;margin: 30px 0px 14px; visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;section style=&quot;width: 26px; height: 26px; border-radius: 50%; background-color: rgb(250, 100, 0); color: rgb(255, 255, 255); text-align: center; line-height: 26px; font-size: 14px; font-weight: 700; margin-right: 10px; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;1&lt;/span&gt;&lt;/section&gt;&lt;h2 style=&quot;margin: 0px; font-size: 18px; color: rgb(26, 26, 26); padding-left: 12px; border-left: 5px solid rgb(102, 126, 234); line-height: 1.4; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;为什么不用 Zabbix 自带告警？&lt;/span&gt;&lt;/h2&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 12px; line-height: 1.9; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;Zabbix 的 Trigger + 动作体系很成熟，但当你已经把&lt;/span&gt;&lt;strong style=&quot;visibility: visible;&quot;&gt;展示层统一到 Grafana&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;之后，告警也放进 Grafana 有三个实打实的好处：&lt;/span&gt;&lt;/p&gt;&lt;table width=&quot;746&quot;&gt;&lt;tbody style=&quot;visibility: visible;&quot;&gt;&lt;tr style=&quot;background-color: rgb(255, 243, 232); visibility: visible;&quot; class=&quot;firstRow&quot;&gt;&lt;th style=&quot;border-color: rgb(240, 217, 192); padding-top: 8px; padding-bottom: 8px; text-align: left; color: rgb(138, 90, 32); background-color: rgb(102, 126, 234); visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;对比项&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;th style=&quot;border-color: rgb(240, 217, 192); padding-top: 8px; padding-bottom: 8px; text-align: left; color: rgb(138, 90, 32); background-color: rgb(102, 126, 234); visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;Zabbix Trigger&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;th style=&quot;border-color: rgb(240, 217, 192); padding-top: 8px; padding-bottom: 8px; text-align: left; color: rgb(138, 90, 32); background-color: rgb(102, 126, 234); visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;Grafana Alerting&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;/tr&gt;&lt;tr style=&quot;visibility: visible;&quot;&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51); visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;与大盘的关系&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51); visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;两套体系，图表在 Grafana、告警在 Zabbix&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(194, 87, 5); font-weight: 600; visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;同一个系统里，点告警直接跳大屏&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style=&quot;visibility: visible;&quot;&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51); visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;告警条件表达力&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51); visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;函数语法门槛高&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51); visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;Reduce + Threshold 拼积木式配置&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style=&quot;visibility: visible;&quot;&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51); visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;路由灵活度&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51); visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;动作条件里写逻辑&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(194, 87, 5); font-weight: 600; visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;按 Label 树状路由，改群不改规则&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style=&quot;visibility: visible;&quot;&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51); visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;消息内容定制&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51); visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;宏组合，调试繁琐&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51); visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;模板变量直取查询结果值&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 12px; line-height: 1.9; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;当然，Zabbix 侧的告警可以继续保留作为&amp;quot;老保底&amp;quot;，两者并存互不影响。&lt;/span&gt;&lt;/p&gt;&lt;br/&gt;&lt;section style=&quot;margin: 30px 0px 14px; visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;section style=&quot;width: 26px; height: 26px; border-radius: 50%; background-color: rgb(250, 100, 0); color: rgb(255, 255, 255); text-align: center; line-height: 26px; font-size: 14px; font-weight: 700; margin-right: 10px; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;2&lt;/span&gt;&lt;/section&gt;&lt;h2 style=&quot;margin: 0px; font-size: 18px; color: rgb(26, 26, 26); padding-left: 12px; border-left: 5px solid rgb(102, 126, 234); line-height: 1.4; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;先看全链路：一条告警是怎么流到企微群的&lt;/span&gt;&lt;/h2&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style=&quot;margin: 0px 0px 14px;padding: 14px 16px;background-color: rgb(24, 27, 34);border-radius: 10px;&quot;&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; font-size: 13px; line-height: 2.1; color: rgb(216, 217, 218); font-family: Consolas, Menlo, monospace;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Zabbix 指标（API）&lt;/span&gt;&lt;br/&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; ↓ Grafana 定时查询（每 30s 评估）&lt;/span&gt;&lt;br/&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; ↓&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #FA923F;font-weight: 700;&quot;&gt;Alert Rule&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;：last() of CPU load IS ABOVE 阈值&lt;/span&gt;&lt;br/&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; ↓ 打上&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #5794F2;&quot;&gt;Label（severity=critical）&lt;/span&gt;&lt;br/&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; ↓&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #FA923F;font-weight: 700;&quot;&gt;Notification Policy&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;按 Label 匹配路由&lt;/span&gt;&lt;br/&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; ↓&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #FA923F;font-weight: 700;&quot;&gt;Contact Point&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;：Webhook → 企微群机器人&lt;/span&gt;&lt;br/&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; ↓&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #73BF69;font-weight: 700;&quot;&gt;✔ 运维告警群收到告警卡片&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 12px; line-height: 1.9;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;记住这条链路的四个关卡：&lt;/span&gt;&lt;strong&gt;规则（何时响）→ 标签（我是谁）→ 策略（发给谁）→ 渠道（怎么发）&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。下面逐步打通。&lt;/span&gt;&lt;/p&gt;&lt;section style=&quot;margin: 30px 0px 14px;&quot;&gt;&lt;section&gt;&lt;section style=&quot;width: 26px;height: 26px;border-radius: 50%;background-color: rgb(250, 100, 0);color: rgb(255, 255, 255);text-align: center;line-height: 26px;font-size: 14px;font-weight: 700;margin-right: 10px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;3&lt;/span&gt;&lt;/section&gt;&lt;h2 style=&quot;margin: 0px; font-size: 18px; color: rgb(26, 26, 26); padding-left: 12px; border-left: 5px solid rgb(102, 126, 234); line-height: 1.4;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;第一步：创建告警规则（Alert rules）&lt;/span&gt;&lt;/h2&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 12px; line-height: 1.9;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;进入&amp;nbsp;&lt;/span&gt;&lt;strong&gt;Alerting → Alert rules → + New alert rule&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。核心是把&amp;quot;CPU 负载过高&amp;quot;翻译成三段式条件：&lt;/span&gt;&lt;/p&gt;&lt;ul style=&quot;margin-bottom: 12px; padding-left: 22px;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;查询 A&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：Zabbix 数据源，Group: Linux servers → Host:&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;$host&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;→ Item: CPU load (1m)；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;表达式 B&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：Reduce →&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;last()&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，取最近一个采样点；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;表达式 C&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：Threshold →&amp;nbsp;&lt;/span&gt;&lt;strong&gt;IS ABOVE 阈值&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。超过即 Firing。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ul&gt;&lt;figure style=&quot;margin: 0px 0px 6px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;&lt;img alt=&quot;Grafana 告警规则编辑&quot; class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100003207&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023163540_10490.png&quot; data-type=&quot;png&quot; style=&quot;border-radius: 8px; border: 1px solid rgb(232, 232, 232); width: 633px !important; height: auto !important; visibility: visible !important;&quot; data-original-style=&quot;width: 746px;border-radius: 8px;border: 1px solid rgb(232, 232, 232);max-width: 100%;&quot; data-index=&quot;2&quot; data-ratio=&quot;0.9341666666666667&quot; data-w=&quot;2400&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023163540_10490.png&quot; _width=&quot;677px&quot; data-before-load-time=&quot;1792744502002&quot; data-report-img-idx=&quot;0&quot; data-fail=&quot;0&quot;/&gt;&lt;/span&gt;&lt;figcaption style=&quot;text-align: center;font-size: 12px;color: rgb(136, 136, 136);margin-top: 8px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;▲ 告警规则编辑：查询 A + Reduce（last）+ Threshold 三段拼装，Firing 状态一目了然&lt;/span&gt;&lt;/figcaption&gt;&lt;/figure&gt;&lt;p style=&quot;margin-top: 14px; margin-bottom: 12px; line-height: 1.9;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;三处细节决定告警好不好用：&lt;/span&gt;&lt;/p&gt;&lt;ul style=&quot;margin-bottom: 12px; padding-left: 22px;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;评估间隔&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：Rule group 里设&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;30s&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，越短发现越快，但别低于采集周期；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;Labels&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：打上&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;severity=critical&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;、&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;team=sre&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;——这是后面路由的&amp;quot;钥匙&amp;quot;；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;Annotations&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：用&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;{{$host}} 1分钟负载={{$values.B}}&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;把具体数值写进消息，收到告警不用再翻系统。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ul&gt;&lt;section style=&quot;margin: 0px 0px 14px;padding: 12px 14px;background-color: rgb(255, 251, 232);border-radius: 8px;&quot;&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; font-size: 13px; line-height: 1.9; color: rgb(138, 109, 26);&quot;&gt;&lt;strong&gt;踩坑提醒：&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;新装的 Grafana 如果 Alerting 菜单里没有 unified alerting 相关页面，检查&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;ngalert&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;是否启用（Grafana 9+ 默认开启，7.0 升级上来的老实例需要手动开）。另外规则保存后默认&lt;/span&gt;&lt;strong&gt;暂停评估&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;的实例极少见，但首次建议点&amp;nbsp;&lt;/span&gt;&lt;strong&gt;Preview&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;看一眼条件预览再保存。&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style=&quot;margin: 30px 0px 14px;&quot;&gt;&lt;section&gt;&lt;section style=&quot;width: 26px;height: 26px;border-radius: 50%;background-color: rgb(250, 100, 0);color: rgb(255, 255, 255);text-align: center;line-height: 26px;font-size: 14px;font-weight: 700;margin-right: 10px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;4&lt;/span&gt;&lt;/section&gt;&lt;h2 style=&quot;margin: 0px; font-size: 18px; color: rgb(26, 26, 26); padding-left: 12px; border-left: 5px solid rgb(102, 126, 234); line-height: 1.4;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;第二步：配置企微群通知渠道（Contact points）&lt;/span&gt;&lt;/h2&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 12px; line-height: 1.9;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;先在企微群里建机器人：&lt;/span&gt;&lt;strong&gt;群设置 → 群机器人 → 添加机器人&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，复制拿到的 Webhook 地址（形如&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxx&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;）。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 12px; line-height: 1.9;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;然后进入&amp;nbsp;&lt;/span&gt;&lt;strong&gt;Alerting → Contact points → + Add contact point&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：&lt;/span&gt;&lt;/p&gt;&lt;ul style=&quot;margin-bottom: 12px; padding-left: 22px;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;Integration&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：选&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Webhook&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;URL&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：填中继服务地址（直连企微群机器人的方案见下方提醒）；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;HTTP Method&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;POST&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，Content type 选&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;application/json&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;保存后点&amp;nbsp;&lt;/span&gt;&lt;strong&gt;Test&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，群里出现一条测试消息即为打通。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ul&gt;&lt;figure style=&quot;margin: 0px 0px 6px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;&lt;img alt=&quot;Grafana 通知渠道配置&quot; class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100003208&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023163541_93014.png&quot; data-type=&quot;png&quot; style=&quot;border-radius: 8px; border: 1px solid rgb(232, 232, 232); width: 633px !important; height: auto !important; visibility: visible !important;&quot; data-original-style=&quot;width: 746px;border-radius: 8px;border: 1px solid rgb(232, 232, 232);max-width: 100%;&quot; data-index=&quot;3&quot; data-ratio=&quot;0.6908333333333333&quot; data-w=&quot;2400&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023163541_93014.png&quot; _width=&quot;677px&quot; data-before-load-time=&quot;1792744502555&quot; data-report-img-idx=&quot;1&quot; data-fail=&quot;0&quot;/&gt;&lt;/span&gt;&lt;figcaption style=&quot;text-align: center;font-size: 12px;color: rgb(136, 136, 136);margin-top: 8px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;▲ Contact points：企微运维告警群设为 Default 兜底渠道，Body 由中继转成企微 markdown 卡片&lt;/span&gt;&lt;/figcaption&gt;&lt;/figure&gt;&lt;section style=&quot;margin: 14px 0px;padding: 12px 14px;background-color: rgb(255, 251, 232);border-radius: 8px;&quot;&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 0px; font-size: 13px; line-height: 1.9; color: rgb(138, 109, 26);&quot;&gt;&lt;strong&gt;关键认知（少走 2 小时弯路）：&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;企微群机器人只认它自己的报文格式（&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;msgtype: markdown&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;），而 Grafana 的通用 Webhook 发的是自己的 payload，&lt;/span&gt;&lt;strong&gt;直连会 400&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。三个解法：&lt;/span&gt;&lt;br/&gt;&lt;span leaf=&quot;&quot;&gt;① 写一个 10 行的轻量中继（Nginx + Lua / 一个 Flask 脚本），把 Grafana payload 转成企微格式——常用；&lt;/span&gt;&lt;br/&gt;&lt;span leaf=&quot;&quot;&gt;② 用 Grafana OnCall，自带企微集成，还能做认领、升级；&lt;/span&gt;&lt;br/&gt;&lt;span leaf=&quot;&quot;&gt;③ 保留 Zabbix 侧企微告警媒介，Grafana 只做大屏——不推荐，链路分裂。&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style=&quot;margin: 30px 0px 14px;&quot;&gt;&lt;section&gt;&lt;section style=&quot;width: 26px;height: 26px;border-radius: 50%;background-color: rgb(250, 100, 0);color: rgb(255, 255, 255);text-align: center;line-height: 26px;font-size: 14px;font-weight: 700;margin-right: 10px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;5&lt;/span&gt;&lt;/section&gt;&lt;h2 style=&quot;margin: 0px; font-size: 18px; color: rgb(26, 26, 26); padding-left: 12px; border-left: 5px solid rgb(102, 126, 234); line-height: 1.4;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;第三步：通知策略（Notification policies）— 谁的告警进谁的群&lt;/span&gt;&lt;/h2&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 12px; line-height: 1.9;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;这是 Alerting 里非常关键的一层。进入&amp;nbsp;&lt;/span&gt;&lt;strong&gt;Alerting → Notification policies&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，树状结构一目了然：&lt;/span&gt;&lt;/p&gt;&lt;ul style=&quot;margin-bottom: 12px; padding-left: 22px;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;Default policy&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：兜底渠道设为「企微运维告警群」，没匹配到规则的告警都发这里；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;子策略 1&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：Matcher&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;severity = critical&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;→ 企微运维告警群，并设置&amp;nbsp;&lt;/span&gt;&lt;strong&gt;Group by: host&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;（同一主机的多条告警合并，5 分钟内不重复轰炸）；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;子策略 2&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：Matcher&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;team = dba&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;→ 企微 DBA 群；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;子策略 3&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：Matcher&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;severity = warning&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;→ 监控静默群（只在工作时间 @）。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ul&gt;&lt;figure style=&quot;margin: 0px 0px 6px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;&lt;img alt=&quot;Grafana 通知策略路由&quot; class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100003204&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023163542_71409.png&quot; data-type=&quot;png&quot; style=&quot;border-radius: 8px; border: 1px solid rgb(232, 232, 232); width: 633px !important; height: auto !important; visibility: visible !important;&quot; data-original-style=&quot;width: 746px;border-radius: 8px;border: 1px solid rgb(232, 232, 232);max-width: 100%;&quot; data-index=&quot;4&quot; data-ratio=&quot;0.44666666666666666&quot; data-w=&quot;2400&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023163542_71409.png&quot; _width=&quot;677px&quot; data-before-load-time=&quot;1792744502875&quot; data-report-img-idx=&quot;2&quot; data-fail=&quot;0&quot;/&gt;&lt;/span&gt;&lt;figcaption style=&quot;text-align: center;font-size: 12px;color: rgb(136, 136, 136);margin-top: 8px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;▲ Notification policies 树：Label 是钥匙，换群、加群只动策略，一条规则都不用改&lt;/span&gt;&lt;/figcaption&gt;&lt;/figure&gt;&lt;p style=&quot;margin-top: 14px; margin-bottom: 12px; line-height: 1.9;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;这样&amp;quot;值班&amp;quot;语义就出来了：&lt;/span&gt;&lt;strong&gt;critical 进值班群实时 @，warning 进静默群白天看&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，DBA 的数据库告警单独走自己的群，运维群里不再被 MySQL 告警刷屏。&lt;/span&gt;&lt;/p&gt;&lt;br/&gt;&lt;section style=&quot;margin: 30px 0px 14px;&quot;&gt;&lt;section&gt;&lt;section style=&quot;width: 26px;height: 26px;border-radius: 50%;background-color: rgb(250, 100, 0);color: rgb(255, 255, 255);text-align: center;line-height: 26px;font-size: 14px;font-weight: 700;margin-right: 10px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;6&lt;/span&gt;&lt;/section&gt;&lt;h2 style=&quot;margin: 0px; font-size: 18px; color: rgb(26, 26, 26); padding-left: 12px; border-left: 5px solid rgb(102, 126, 234); line-height: 1.4;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;实战效果：告警长什么样&lt;/span&gt;&lt;/h2&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 12px; line-height: 1.9;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;压测把 web-prod-01 的 CPU 拉高，30 秒内告警进入 Firing。回到&amp;nbsp;&lt;/span&gt;&lt;strong&gt;Alerting → Alert list&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，触发中、待定、已恢复的状态和趋势尽收眼底：&lt;/span&gt;&lt;/p&gt;&lt;figure style=&quot;margin: 0px 0px 6px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;&lt;img alt=&quot;Grafana 告警总览&quot; class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100003205&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023163543_74682.png&quot; data-type=&quot;png&quot; style=&quot;border-radius: 8px; border: 1px solid rgb(232, 232, 232); width: 633px !important; height: auto !important; visibility: visible !important;&quot; data-original-style=&quot;width: 746px;border-radius: 8px;border: 1px solid rgb(232, 232, 232);max-width: 100%;&quot; data-index=&quot;5&quot; data-ratio=&quot;0.7166666666666667&quot; data-w=&quot;2400&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023163543_74682.png&quot; _width=&quot;677px&quot; data-before-load-time=&quot;1792744503258&quot; data-report-img-idx=&quot;3&quot; data-fail=&quot;0&quot;/&gt;&lt;/span&gt;&lt;figcaption style=&quot;text-align: center;font-size: 12px;color: rgb(136, 136, 136);margin-top: 8px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;▲ Alert list：3 条 critical 触发中，恢复时长（MTTR）也有了量化数据&lt;/span&gt;&lt;/figcaption&gt;&lt;/figure&gt;&lt;p style=&quot;margin-top: 14px; margin-bottom: 12px; line-height: 1.9;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;与此同时，企微群里收到两张 markdown 卡片——标题红色、主机、级别、当前值、持续时长、直达 Grafana 的链接一应俱全：&lt;/span&gt;&lt;/p&gt;&lt;figure style=&quot;margin: 0px 0px 6px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;&lt;img alt=&quot;企微群收到的告警消息&quot; class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100003206&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023163544_33674.png&quot; data-type=&quot;png&quot; style=&quot;border-radius: 8px; border: 1px solid rgb(232, 232, 232); width: 633px !important; height: auto !important; visibility: visible !important;&quot; data-original-style=&quot;width: 746px;border-radius: 8px;border: 1px solid rgb(232, 232, 232);max-width: 100%;&quot; data-index=&quot;6&quot; data-ratio=&quot;0.7636363636363637&quot; data-w=&quot;2200&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023163544_33674.png&quot; _width=&quot;677px&quot; data-before-load-time=&quot;1792744503541&quot; data-report-img-idx=&quot;4&quot; data-fail=&quot;0&quot;/&gt;&lt;/span&gt;&lt;figcaption style=&quot;text-align: center;font-size: 12px;color: rgb(136, 136, 136);margin-top: 8px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;▲ 运维告警群实况：Grafana 机器人推送的告警卡片，点链接直接跳到对应大屏&lt;/span&gt;&lt;/figcaption&gt;&lt;/figure&gt;&lt;p style=&quot;margin-top: 14px; margin-bottom: 12px; line-height: 1.9;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;指标回落并持续一段时间后，同一条消息会自动补充&amp;quot;Resolved 已恢复&amp;quot;，&lt;/span&gt;&lt;strong&gt;告警有始有终&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，值班同学不用手工关单。&lt;/span&gt;&lt;/p&gt;&lt;section style=&quot;margin: 30px 0px 14px;&quot;&gt;&lt;section&gt;&lt;section style=&quot;width: 26px;height: 26px;border-radius: 50%;background-color: rgb(250, 100, 0);color: rgb(255, 255, 255);text-align: center;line-height: 26px;font-size: 14px;font-weight: 700;margin-right: 10px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;7&lt;/span&gt;&lt;/section&gt;&lt;h2 style=&quot;margin: 0px; font-size: 18px; color: rgb(26, 26, 26); padding-left: 12px; border-left: 5px solid rgb(102, 126, 234); line-height: 1.4;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;进阶技巧：让告警更&amp;quot;懂事&amp;quot;&lt;/span&gt;&lt;/h2&gt;&lt;/section&gt;&lt;/section&gt;&lt;ul style=&quot;margin-bottom: 12px; padding-left: 22px;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;Pending 缓冲，拒绝抖动&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：Condition 里的&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;for 2m&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;（Alert Evaluation Behavior → Set alert state if error / pending）让条件&lt;/span&gt;&lt;strong&gt;持续 2 分钟&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;才 Firing，瞬时毛刺不再半夜叫人；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;按主机合并轰炸&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：子策略里 Group by&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;host&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，同一主机批量告警合并成一条 markdown，加上&amp;nbsp;&lt;/span&gt;&lt;strong&gt;Mute timings&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;设定免打扰时段；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;消息里带数值&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：Annotations 用&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;{{$values.B}}（人类可读）&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;与&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;{{$value}}（原始值）&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，配合&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;{{$labels.host}}&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，卡片信息量拉满；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;Keep Last State&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：数据源短暂断连时（评估失败）保持最后状态不发&amp;quot;Unknown 风暴&amp;quot;，避免半夜被假告警吵醒；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;Silence 静默窗口&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：变更窗口前在 Alerting → Silences 里按&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;font-size: 13px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;host=xxx&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;静默 2 小时，发版不告警；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;告警即代码&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;：规则支持导出 YAML（Alert rules → Export），放进 Git 走 CI 同步，多套环境一键复制。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ul&gt;&lt;section style=&quot;margin: 30px 0px 14px;&quot;&gt;&lt;section&gt;&lt;section style=&quot;width: 26px;height: 26px;border-radius: 50%;background-color: rgb(250, 100, 0);color: rgb(255, 255, 255);text-align: center;line-height: 26px;font-size: 14px;font-weight: 700;margin-right: 10px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;8&lt;/span&gt;&lt;/section&gt;&lt;h2 style=&quot;margin: 0px; font-size: 18px; color: rgb(26, 26, 26); padding-left: 12px; border-left: 5px solid rgb(102, 126, 234); line-height: 1.4;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;常见问题（FAQ）&lt;/span&gt;&lt;/h2&gt;&lt;/section&gt;&lt;/section&gt;&lt;table width=&quot;746&quot;&gt;&lt;tbody&gt;&lt;tr style=&quot;background-color: rgb(255, 243, 232);&quot; class=&quot;firstRow&quot;&gt;&lt;th style=&quot;border-color: rgb(240, 217, 192); padding-top: 8px; padding-bottom: 8px; text-align: left; color: rgb(138, 90, 32); background-color: rgb(102, 126, 234);&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;现象&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;th style=&quot;border-color: rgb(240, 217, 192); padding-top: 8px; padding-bottom: 8px; text-align: left; color: rgb(138, 90, 32); background-color: rgb(102, 126, 234);&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;排查方向&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51);&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;规则显示 Firing，企微群没消息&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51);&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;① Contact point 是否被策略引用（用了自定义策略但 Default 没兜住）；② 中继服务日志有没有收到请求；③ 机器人 Webhook key 是否过期/被限流（每机器人 20 条/分钟）&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51);&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;Test 能发，真实告警不发&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51);&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;Test 不走 Notification policies，只测渠道本身；检查策略 Matcher 与规则 Label 是否拼写一致（区分大小写）&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51);&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;告警风暴，群被刷屏&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51);&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;开启 Group by host + group interval（默认 5m）；检查是否有规则缺&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;background-color: rgb(244, 244, 244);padding: 1px 5px;border-radius: 3px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;for&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;持续条件&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51);&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;消息显示 No data / Unknown&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51);&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;查询返回空：确认 $host 变量取值、Zabbix 数据源账号 API 权限、Item 处于 Supported 状态&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51);&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;恢复通知不出现&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(238, 229, 216); padding-top: 8px; padding-bottom: 8px; color: rgb(51, 51, 51);&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;Contact point / 策略里开启了 &amp;quot;Only send notifications when alert fires&amp;quot; 类选项的关掉；或策略层 resolve 被覆盖&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;section style=&quot;margin: 30px 0px 14px;&quot;&gt;&lt;section&gt;&lt;section style=&quot;width: 26px;height: 26px;border-radius: 50%;background-color: rgb(250, 100, 0);color: rgb(255, 255, 255);text-align: center;line-height: 26px;font-size: 14px;font-weight: 700;margin-right: 10px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;9&lt;/span&gt;&lt;/section&gt;&lt;h2 style=&quot;margin: 0px; font-size: 18px; color: rgb(26, 26, 26); padding-left: 12px; border-left: 5px solid rgb(102, 126, 234); line-height: 1.4;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;写在最后&lt;/span&gt;&lt;/h2&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style=&quot;margin-top: 0px; margin-bottom: 12px; line-height: 1.9;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;到这里，Zabbix × Grafana 系列的监控闭环就完整了：&lt;/span&gt;&lt;strong style=&quot;color: rgb(194, 87, 5);&quot;&gt;采集（Zabbix）→ 展示（Grafana 大屏）→ 告警（Alerting）→ 送达（企微群）&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。监控的价值不在图好看，而在&amp;quot;出事有人知道、多快知道、知道得够不够多&amp;quot;。一条带数值、带链接、自动恢复的企微卡片，往往比任何大屏都更能体现监控体系的成熟度。&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Fri, 23 Oct 2026 16:34:57 +0800</pubDate></item><item><title>Zabbix 7自动发现与 LLD 批量纳管配置指导</title><link>https://kinber.cn/post/6823.html</link><description>&lt;blockquote style=&quot;font-size: 0.9em; border-left-width: 3px; border-left-color: rgb(72, 112, 172); padding: 0.5em 1em; margin-bottom: 0px; background: rgb(246, 248, 250); color: rgb(64, 70, 79); visibility: visible;&quot;&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;本文是《Zabbix 7.0 安装部署实战系列》的进阶篇。前几篇我们把平台装好、中文化、做了运维告警大屏。这一篇来解决一个更&amp;quot;生产级&amp;quot;的问题：&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;几百台服务器、上千个网口、几百块磁盘，难道要一台台点、一个个加监控项？&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;答案是：当然不。Zabbix 有两大批量利器——&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;自动发现（Network Discovery）&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;&amp;nbsp;和&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;&lt;span class=&quot;&quot; link-id=&quot;link-1792743778389-0.0387359920870719&quot;&gt;LLD&lt;/span&gt;（Low-Level Discovery，低级发现）&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;。一个管&amp;quot;批量把主机请进门&amp;quot;，一个管&amp;quot;进门后把每个房间自动看一遍&amp;quot;。说实话，能不能玩转这两样，是 Zabbix 从&amp;quot;玩具&amp;quot;变&amp;quot;生产平台&amp;quot;的分水岭。&lt;/span&gt;&lt;/p&gt;&lt;hr style=&quot;margin-top: 20px; margin-bottom: 20px; border-width: 2px 0px 0px; border-style: solid none none; border-color: rgb(238, 242, 245) currentcolor currentcolor; border-image: none 100% / 1 / 0 stretch; border-radius: 2px; visibility: visible;&quot;/&gt;&lt;h2 style=&quot;padding: 1px 12.5px; color: rgb(255, 255, 255); margin: 1.2em 0px 1em; border-radius: 4px; display: inline-block; background-color: rgb(72, 112, 172); font-size: 1.3em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;先把两个概念掰清楚（很多人都现在都没搞懂）&lt;/span&gt;&lt;/h2&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;这两个词经常被混为一谈，但它们解决的是&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;两个完全不同层面&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;的问题。&lt;/span&gt;&lt;/p&gt;&lt;table&gt;&lt;thead style=&quot;visibility: visible;&quot;&gt;&lt;tr style=&quot;visibility: visible;&quot; class=&quot;firstRow&quot;&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;维度&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;自动发现 Network Discovery&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;LLD 低级发现 Low-Level Discovery&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style=&quot;visibility: visible;&quot;&gt;&lt;tr style=&quot;visibility: visible;&quot;&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;解决什么&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; visibility: visible;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;主机从哪来&lt;/strong&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;（批量加主机）&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; visibility: visible;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;监控项怎么批量建&lt;/strong&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;（批量加 Item/Trigger/Graph）&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style=&quot;visibility: visible;&quot;&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;触发时机&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;Server 主动扫描网络&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; visibility: visible;&quot;&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;已纳管主机上定时执行 discovery key&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style=&quot;visibility: visible;&quot;&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; visibility: visible;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;典型场景&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;一个网段里 200 台 Linux 自动入网&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;一台机器上有 20 个挂载点、8 块网卡自动监控&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;配置位置&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;数据采集 → 自动发现&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;模板里的&amp;quot;发现规则&amp;quot;（Discovery）&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;输入&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;IP 段 + 检查项（Agent/ICMP/SNMP）&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;一个返回 JSON 的 discovery key&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;一句话总结：&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;自动发现负责&amp;quot;把机器请进门&amp;quot;，LLD 负责&amp;quot;进门后自动把每个房间都看一遍&amp;quot;。&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;两者配合，才构成完整的&amp;quot;批量纳管&amp;quot;。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;hr style=&quot;margin-top: 20px;margin-bottom: 20px;border-width: 2px 0px 0px;border-style: solid none none;border-color: rgb(238, 242, 245) currentcolor currentcolor;border-image: none;border-radius: 2px;&quot;/&gt;&lt;h2 style=&quot;padding: 1px 12.5px;color: rgb(255, 255, 255);margin: 1.2em 0px 1em;border-radius: 4px;display: inline-block;background-color: rgb(72, 112, 172);font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;自动发现（Network Discovery）实战&lt;/span&gt;&lt;/h2&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;2.1 原理&lt;/span&gt;&lt;/h3&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Zabbix Server 按计划扫描 IP 段&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; │ &amp;nbsp;对每个 IP 执行&amp;quot;检查项&amp;quot;（如连 10050 取 system.uname）&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ▼&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;命中检查 → 产生 Discovery Event&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; │&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ▼&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;匹配&amp;quot;自动发现动作&amp;quot;（Action）的条件&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; │&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ▼&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;执行操作：加主机 + 链接模板 + 加入主机组&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;换句话说，你只要告诉 Server&amp;quot;去扫哪段、用什么检查、命中后套什么模板&amp;quot;，剩下的全自动。&lt;/span&gt;&lt;/p&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;2.2 我这套平台里，其实已经自带了一套&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;翻了下我这台 7.0.31 的环境，默认就有现成的配置，正好：&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;section style=&quot;text-align: center;&quot; nodeleaf=&quot;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100002719&quot; data-ratio=&quot;0.46675191815856776&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023162527_97477.png&quot; data-type=&quot;png&quot; data-w=&quot;1564&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;2&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023162527_97477.png&quot; _width=&quot;677px&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.975px !important;&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1792743894858&quot; data-report-img-idx=&quot;0&quot; data-fail=&quot;0&quot;/&gt;&lt;/section&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;① 发现规则&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; font-size: 0.9em; font-weight: normal; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Local network&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;（druleid=2）&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;thead&gt;&lt;tr class=&quot;firstRow&quot;&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;字段&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;值&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;名称&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;Local network&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;IP 范围&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;code&gt;172.16.88.0/23&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;更新间隔（delay）&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;code&gt;1h&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;检查项类型&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;Zabbix 客户端（type=9）&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;键值&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;code&gt;system.uname&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;端口&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;code&gt;10050&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;② 动作&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; font-size: 0.9em; font-weight: normal; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Auto discovery. Linux servers.&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;（actionid=2，已启用）&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;ul style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;条件&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：&lt;/span&gt;&lt;code&gt;收到值(A)&lt;/code&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;AND&lt;/strong&gt;&lt;code&gt;主机元数据含 &amp;quot;Linux&amp;quot;(B)&lt;/code&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;AND&lt;/strong&gt;&lt;code&gt;检查类型=Zabbix agent(C)&lt;/code&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;操作&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：链接模板&amp;nbsp;&lt;/span&gt;&lt;code&gt;10001&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;（Linux by Zabbix agent）+ 加入主机组&amp;nbsp;&lt;/span&gt;&lt;code&gt;2&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;（Linux servers）&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;你看，官方默认动作已经把&amp;quot;加主机→套模板→分组&amp;quot;这条链路搭好了。你只需要在前端&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;数据采集 → 自动发现&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;里按自己的网段改一下 IP 范围，就能直接用。&lt;/span&gt;&lt;/p&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;2.3 自己从零配一条&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;如果你要新建，字段如下（事件源必须选&amp;quot;自动发现&amp;quot;）：&lt;/span&gt;&lt;/p&gt;&lt;ol style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;发现规则&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：名称自定义；IP 范围填你的网段（如&amp;nbsp;&lt;/span&gt;&lt;code&gt;10.0.0.0/24&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;）；检查项加一条&amp;quot;Zabbix 客户端&amp;quot;，键值&amp;nbsp;&lt;/span&gt;&lt;code&gt;system.uname&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，端口&amp;nbsp;&lt;/span&gt;&lt;code&gt;10050&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;动作（事件源=自动发现）&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：&lt;/span&gt;&lt;section style=&quot;margin-left: 1em;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;• 条件建议加严：除了&amp;quot;收到值&amp;quot;，再加一条&amp;nbsp;&lt;/span&gt;&lt;code&gt;主机元数据 包含 Linux&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，避免把打印机、路由器也收进来。&lt;/span&gt;&lt;/section&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;• 操作加三项：&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;添加主机&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;（operationtype=2）→&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;链接模板&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;（如 Linux by Zabbix agent）→&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;加入主机组&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。&lt;/span&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ol&gt;&lt;blockquote style=&quot;font-size: 0.9em; border-left-width: 3px; border-left-color: rgb(72, 112, 172); padding: 0.5em 1em; margin-bottom: 0px; background: rgb(246, 248, 250); color: rgb(64, 70, 79);&quot;&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;⚠️&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;我的经验&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：IP 范围别一上来就写&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;/16&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;、delay 别设成&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;1m&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;。Server 会真的去扫每一个 IP，范围太大或太频繁会把自己 CPU 打爆。先用一个&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;/24&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;试点，观察&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;zabbix_server&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;负载再扩。&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;hr style=&quot;margin-top: 20px;margin-bottom: 20px;border-width: 2px 0px 0px;border-style: solid none none;border-color: rgb(238, 242, 245) currentcolor currentcolor;border-image: none;border-radius: 2px;&quot;/&gt;&lt;h2 style=&quot;padding: 1px 12.5px;color: rgb(255, 255, 255);margin: 1.2em 0px 1em;border-radius: 4px;display: inline-block;background-color: rgb(72, 112, 172);font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;LLD（低级发现）实战&lt;/span&gt;&lt;/h2&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;3.1 原理&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;LLD 的核心是：一个&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;discovery key&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;返回一个 JSON 数组，Zabbix 用数组里的宏（如&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;{#FSNAME}&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;）去&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;实例化&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;一批&amp;quot;原型&amp;quot;。&lt;/span&gt;&lt;/p&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;discovery key 返回：&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;[{&amp;quot;{#FSNAME}&amp;quot;:&amp;quot;/&amp;quot;,&amp;quot;{#FSTYPE}&amp;quot;:&amp;quot;ext4&amp;quot;},&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;{&amp;quot;{#FSNAME}&amp;quot;:&amp;quot;/home&amp;quot;,&amp;quot;{#FSTYPE}&amp;quot;:&amp;quot;ext4&amp;quot;}]&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; │ &amp;nbsp;提取宏 {#FSNAME}&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ▼&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;自动生成（每个挂载点一份）：&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; 监控项原型 &amp;nbsp;→ &amp;nbsp;Free disk space on {#FSNAME}&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; 触发器原型 &amp;nbsp;→ &amp;nbsp;{#FSNAME} is full (&amp;gt;80%)&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; 图形原型 &amp;nbsp; &amp;nbsp;→ &amp;nbsp;Disk usage {#FSNAME}&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;这就是为什么你套上&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Linux by Zabbix agent&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;模板后，&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;不用配任何磁盘监控项，所有挂载点的空间告警就自动来了&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。&lt;/span&gt;&lt;/p&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;3.2 内置 LLD（真实清单，来自模板 10001）&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;我直接查了&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Linux by Zabbix agent&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;模板里的发现项，至少有这三个开箱即用的：&lt;/span&gt;&lt;/p&gt;&lt;table&gt;&lt;thead&gt;&lt;tr class=&quot;firstRow&quot;&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;discovery key&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;名称&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;用途&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;code&gt;vfs.fs.dependent.discovery&lt;/code&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;Mounted filesystem discovery&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;自动发现所有挂载点&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;code&gt;net.if.discovery&lt;/code&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;Network interface discovery&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;自动发现所有网卡&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;code&gt;vfs.dev.discovery&lt;/code&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;Block devices discovery&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;自动发现所有块设备&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;也就是说，&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;一台新机器只要被自动发现纳管并套了这个模板，它的网卡、磁盘、块设备监控会瞬间自动铺满&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。这就是&amp;quot;批量纳管&amp;quot;的威力。&lt;/span&gt;&lt;/p&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;3.3 自定义 LLD（进阶，业务系统常用）&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;内置的不够用时，自己写一个 discovery 脚本即可。比如自动发现 Nginx 的虚拟主机：&lt;/span&gt;&lt;/p&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span style=&quot;color: #D33682;&quot;&gt;#!/bin/bash&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style=&quot;color: #839496;&quot;&gt;# /etc/zabbix/scripts/nginx_vhosts.sh &amp;nbsp;—— 返回 JSON 数组&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;vhosts=$(nginx -T 2&amp;gt;/dev/null | grep -oP&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;server_name\s+\K[^\s;]+&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;|&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #2AA198;&quot;&gt;sort&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;-u)&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style=&quot;color: #2AA198;&quot;&gt;echo&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;{&amp;quot;data&amp;quot;:[&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;first=1&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;for&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;v&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;in&lt;/span&gt;&lt;span style=&quot;color: #DC322F;&quot;&gt;$vhosts&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;do&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; [&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DC322F;&quot;&gt;$first&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;-eq 0 ] &amp;amp;&amp;amp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #2AA198;&quot;&gt;echo&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;,&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style=&quot;color: #2AA198;&quot;&gt;printf&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;{&amp;quot;{#VHOST}&amp;quot;:&amp;quot;%s&amp;quot;}&amp;#39;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #DC322F;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;$v&lt;/span&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; first=0&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;done&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style=&quot;color: #2AA198;&quot;&gt;echo&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;]}&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;然后在 Agent 配置里暴露它：&lt;/span&gt;&lt;/p&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span style=&quot;color: #839496;&quot;&gt;# /etc/zabbix/zabbix_agent2.conf 或 zabbix_agentd.conf&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;UserParameter&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;=nginx.vhost.discovery,/etc/zabbix/scripts/nginx_vhosts.sh&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;前端在模板里建一条&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;发现规则&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，类型选&amp;quot;Zabbix 客户端&amp;quot;，键值&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;nginx.vhost.discovery&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，再建监控项原型用&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;{#VHOST}&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;宏，完事。&lt;/span&gt;&lt;/p&gt;&lt;blockquote style=&quot;font-size: 0.9em; border-left-width: 3px; border-left-color: rgb(72, 112, 172); padding: 0.5em 1em; margin-bottom: 0px; background: rgb(246, 248, 250); color: rgb(64, 70, 79);&quot;&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;⚠️&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;两个常见坑&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：① JSON 数组里&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;每一项至少要含一个宏&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，且宏名必须和原型里&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;{#XXX}&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;完全一致、大小写敏感；② 返回的必须是合法 JSON，&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;别带多余 echo 日志&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，否则 Zabbix 解析失败整个 LLD 罢工。&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;3.4 用过滤器收敛噪声&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;docker 环境下一台机器可能扫出几十个&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;docker0&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;、&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;vethxxx&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;网卡，全监控纯属浪费。用 LLD 的&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;过滤器（Filter）&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;按宏排除即可，例如正则&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;^docker|^veth|^lo$&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;直接忽略。&lt;/span&gt;&lt;/p&gt;&lt;hr style=&quot;margin-top: 20px;margin-bottom: 20px;border-width: 2px 0px 0px;border-style: solid none none;border-color: rgb(238, 242, 245) currentcolor currentcolor;border-image: none;border-radius: 2px;&quot;/&gt;&lt;h2 style=&quot;padding: 1px 12.5px;color: rgb(255, 255, 255);margin: 1.2em 0px 1em;border-radius: 4px;display: inline-block;background-color: rgb(72, 112, 172);font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;两者怎么配合：完整的&amp;quot;批量纳管&amp;quot;闭环&lt;/span&gt;&lt;/h2&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;这是最关键的一张图，也是整套机制的价值所在：&lt;/span&gt;&lt;/p&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;新 Linux 机器上电&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; │&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ▼&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;① 自动发现扫描命中 → Action 把它加为&amp;quot;主机&amp;quot;并套 Linux by Zabbix agent 模板&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; │&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ▼&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;② 模板里的 LLD 立即工作：自动发现这台机器的所有网卡 / 挂载点 / 块设备&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; │&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ▼&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;③ 监控项原型 + 触发器原型被实例化 → 磁盘满了会告警、网卡掉了会告警&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; │&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ▼&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;零手工，一台生产机的完整监控就绪 ✅&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;你看，&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;&amp;quot;加主机&amp;quot;和&amp;quot;加监控项&amp;quot;这两件最累的活，被一条自动发现规则 + 一个带 LLD 的模板一次性包圆了&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。200 台机器？把 IP 范围写对，喝杯咖啡回来就齐了。&lt;/span&gt;&lt;/p&gt;&lt;hr style=&quot;margin-top: 20px;margin-bottom: 20px;border-width: 2px 0px 0px;border-style: solid none none;border-color: rgb(238, 242, 245) currentcolor currentcolor;border-image: none;border-radius: 2px;&quot;/&gt;&lt;h2 style=&quot;padding: 1px 12.5px;color: rgb(255, 255, 255);margin: 1.2em 0px 1em;border-radius: 4px;display: inline-block;background-color: rgb(72, 112, 172);font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;避坑指南&lt;/span&gt;&lt;/h2&gt;&lt;ol style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;扫描范围过大 / 间隔过短&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;→ Server 性能雪崩。&lt;/span&gt;&lt;code&gt;/24&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;起步，&lt;/span&gt;&lt;code&gt;delay&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;别低于&amp;nbsp;&lt;/span&gt;&lt;code&gt;30m&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;（首次发现可临时调快，平时调回）。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;动作条件太宽&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;→ 把同事电脑、打印机、路由器全纳管了。务必加&amp;nbsp;&lt;/span&gt;&lt;code&gt;主机元数据 包含 Linux&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;或限定检查类型。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;LLD 宏名大小写不一致&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;→&amp;nbsp;&lt;/span&gt;&lt;code&gt;{#Fsname}&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;和&amp;nbsp;&lt;/span&gt;&lt;code&gt;{#FSNAME}&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;不是一回事，原型不生效还不报错，排查半天。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;自定义脚本带多余输出&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;→ LLD 只认纯 JSON，脚本里&amp;nbsp;&lt;/span&gt;&lt;code&gt;echo &amp;quot;debug...&amp;quot;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;会直接让 discovery 失效。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;噪声太多&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;→ docker / 虚拟网卡 / loopback 用&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;过滤器&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;排除，否则监控项爆炸、采集变慢。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;自动发现加的主机默认只采集 Agent 数据&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;→ 想要端口、Web、证书等深度监控，还是得靠模板里的 LLD + 普通监控项组合，或像前面 OA/官网那样单独配。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Fri, 23 Oct 2026 16:25:11 +0800</pubDate></item><item><title>Zabbix 8.0 前瞻：7→8 跨越与部署实战</title><link>https://kinber.cn/post/6822.html</link><description>&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;说实话，用什么版本真的那么重要吗？不一定&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;用的好用的稳定才是第一位，但是确实可以聊一下，因为做技术的还是很好奇。现在8.0 LTS官宣&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;计划 2026 年 11 月发布&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;。所以我们先把 7 和 8 的核心区别一次性讲清楚&lt;/span&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;先说结论：Zabbix 8 不是 7 的小修小补，而是从&amp;quot;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;指标监控系统&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;&amp;quot;向&amp;quot;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;全栈可观测平台&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;&amp;quot;的跨越。最关键的三个词——&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;OpenTelemetry、&lt;span class=&quot;&quot; link-id=&quot;link-1792743628912-0.5954319493055404&quot;&gt;复杂事件处理&lt;/span&gt;（CEP）、官方移动 App&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;。懂行的已经知道分量了。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;Zabbix 7.0 LTS 是 2024 年 6 月发布的长期支持版，主打异步 poller、Proxy 高可用、浏览器合成监控、原生 SLA 等，把传统基础设施监控做到了成熟稳定。而 8.0 的目标，按官方路线图的说法，是&amp;quot;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;把 Zabbix 进化为现代化的开放可观测平台&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;&amp;quot;。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;本文内容基于 Zabbix 官方 8.0 what&amp;#39;s new 文档与产品路线图（功能均标注 Ready），&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;8.0 正式发布后，个别包名/参数请以官方文档为准（文末已标注）&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;。如果你的生产还在 7.0，别慌——7.0 LTS 仍有数年支持周期，看完这篇你再决定什么时候升。&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;padding: 1px 12.5px;color: rgb(255, 255, 255);margin: 1.2em 0px 1em;border-radius: 4px;display: inline-block;background-color: rgb(72, 112, 172);font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;技术详解&lt;/span&gt;&lt;/h2&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Zabbix 7 vs 8：核心区别全景&lt;/span&gt;&lt;/h3&gt;&lt;table&gt;&lt;thead&gt;&lt;tr class=&quot;firstRow&quot;&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;维度&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;Zabbix 7.0 LTS&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;Zabbix 8.0 LTS&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;监控范式&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;以指标为主（CPU/内存/磁盘/SNMP/JMX）&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;全栈可观测：指标 + 日志 + 链路（APM）&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;OpenTelemetry&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;OTel 指标经 agent/collector 采集，无原生链路&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;原生支持 OTel Traces 与 Logs，专属 APM 视图&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;事件管理&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;触发器关联 + 基础去重&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;复杂事件处理（CEP）：滑动时间窗、去重、自动关闭、JS 富化、SIEM 级关联&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;移动端&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;无官方 App&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;官方 iOS/Android App，推送通知 + 问题管理&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;AI 能力&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;无&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;官方 MCP Server，AI Agent 可用自然语言管监控&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;数据结构&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;结构化数据支持有限&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;原生 JSON 数据类型 + Shared Data&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;前端体验&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;改进但偏复杂&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;深蓝主题、内联校验、仪表盘导入导出、散点图&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;后端/性能&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;MySQL/PostgreSQL&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;新增 ClickHouse 历史后端；百万级每秒采集&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;下面挑重点逐条讲，不然光看表没感觉。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;1. 从&amp;quot;看指标&amp;quot;到&amp;quot;看全栈&amp;quot;：OpenTelemetry 原生化&lt;/strong&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;7.0 时代，Zabbix 主要是拉指标的——Agent、SNMP、&lt;span class=&quot;&quot; link-id=&quot;link-1792743628912-0.17931214417289687&quot;&gt;JMX&lt;/span&gt;、Prometheus 这些。微服务、容器、Serverless 这类动态环境，要么靠额外的 Jaeger 看链路、靠 &lt;span class=&quot;&quot; link-id=&quot;link-1792743628913-0.1086970931158765&quot;&gt;Elastic Stack&lt;/span&gt; 看日志，Zabbix 管不全。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;8.0 直接把&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;OpenTelemetry 收编进来了&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：Proxy 新增 APM 监听（OTLP/gRPC），能接收应用或 OTel Collector 发来的遥测数据；前端新增&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;APM 菜单&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;和&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;链路追踪可视化视图&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;；后台还能接&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;ClickHouse&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;作为遥测/历史数据存储。一句话，Previously 你要三件套，现在一个 Zabbix 顶上。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;2. 复杂事件处理（CEP）：告别告警风暴&lt;/strong&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;这是我个人最看重的升级。7.0 的告警强，但大规模环境里&amp;quot;同一个故障刷出几十条&amp;quot;的告警疲劳很难根治。8.0 引入&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;CEP 引擎&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，基于&amp;quot;滑动时间窗&amp;quot;做规则化事件处理：&lt;/span&gt;&lt;/p&gt;&lt;ul style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;把同一根因的相关事件归组，标记首因为&amp;quot;因&amp;quot;、其余为&amp;quot;果&amp;quot;（症状）；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;设定事件存活期（TTL），过期自动关闭；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;限制某类事件数量，或对&amp;quot;某时段内发生太多次/一次都没发生&amp;quot;做通知；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;事件进入/离开时间窗时可做富化：升降级严重度、加标签、抑制，甚至用&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;自定义 JavaScript&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;处理；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;官方明确说这能支撑&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;欺诈检测、安全监控（SIEM）、事件关联&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;等场景。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;说白了，8.0 的事件引擎已经摸到商业 AIOps 的门槛了。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;3. 官方移动 App：&lt;span class=&quot;&quot; link-id=&quot;link-1792743628912-0.21761129855451344&quot;&gt;NOC&lt;/span&gt; 装进口袋&lt;/strong&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;7.0 被吐槽最多的就是&amp;quot;没有官方手机端&amp;quot;。8.0 补上了：iOS/Android 原生 App，支持推送通知、查看问题详情、更新问题状态。配套新增了一个&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;Bridge adapter&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;组件负责 Server 和 App 通信（配置项&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;BridgeAdapterURL&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;、&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;EnableMobileDevices&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;），以及名为&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;Push notification&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;的媒介类型。以后半夜告警，手机上就能 ack，不用爬起来开电脑。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;4. MCP Server：用大白话问监控&lt;/strong&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;8.0 新增官方&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;MCP Server&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，通过 Model Context Protocol 把 AI Agent 接到 Zabbix。你可以用自然语言问：&amp;quot;数据库服务器上还有哪些未确认的问题？&amp;quot;&amp;quot;为什么 web-01 今早一直报问题？&amp;quot;&amp;quot;今晚 22:00 到 02:00 把 Linux servers 组置为维护&amp;quot;。Agent 用 Zabbix API Token 鉴权，权限与审计都跟着 Token 所有者走。这是把 AI 真正接进运维闭环的一步。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;5. JSON 数据类型与 Shared Data&lt;/strong&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;以前 JSON 只能当文本采集，限 64KB，还不能校验。8.0 支持&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;原生 JSON 值类型&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，上限 128MiB，还会拒绝非法 JSON。配合&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;Shared Data&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;（多个监控项共享一次采集结果，比如一次性拿到 API token 给几百个项用），在容器化、动态环境里能省大量重复采集。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;6. 前端与性能安全的一堆&amp;quot;体感&amp;quot;升级&lt;/strong&gt;&lt;/p&gt;&lt;ul style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;新增&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;深蓝主题&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，可在用户配置里设默认；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;内联表单校验&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;、仪表盘&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;跨系统导入导出&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;、新增&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;散点图部件&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;、图表 Y 轴可反转、问题列表等表格视图可自定义列；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;性能上&amp;quot;百万级数据点每秒&amp;quot;、SNMP 采集更快、Server 启动更快、PostgreSQL 支持多主机故障转移、SNMPv3 EngineID 缓存复用；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;安全上：代理/代理组可按用户组授权、SAML 证书可 UI 直接上传、支持 HashiCorp Vault AppRole、审计日志可导出 CSV、Agent 新增&amp;nbsp;&lt;/span&gt;&lt;code&gt;AllowKeyRegexp&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;/&lt;/span&gt;&lt;code&gt;DenyKeyRegexp&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;正则管控。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ul&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Zabbix 8.0 安装部署实战（Ubuntu 22.04）&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;下面这套以&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;Ubuntu 22.04 LTS&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;为环境、后端&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;MySQL 8.0&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;、前端&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;Nginx + PHP-FPM&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，整体链路和 7.0 一致，我把 8.0 的新组件单独拎出来讲。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;环境准备与数据库&lt;/strong&gt;&lt;/p&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span style=&quot;color: #2AA198;&quot;&gt;sudo&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;apt update &amp;amp;&amp;amp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #2AA198;&quot;&gt;sudo&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;apt upgrade -y&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style=&quot;color: #2AA198;&quot;&gt;sudo&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;apt install -y mysql-server&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style=&quot;color: #2AA198;&quot;&gt;sudo&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;systemctl&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #2AA198;&quot;&gt;enable&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;--now mysql&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style=&quot;color: #2AA198;&quot;&gt;sudo&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;mysql_secure_installation&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;CREATE&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;DATABASE zabbix&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;CHARACTER&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;SET&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;utf8mb4&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;COLLATE&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;utf8mb4_bin;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;CREATE&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;USER&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;zabbix&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;@&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;localhost&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;IDENTIFIED&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;BY&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;Zabbix@Strong2026&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;GRANT&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;ALL&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;PRIVILEGES&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;ON&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;zabbix.&lt;/span&gt;&lt;span style=&quot;opacity: 0.7;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;*&lt;/span&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;TO&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;zabbix&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;@&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;localhost&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;SET&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;GLOBAL&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;log_bin_trust_function_creators&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;opacity: 0.7;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;1&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;; &amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #839496;&quot;&gt;-- 导入函数需要，导入后关回 0&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;FLUSH PRIVILEGES;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;添加 8.0 仓库并安装组件&lt;/strong&gt;&lt;/p&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span style=&quot;color: #839496;&quot;&gt;# 包名/修订号以 8.0 正式发布时官方下载页为准（有待验证）&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;wget https://repo.zabbix.com/zabbix/8.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_8.0-1+ubuntu22.04_all.deb&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style=&quot;color: #2AA198;&quot;&gt;sudo&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;dpkg -i zabbix-release_8.0-1+ubuntu22.04_all.deb&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style=&quot;color: #2AA198;&quot;&gt;sudo&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;apt update&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style=&quot;color: #2AA198;&quot;&gt;sudo&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;apt install -y zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-sql-scripts zabbix-agent2&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;导入数据库&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;（和 7.0 一样，单文件合并版）：&lt;/span&gt;&lt;/p&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql -uzabbix -p zabbix&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;SET&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;GLOBAL&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;log_bin_trust_function_creators&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;opacity: 0.7;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;0&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;; &amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #839496;&quot;&gt;-- 用完关回&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;配置 Server 与前端&lt;/strong&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;/etc/zabbix/zabbix_server.conf&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;填库密码：&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;DBPassword=Zabbix@Strong2026&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;；PHP 时区在&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;/etc/zabbix/php-fpm.conf&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;把&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Europe/Riga&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;改成&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Asia/Shanghai&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;。官方 Nginx 默认仍监听&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;8080&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，访问地址&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;http://IP:8080/zabbix&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;。&lt;/span&gt;&lt;/p&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span style=&quot;color: #2AA198;&quot;&gt;sudo&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;systemctl&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #2AA198;&quot;&gt;enable&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;--now zabbix-server zabbix-agent2 nginx php8.1-fpm&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;Web 向导与首台主机&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：浏览器打开&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;http://IP:8080/zabbix&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;走 4 步向导；默认&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Admin&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;/&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;zabbix&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，登录先改密码、顺手在 User settings 里把语言切中文。被监控机装&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;zabbix-agent2&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;、改&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Server&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;/&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;ServerActive&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;/&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Hostname&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;三项，&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;systemctl&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;拉起后，在 Web&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;配置 → 主机 → 创建主机&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;链接&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;Linux by Zabbix agent 2&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;模板即可。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;8.0 三个新组件（按需启用，非必须）&lt;/strong&gt;&lt;/p&gt;&lt;ul style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;ClickHouse 遥测后端&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：超大规模/海量链路日志场景才需要，普通部署用 MySQL/PostgreSQL 即可；启用需在&amp;nbsp;&lt;/span&gt;&lt;code&gt;Administration &amp;gt; Data source&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;配 ClickHouse，详见官方 ClickHouse 配置文档。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;移动 App Bridge&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：要上手机端，就配&amp;nbsp;&lt;/span&gt;&lt;code&gt;BridgeAdapterURL&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;、&lt;/span&gt;&lt;code&gt;EnableMobileDevices=1&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，并在前端配 Push notification 媒介。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;MCP Server&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：想接 AI，安装官方&amp;nbsp;&lt;/span&gt;&lt;code&gt;zabbix-mcp&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;包、用 API Token 启动，具体参数以 8.0 正式文档为准（有待验证）。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;我个人认为，Zabbix 8 的战略意义在于&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;把&amp;quot;监控&amp;quot;升级为&amp;quot;可观测 + 智能运维中枢&amp;quot;&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。对已经在用 7.0 的团队，CEP 和移动 App 是立刻能降本增效的两块；对还在 6.0/老版本的朋友，8.0 是一个&amp;quot;一步到位&amp;quot;的升级目标——反正都要升，不如直接规划到 8.0 LTS。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;代价也得说清楚：8.0 能力更强，但 ClickHouse、MCP、CEP 这些新模块都意味着&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;更高的学习与运维复杂度&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，小环境未必用得上全部。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;我的经验是先把核心监控跑稳，新特性按需点亮，别一上来全开&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;。&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;padding: 1px 12.5px;color: rgb(255, 255, 255);margin: 1.2em 0px 1em;border-radius: 4px;display: inline-block;background-color: rgb(72, 112, 172);font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;建议&lt;/span&gt;&lt;/h2&gt;&lt;ol style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;新装直接等 8.0 LTS，存量别急着动&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：生产在 7.0 的，等 8.0 GA 后灰度验证再升；全新环境建议直接上 8.0 LTS，省一轮升级。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;发布前核对官方包名&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：8.0 正式发布时，&lt;/span&gt;&lt;code&gt;zabbix-release&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;的修订号、PHP 最低版本（前端要求以官方为准，有待验证）可能微调，照官方文档执行最稳妥。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;数据库独立 + 定期备份&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：无论 7 还是 8，&lt;/span&gt;&lt;code&gt;mysqldump&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;备份 zabbix 库 +&amp;nbsp;&lt;/span&gt;&lt;code&gt;/etc/zabbix/&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;目录是保命操作；上 ClickHouse 后备份策略要重新设计。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;优先 agent2 + 主动模式&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：跨网段/云安全组用&amp;nbsp;&lt;/span&gt;&lt;code&gt;ServerActive&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，agent 只出方向连 10051，减少入站暴露。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;CEP 规则从小处试起&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：先拿一两类高频告警做去重/自动关闭，跑顺了再铺开，避免规则写错把真告警吞了。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;到这儿，Zabbix 7 与 8 的区别、以及 8.0 的部署路径你应该心里有数了。8.0 把监控的边界从&amp;quot;指标&amp;quot;推到了&amp;quot;指标+日志+链路+AI&amp;quot;，是个值得等的版本。等 11 月正式发布，我可以再出一篇&amp;quot;7.0 平滑升级 8.0&amp;quot;的实战，把升级里的坑提前给你排了。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;本文信息截至 2026-10-17，功能以 Zabbix 官方 8.0 LTS 文档为准；个别未 GA 的包名/参数已标注&amp;quot;有待验证&amp;quot;。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Fri, 23 Oct 2026 16:22:29 +0800</pubDate></item><item><title>Zabbix7告警之钉钉企微告警配置指导</title><link>https://kinber.cn/post/6821.html</link><description>&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;我们前几篇把吐槽最多的坑补齐了，并且机器也纳管进来了，大屏也投上了。&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;但是，有个重点的事情每有做-有效的监控没有做。&lt;/strong&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;我的邮箱里至今躺着几千封告警邮件，删都没删过，但也没怎么看过。真正让监控产生价值的那一刻，是告警日志发送&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;到运维同事的手机上、并且他愿意点开&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;所以这篇讲的是：&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;怎么把 &lt;span class=&quot;&quot; link-id=&quot;link-1792743611950-0.03165162238864294&quot;&gt;Zabbix&lt;/span&gt; 的告警精准送到钉钉群和企业微信群里&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;。我会给你可复制的 Webhook 脚本、逐项的参数表、路由矩阵，以及一张我整理的排错清单。&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;padding: 1px 12.5px; color: rgb(255, 255, 255); margin: 1.2em 0px 1em; border-radius: 4px; display: inline-block; background-color: rgb(72, 112, 172); font-size: 1.3em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;Zabbix 到 IM 群，一共三跳&lt;/span&gt;&lt;/h2&gt;&lt;p&gt;&lt;section style=&quot;margin: 1em 0px; visibility: visible;&quot; nodeleaf=&quot;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-ratio=&quot;0.43333333333333335&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023162042_74735.png&quot; data-w=&quot;1080&quot; style=&quot;margin: 0px auto; display: block; height: auto !important; visibility: visible !important; width: 676.987px !important;&quot; data-original-style=&quot;max-width: 100%;height: auto;margin: 0px auto;display: block;&quot; data-index=&quot;2&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023162042_74735.png&quot; _width=&quot;677px&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1792743611982&quot; data-report-img-idx=&quot;0&quot; data-fail=&quot;0&quot;/&gt;&lt;/section&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;整条链路就这五步，每一步都可能断：&lt;/span&gt;&lt;/p&gt;&lt;ol style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;触发器亮红灯&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;→ 2.&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;动作（Action）匹配成功&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;→ 3.&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;媒介类型（Media type）被调用&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;→ 4.&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;HTTP 请求打到机器人&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;→ 5.&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;群里出现消息&lt;/strong&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;我见过最多的问题是：&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;第 2 步没配、第 4 步签名错、第 5 步把自己限流了&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。下面逐个拆。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;先说清楚一条红线，钉钉和企微都一样：&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;每个机器人每分钟最多 20 条消息&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。钉钉超了&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;限流 10 分钟&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，企微直接给你&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;45009 api freq out of limit&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;。注意，限流恰恰发生在故障最密集、你最需要它的那一刻——这条决定了下面所有的设计思路。&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;padding: 1px 12.5px;color: rgb(255, 255, 255);margin: 1.2em 0px 1em;border-radius: 4px;display: inline-block;background-color: rgb(72, 112, 172);font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;方案选型：三条路，我推荐第二条&lt;/span&gt;&lt;/h2&gt;&lt;table&gt;&lt;thead&gt;&lt;tr class=&quot;firstRow&quot;&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;方案&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;做法&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;优点&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;缺点&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;邮件转发&lt;/strong&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;发到 QQ/163 再走邮件提醒&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;零配置&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;送达慢、易被当作垃圾邮件、基本没人看&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;Webhook 媒介类型&lt;/strong&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;（推荐）&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;Zabbix 7.0 原生 JS 脚本，界面里填&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;不用往服务器放文件、界面可维护、自带测试按钮&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;JS 环境是 Duktape，有些库没有&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;自定义告警脚本&lt;/strong&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;Python 脚本放&amp;nbsp;&lt;/span&gt;&lt;code&gt;AlertScriptsPath&lt;/code&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;完全可控，能做代理、重试、落盘日志、消息合并&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;要管文件权限、属主、SELinux&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;我个人推荐&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;Webhook 媒介类型&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：媒介类型在数据库里跟着备份走，不用 ssh 上去找脚本文件；需要复杂逻辑（比如代理、重试、聚合）再走 Python 脚本方案，文章后面也给了。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;（我现在用的很多企业为微信的消息推送，也是webhook，这个是最简单的方式，只需要提供接口和需要传输的信息就好了，个人认为很方便。）&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;h2 style=&quot;padding: 1px 12.5px;color: rgb(255, 255, 255);margin: 1.2em 0px 1em;border-radius: 4px;display: inline-block;background-color: rgb(72, 112, 172);font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;第一站：把机器人建出来&lt;/span&gt;&lt;/h2&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;钉钉：群 &amp;gt; 群设置 &amp;gt; 智能群助手 &amp;gt; 添加机器人 &amp;gt; 自定义&lt;/span&gt;&lt;/h3&gt;&lt;p&gt;&lt;section style=&quot;text-align: center;&quot; nodeleaf=&quot;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100002660&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023162043_78368.png&quot; data-type=&quot;png&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;3&quot; data-ratio=&quot;0.5184804928131417&quot; data-w=&quot;974&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023162043_78368.png&quot; _width=&quot;677px&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.975px !important;&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1792743619406&quot; data-report-img-idx=&quot;1&quot; data-fail=&quot;0&quot;/&gt;&lt;/section&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; text-align: center;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;上图是钉钉的webhook设置页面&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;创建完给两样东西，都存好：&lt;/span&gt;&lt;/p&gt;&lt;ul style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;Webhook 地址&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：形如&amp;nbsp;&lt;/span&gt;&lt;code&gt;https://oapi.dingtalk.com/robot/send?access_token=xxxxx&lt;/code&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;加签密钥&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：&lt;/span&gt;&lt;code&gt;SEC&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;开头的一串（&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;只显示一次，关了就再也看不到&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;）&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;安全设置有三种，选型建议一并给你：&lt;/span&gt;&lt;/p&gt;&lt;table&gt;&lt;thead&gt;&lt;tr class=&quot;firstRow&quot;&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;方式&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;说明&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;我的评价&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;自定义关键词&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;消息里必须含某个词&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;不推荐&lt;/strong&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;，知道了 URL 就能伪造&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;加签&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;HMAC-SHA256 签名&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;推荐&lt;/strong&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;，不依赖固定 IP&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;IP 白名单&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;只允许指定出口 IP&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;出口 IP 固定的话可以叠加用&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;企业微信：群 &amp;gt; 右上角「三个点」&amp;gt; 消息推送 &amp;gt; 添加&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;官方现在叫「消息推送」（早些年的名字是&amp;quot;群机器人&amp;quot;），拿到形如&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxxx&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;的地址。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;企微这边有几个硬约束要提前知道：&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;外部群不支持添加，必须是纯企业微信群&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;；&lt;span class=&quot;&quot; link-id=&quot;link-1792743611951-0.7909646967966185&quot;&gt;Markdown&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;不支持表格和图片&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;；&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;没有加签机制&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，所以 Webhook 地址本身就是凭证，&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;别截图发群里、别提交到代码仓库&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;padding: 1px 12.5px;color: rgb(255, 255, 255);margin: 1.2em 0px 1em;border-radius: 4px;display: inline-block;background-color: rgb(72, 112, 172);font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Zabbix 侧的 Webhook 媒介类型&lt;/span&gt;&lt;/h2&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;路径：&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;告警 → 媒介 → 创建媒介类型&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;（部分版本在「管理 → 报警媒介类型」）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;section style=&quot;text-align: center;&quot; nodeleaf=&quot;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100002661&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023162044_44154.png&quot; data-type=&quot;png&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;4&quot; data-ratio=&quot;0.5964705882352941&quot; data-w=&quot;850&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023162044_44154.png&quot; _width=&quot;677px&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.975px !important;&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1792743619783&quot; data-report-img-idx=&quot;2&quot; data-fail=&quot;0&quot;/&gt;&lt;/section&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;类型选&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;Webhook&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，参数按下表填（顺序无所谓，名字要对得上）：&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;钉钉脚本（带加签，可直接复制）&lt;/span&gt;&lt;/p&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;try&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;{&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;Zabbix&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;Log&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;4&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;[DingTalk] webhook value: &amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ value);&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;var&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;params =&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;JSON&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;parse&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(value),&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; req =&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;new&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;HttpRequest&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(),&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; resp;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #839496;&quot;&gt;// 1) 加签：把 timestamp + &amp;quot;\n&amp;quot; + secret 做 HMAC-SHA256&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;var&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;timestamp =&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;Date&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;now&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;().&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;toString&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;();&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;var&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;stringToSign = timestamp +&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;\n&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ params.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;secret&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #839496;&quot;&gt;// 坑点：Zabbix 的 hmac() 返回的是十六进制字符串，钉钉要的是 Base64&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;var&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;hexDigest =&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;hmac&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;sha256&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;, params.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;secret&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;, stringToSign);&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;var&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;bin =&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;for&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;(&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;var&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;i =&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;0&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;; i &amp;lt; hexDigest.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;length&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;; i +=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;2&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;) {&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; bin +=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;String&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;fromCharCode&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #2AA198;&quot;&gt;parseInt&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(hexDigest.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;substr&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(i,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;2&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;),&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;16&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;));&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;var&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;sign =&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #2AA198;&quot;&gt;encodeURIComponent&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;btoa&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(bin));&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #839496;&quot;&gt;// 2) 拼接签名后的 URL&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;var&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;url = params.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;webhook_url&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;&amp;amp;timestamp=&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ timestamp +&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;&amp;amp;sign=&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ sign;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #839496;&quot;&gt;// 3) 组装 markdown 消息&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;var&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;data = {&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;msgtype&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;:&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;markdown&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;,&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;markdown&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;: {&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;title&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;: params.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;subject&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;text&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;: params.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;message&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;},&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;at&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;: {&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;atMobiles&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;: [],&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;isAtAll&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;:&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;false&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;}&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; };&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;if&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;(params.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;at_mobiles&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;) {&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;var&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;mobiles = params.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;at_mobiles&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;split&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;,&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;),&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; atText =&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;for&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;(&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;var&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;j =&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;0&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;; j &amp;lt; mobiles.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;length&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;; j++) {&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; atText = atText +&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39; @&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ mobiles[j];&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; data.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;at&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;atMobiles&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;= mobiles;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; data.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;markdown&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;text&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;= params.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;message&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;\n\n&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ atText;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; req.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;addHeader&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;Content-Type: application/json&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;);&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; resp = req.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;post&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(url,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;JSON&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;stringify&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(data));&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;Zabbix&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;Log&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;4&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;[DingTalk] HTTP &amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ req.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;getStatus&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;() +&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39; resp: &amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ resp);&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;if&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;(req.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;getStatus&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;() &amp;lt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;200&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;|| req.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;getStatus&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;() &amp;gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;299&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;) {&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;throw&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;HTTP status &amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ req.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;getStatus&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;();&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #839496;&quot;&gt;// HTTP 200 也可能是业务失败，必须看 errcode&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;var&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;ret =&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;JSON&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;parse&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(resp);&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;if&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;(ret.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;errcode&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;!==&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;0&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;) {&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;throw&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;DingTalk errcode &amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ ret.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;errcode&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;: &amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ ret.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;errmsg&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;return&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;JSON&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;stringify&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;({&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;tags&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;: {&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;result&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;:&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;ok&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;} });&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;}&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;catch&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;(error) {&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;Zabbix&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;Log&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;4&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;[DingTalk] send failed: &amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ error);&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;throw&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;DingTalk send failed: &amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ error;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;}&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;这里有两个坑我一并说了&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：一是&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;hmac()&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;返回十六进制而钉钉要 Base64，必须转换，不然永远返回&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;310000&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;；二是时间戳要求&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;毫秒级&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，而且服务器时间漂太多签名会失效，&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;务必给 Zabbix 服务器配上 &lt;span class=&quot;&quot; link-id=&quot;link-1792743611952-0.09932294812191067&quot;&gt;NTP&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。&lt;/span&gt;&lt;/p&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;企业微信脚本（无需加签）&lt;/span&gt;&lt;/h3&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;try&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;{&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;Zabbix&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;Log&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;4&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;[WeCom] webhook value: &amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ value);&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;var&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;params =&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;JSON&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;parse&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(value),&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; req =&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;new&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;HttpRequest&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(),&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; data = {&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;msgtype&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;:&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;markdown&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;,&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;markdown&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;: {&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;content&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;:&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;### &amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ params.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;subject&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;\n&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ params.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;message&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;}&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; };&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #839496;&quot;&gt;// 需要 @ 人时填手机号（多个用英文逗号分隔）&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;if&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;(params.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;at_mobiles&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;) {&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; data.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;markdown&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;mentioned_mobile_list&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;= params.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;at_mobiles&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;split&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;,&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;);&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; req.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;addHeader&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;Content-Type: application/json&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;);&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;var&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;resp = req.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;post&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(params.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;webhook_url&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;JSON&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;stringify&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(data));&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;Zabbix&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;Log&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;4&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;[WeCom] HTTP &amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ req.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;getStatus&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;() +&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39; resp: &amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ resp);&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;var&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;ret =&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;JSON&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;parse&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(resp);&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;if&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;(ret.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;errcode&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;!==&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;0&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;) {&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;throw&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;WeCom errcode &amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ ret.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;errcode&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;: &amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ ret.&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;errmsg&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;return&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;JSON&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #268BD2;&quot;&gt;stringify&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;({&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;tags&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;: {&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;result&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;:&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;ok&amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;} });&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;}&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;catch&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;(error) {&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;Zabbix&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #B58900;&quot;&gt;Log&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;4&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;[WeCom] send failed: &amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ error);&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #6C71C4;&quot;&gt;throw&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #859900;&quot;&gt;&amp;#39;WeCom send failed: &amp;#39;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+ error;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;}&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;blockquote style=&quot;font-size: 0.9em; border-left-width: 3px; border-left-color: rgb(72, 112, 172); padding: 0.5em 1em; margin-bottom: 0px; background: rgb(246, 248, 250); color: rgb(64, 70, 79);&quot;&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;注：企微 @ 人的字段名（&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;mentioned_mobile_list&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;/&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;mentioned_list&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;）以官方文档为准，如有变化请自行调整。&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;配完别急着闭环，&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;媒介类型列表那一行右侧有个「测试」按钮&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，点它会让你填参数，能当场看到返回值——这是排查问题最快的方式。&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;padding: 1px 12.5px;color: rgb(255, 255, 255);margin: 1.2em 0px 1em;border-radius: 4px;display: inline-block;background-color: rgb(72, 112, 172);font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;消息模板别再写ABC&lt;/span&gt;&lt;/h2&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;切到媒介类型的「&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;消息模板&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;」标签页，分别给 Problem（故障）、Problem recovery（恢复）、Problem update（更新）配内容。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;section style=&quot;text-align: center;&quot; nodeleaf=&quot;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100002662&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023162045_80867.png&quot; data-type=&quot;png&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;5&quot; data-ratio=&quot;0.48774795799299886&quot; data-w=&quot;857&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023162045_80867.png&quot; _width=&quot;677px&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.987px !important;&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1792743621190&quot; data-report-img-idx=&quot;3&quot; data-fail=&quot;0&quot;/&gt;&lt;/section&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;故障标题：&lt;/strong&gt;&lt;/p&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;故障 ｛TRIGGER.SEVERITY｝：｛HOST.NAME｝ ｛TRIGGER.NAME｝&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;故障正文（Markdown）：&lt;/strong&gt;&lt;/p&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;**【告警】｛EVENT.SEVERITY｝**&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;gt; 主机：｛HOST.NAME｝&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;gt; 时间：｛EVENT.DATE｝ ｛EVENT.TIME｝&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;gt; 详情：｛TRIGGER.NAME｝&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;gt; 当前值：｛ITEM.LASTVALUE｝&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;gt; 事件ID：｛EVENT.ID｝&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;gt; 处理：到 监测-问题 里按事件ID检索&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;（文中为了避开渲染，宏用了全角花括号，&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;实际请换成英文半角的&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; font-size: 0.9em; font-weight: normal; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;{ }&lt;/span&gt;&lt;/code&gt;&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;）&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;恢复正文&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;照猫画虎，但一定要带上&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;持续时长&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;宏，方便事后复盘 MTTR。&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;padding: 1px 12.5px;color: rgb(255, 255, 255);margin: 1.2em 0px 1em;border-radius: 4px;display: inline-block;background-color: rgb(72, 112, 172);font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Actions 才是&amp;quot;精准&amp;quot;的关键&lt;/span&gt;&lt;/h2&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;前面全是&amp;quot;怎么发&amp;quot;，这一段才是&amp;quot;发给谁&amp;quot;。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;路径：&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;告警 → 动作 → 触发器动作 → 创建动作&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;参考这张路由矩阵去配多条动作：&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;section style=&quot;margin: 1em 0px;&quot; nodeleaf=&quot;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-ratio=&quot;0.55&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023162046_51415.png&quot; data-w=&quot;1080&quot; style=&quot;margin: 0px auto; display: block; height: auto !important; visibility: visible !important; width: 677px !important;&quot; data-original-style=&quot;max-width: 100%;height: auto;margin: 0px auto;display: block;&quot; data-index=&quot;6&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023162046_51415.png&quot; _width=&quot;677px&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1792743621722&quot; data-report-img-idx=&quot;4&quot; data-fail=&quot;0&quot;/&gt;&lt;/section&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;具体怎么落地，我给你一套规则：&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;条件（Conditions）怎么组合&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;thead&gt;&lt;tr class=&quot;firstRow&quot;&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;场景&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;条件写法&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;只要核心业务&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;code&gt;主机组 等于 Linux-Payment&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;只要中等级以上&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;code&gt;触发器严重性 大于等于 Average&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;按业务线路由&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;code&gt;标签名 等于 scope&lt;/code&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;+&amp;nbsp;&lt;/span&gt;&lt;code&gt;标签值 等于 支付&lt;/code&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;排除演练机&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;code&gt;主机名称 包含 test&lt;/code&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;取反&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;前提是你在主机上打好了标签（主机 → 标签），比如&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;scope: 支付&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;、&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;owner: 张三&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;。&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;标签是这套精准路由的地基&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，前面几篇纳管主机时顺手打上最省事。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;操作（Operations）三个都不能漏&lt;/strong&gt;&lt;/p&gt;&lt;ol style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;Operations&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：发给对应媒介/用户组。同时打开&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;阶梯升级&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，比如「步骤 1-2 每 10 分钟发一次给值班群；步骤 3-5 发给组长并 @ 手机号」——Zabbix 会在没被确认的情况下自动升级。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;Recovery operations&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;这条 90% 的人忘配&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，结果就是只报不复，群里永远看不到&amp;quot;好了&amp;quot;。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;Update operations&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：有人认领（Acknowledge）时同步到群里，避免两个人同时去处理同一台机器。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;抑制与降噪的三个开关&lt;/strong&gt;&lt;/p&gt;&lt;ul style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;动作里把&amp;nbsp;&lt;/span&gt;&lt;code&gt;Maintenance status: Pause operations during maintenance&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;勾上，&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;计划维护期别刷屏&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;只把 Average 及以上送 IM，Warning 以下攒成日报；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;用依赖关系（Host/Trigger dependencies）把&amp;quot;交换机挂了导致下面 50 台主机全红&amp;quot;收敛成一条。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;这几件事做完，你把 20 条/分钟的红线从&amp;quot;天天踩&amp;quot;变成&amp;quot;基本不碰&amp;quot;。&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;padding: 1px 12.5px;color: rgb(255, 255, 255);margin: 1.2em 0px 1em;border-radius: 4px;display: inline-block;background-color: rgb(72, 112, 172);font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;排错清单：出问题先查这张表&lt;/span&gt;&lt;/h2&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr class=&quot;firstRow&quot;&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table&gt;&lt;caption&gt;&lt;br/&gt;&lt;/caption&gt;&lt;colgroup&gt;&lt;col/&gt;&lt;col/&gt;&lt;col/&gt;&lt;/colgroup&gt;&lt;thead&gt;&lt;tr class=&quot;firstRow&quot;&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;现象&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;大概率原因&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;th style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top; text-align: center; color: rgb(72, 112, 172); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;怎么验&lt;/span&gt;&lt;/section&gt;&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;返回&amp;nbsp;&lt;/span&gt;&lt;code&gt;310000&lt;/code&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;加签算错：时间戳非毫秒、密钥错、没做 Base64 或 URL 编码&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;看服务端日志&amp;nbsp;&lt;/span&gt;&lt;code&gt;grep DingTalk /var/log/zabbix/zabbix_server.log&lt;/code&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;企微返回&amp;nbsp;&lt;/span&gt;&lt;code&gt;45009&lt;/code&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;超过 20 条/分钟&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;降噪或拆机器人分流&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;HTTP 200 但群里没消息&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;漏判了响应体里的&amp;nbsp;&lt;/span&gt;&lt;code&gt;errcode&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;（如关键词不匹配&amp;nbsp;&lt;/span&gt;&lt;code&gt;310000&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;之外的错误）&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;看返回体 JSON&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;脚本方案完全没反应&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;脚本不在&amp;nbsp;&lt;/span&gt;&lt;code&gt;AlertScriptsPath&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;或没执行权限&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;code&gt;grep AlertScriptsPath /etc/zabbix/zabbix_server.conf&lt;/code&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;；&lt;/span&gt;&lt;code&gt;chmod +x&lt;/code&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;权限报错&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;脚本属主不是 zabbix 用户&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;code&gt;chown zabbix:zabbix&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;中文乱码&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;脚本未声明 UTF-8&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;Python 首行加&amp;nbsp;&lt;/span&gt;&lt;code&gt;# -*- coding: utf-8 -*-&lt;/code&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;签名时好时坏&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;服务器时间漂移&lt;/strong&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;code&gt;timedatectl status&lt;/code&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;，确认 chrony/NTP 在跑&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;恢复消息收不到&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;没配 Recovery operations&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;td style=&quot;border-color: rgb(217, 223, 228); padding: 9px 12px; font-size: 0.75em; line-height: 22px; vertical-align: top;&quot;&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;回到动作里补&lt;/span&gt;&lt;/section&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;告警链路的工程难度不高，但它是整个监控体系&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;唯一真正被人感知&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;的部分。前面做纳管、做大屏、做高可用 Proxy，最后一段没打通，前面所有的努力都是摩尔定律级别的浪费。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;我的经验是：&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;宁可少发、不要多发&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。一条精准的 @ 你的 High 级告警，比五十条没人看的 Warning 有价值得多。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;em style=&quot;padding: 0px 3px 0px 0px;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;本文配置基于 Zabbix 7.0 LTS，界面文案与宏名称请以你实际版本的官方文档为准；第三方机器人接口的限流与安全策略可能调整，使用前建议再核一次官方公告。&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Fri, 23 Oct 2026 16:20:06 +0800</pubDate></item><item><title>Zabbix 7添加Windows主机：Agent2安装步骤</title><link>https://kinber.cn/post/6820.html</link><description>&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;聊完业务探活和网络设备，回到最常见的场景：&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;Windows 服务器怎么纳管&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;。国内不少业务系统还跑在 Windows 上——AD 域控、IIS 站点、&lt;span class=&quot;&quot; link-id=&quot;link-1792742037711-0.990414248055295&quot;&gt;SQL Server&lt;/span&gt;、各种行业软件，这些机器不上监控，出了事就只能靠人喊。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;这篇以 Zabbix 7为例，从下载安装包到出图告警，把 Windows 主机纳管走一遍。全程大概十分钟一台。&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;padding: 1px 12.5px; color: rgb(255, 255, 255); margin: 1.2em 0px 1em; border-radius: 4px; display: inline-block; background-color: rgb(72, 112, 172); font-size: 1.3em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;Agent 还是 Agent 2？先把这个搞清&lt;/span&gt;&lt;/h2&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;Zabbix 有两个采集端：老的是 C 写的&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;Zabbix agent&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;，新的是 Go 写的&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;Zabbix agent 2&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;。&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;7.0 上我强烈建议直接上 agent 2&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;：内置指标更全（Windows 服务、性能计数器、内置的插件体系），并发采集能力也更好，官方模板都是按它优化的。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;还有个概念得先厘清：&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;被动模式 vs &lt;span class=&quot;&quot; link-id=&quot;link-1792742037711-0.9644005708355282&quot;&gt;主动模式&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;。&lt;/span&gt;&lt;/p&gt;&lt;ul style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem; visibility: visible;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;被动&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;：Zabbix Server 主动连被监控主机的 10050 端口取数据，要求 Server 能访问主机；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section style=&quot;visibility: visible;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;主动&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;：主机自己把数据推到 Server 的 10051 端口，方向反过来了。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;主机少用被动无所谓，&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;主机上百台就一定要用主动&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;——否则 Server 的采集进程会先扛不住，而且跨网段、跨防火墙时，只开一个出站端口比开一堆入站端口省事得多。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;h2 style=&quot;padding: 1px 12.5px; color: rgb(255, 255, 255); margin: 1.2em 0px 1em; border-radius: 4px; display: inline-block; background-color: rgb(72, 112, 172); font-size: 1.3em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;一步步来：安装 → 配置 → 纳管 → 验证&lt;/span&gt;&lt;/h2&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;第 1 步：下载安装&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;去官方下载页拿 Windows 安装包（选 agent 2、对应架构；文件名会带版本号，如 7.0.31 版本对应同版本号安装包，以官网下载页实际提供的资产为准，&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;有待验证&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;），然后静默安装：&lt;/span&gt;&lt;/p&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;msiexec /i &amp;quot;zabbix_agent2-7.0.31-windows-amd64-openssl.msi&amp;quot; /qn ^&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; HOSTNAME=WIN-SRV-01 ^&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; SERVER=10.0.0.10 ^&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; SERVERACTIVE=10.0.0.10 ^&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp; LISTENPORT=10050&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;几个参数解释一下：&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;HOSTNAME&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;必须和你在 Zabbix 里建的主机名&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;完全一致&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;；&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;SERVER&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;是被动模式允许谁来取数；&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;SERVERACTIVE&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;填上才算启用主动模式。&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;/qn&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;是静默安装，批量部署时可以直接塞进组策略或 &lt;span class=&quot;&quot; link-id=&quot;link-1792742037713-0.2231926988547479&quot;&gt;Ansible&lt;/span&gt;。&lt;/span&gt;&lt;/p&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;第 2 步：配置文件与防火墙&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;装完配置文件在&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;C:\Program Files\Zabbix Agent 2\zabbix_agent2.conf&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，核心三行确认一遍：&lt;/span&gt;&lt;/p&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;Server&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;10.0&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;0.10&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;ServerActive&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;10.0&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;0.10&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;Hostname&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;=WIN-SRV-&lt;/span&gt;&lt;span style=&quot;color: #CB4B16;&quot;&gt;01&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;防火墙这块：&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;被动模式要放行入站 TCP 10050&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;；主动模式只需主机能出站访问 Server 的 10051。很多&amp;quot;装完了没数据&amp;quot;都是栽在防火墙这一步。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;第 3 步：在 Zabbix 里建主机&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;数据采集 → 主机 → 创建主机，主机名填&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;WIN-SRV-01&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;（与上面一致），接口写 agent 类型 + 10050；然后链接模板。被动模式选&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;Windows by Zabbix agent&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，主动模式选&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;带 active 的那个版本&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;——&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;模板和模式必须匹配&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，混用会一路红灯，这是新手最常踩的坑。&lt;/span&gt;&lt;/p&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;第 4 步：当场验证&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;别等界面刷新，直接在机器上验一把：&lt;/span&gt;&lt;/p&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;&amp;quot;C:\Program Files\Zabbix Agent 2\zabbix_agent2.exe&amp;quot; -t system.uptime&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;能返回开机时长，说明 agent 本身没问题。如果 Server 侧能连通，也可以从服务端执行&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;zabbix_get -s 10.0.0.20 -k agent.ping&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，返回 1 就是通的。界面侧看&amp;quot;最新数据&amp;quot;里有没有指标进来，绿灯亮起就算成功。&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;padding: 1px 12.5px;color: rgb(255, 255, 255);margin: 1.2em 0px 1em;border-radius: 4px;display: inline-block;background-color: rgb(72, 112, 172);font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;影响与意义&lt;/span&gt;&lt;/h2&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Windows 主机纳管带来的最直接变化是：&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;IIS 应用池崩了、服务的状态变了、磁盘满了，都能在告警里看到，而不是等业务方打电话&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;我个人的体会是，Windows 上真正值钱的监控项不是 CPU 内存——那玩意常年不动——而是&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;&lt;span leaf=&quot;&quot;&gt;服务状态、应用池回收、磁盘空间和&lt;span class=&quot;&quot; link-id=&quot;link-1792742037713-0.9688044440754833&quot;&gt;事件日志&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。尤其事件日志，配好了能提前发现一堆&amp;quot;还没爆但快了&amp;quot;的问题。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;挑战主要在运维层面：Windows 主机往往在域里，批量部署要走域策略；生产环境不敢随便重启，安装窗口要排期；再加上性能计数器名字长、容易填错。&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;padding: 1px 12.5px;color: rgb(255, 255, 255);margin: 1.2em 0px 1em;border-radius: 4px;display: inline-block;background-color: rgb(72, 112, 172);font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;三条建议&lt;/span&gt;&lt;/h2&gt;&lt;ol style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;统一规划主机命名&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，比如&amp;quot;业务-角色-序号&amp;quot;，并让 Zabbix 主机名与 agent 的 HOSTNAME 严格一致，能省掉大量&amp;quot;主机找不到&amp;quot;的排查；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;超过 20 台就上主动模式&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，只开 10051 出站，网络安全和性能双赢；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;优先把服务状态和磁盘告警配起来&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，比盯 CPU 有用得多。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ol&gt;&lt;hr style=&quot;margin-top: 20px;margin-bottom: 20px;border-width: 2px 0px 0px;border-style: solid none none;border-color: rgb(238, 242, 245) currentcolor currentcolor;border-image: none;border-radius: 2px;&quot;/&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Windows 这一篇就到这吧，你们生产上 Windows 主机还有多少台？&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Fri, 23 Oct 2026 15:54:16 +0800</pubDate></item><item><title>Zabbix 7添加网络设备：SNMP监控上手</title><link>https://kinber.cn/post/6819.html</link><description>&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;对于交换机、路由器、防火墙，&lt;/span&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;这类设备有个硬性特点——&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;你装不了 agent&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;，厂商封闭系统，不可能让你塞个采集程序进去。所以网络设备的监控，基本只有一条路：&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;SNMP&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;这也是很多人的卡点：agent 装惯了，一到网络设备就不知道从哪下手。这篇以 Zabbix 7.0.31 为例，从设备侧准备到出图，把 SNMP 这条路走通。&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;padding: 1px 12.5px; color: rgb(255, 255, 255); margin: 1.2em 0px 1em; border-radius: 4px; display: inline-block; background-color: rgb(72, 112, 172); font-size: 1.3em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;SNMP 是个什么东西&lt;/span&gt;&lt;/h2&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;简单说，&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;SNMP 是一套&amp;quot;设备自报家底&amp;quot;的标准协议&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;：设备内部维护一棵编号树（OID），你按编号去问，它就回答。比如&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;1.3.6.1.2.1.1.1&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;&amp;nbsp;是设备描述，&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;1.3.6.1.2.1.2&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;&amp;nbsp;是接口信息。&lt;span class=&quot;&quot; link-id=&quot;link-1792741985777-0.14788822918911793&quot;&gt;Zabbix&lt;/span&gt; 内置了大量 SNMP 模板，你连模板、填 community，接口流量、CPU、内存、温度就全出来了。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;版本上要拎清：&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;v1/&lt;span class=&quot;&quot; link-id=&quot;link-1792741985778-0.2607439621243779&quot;&gt;v2c&lt;/span&gt; 用明文的 community 串当&amp;quot;密码&amp;quot;&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;，抓包就能看见，安全上基本等于裸奔；&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;v3 支持用户认证（auth）+ 加密（priv）&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;。我的经验是：内网老设备用 v2c 可以理解，但凡能上 v3 就上 v3，尤其是跨网段和&lt;span class=&quot;&quot; link-id=&quot;link-1792741985778-0.48113972496064916&quot;&gt;互联网专线&lt;/span&gt;场景——这已经不是技术问题，是合规问题。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;对谁有用&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;：管机房、管分支网络的运维；要给&amp;quot;网络出口有没有丢包堵死&amp;quot;提供依据的团队。&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;padding: 1px 12.5px; color: rgb(255, 255, 255); margin: 1.2em 0px 1em; border-radius: 4px; display: inline-block; background-color: rgb(72, 112, 172); font-size: 1.3em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;实操：设备准备 → 添加主机 → 批量纳管&lt;/span&gt;&lt;/h2&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;第 1 步：设备侧准备（最容易漏）&lt;/span&gt;&lt;/h3&gt;&lt;ol style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;开 SNMP&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：&lt;/span&gt;&lt;code&gt;snmp-server community &amp;lt;只读串&amp;gt; RO&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;（华为/思科大体类似，语法以厂商为准）；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;限制来源&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：ACL 只允许 Zabbix 服务器 IP 访问 UDP 161——别对全网开放；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;上 v3 的话&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：建只读用户，安全级别选&amp;nbsp;&lt;/span&gt;&lt;code&gt;authPriv&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，认证 SHA、加密 AES；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;打通链路&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：中间有防火墙的，放行 UDP 161。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;在 Zabbix 服务器上先手动验证一把，能出结果再进界面：&lt;/span&gt;&lt;/p&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;# SNMPv2c&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;snmpwalk -v2c -c 你的只读串 10.0.0.1 1.3.6.1.2.1.1.1&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;# SNMPv3（authPriv）&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;snmpwalk -v3 -l authPriv -u zbxuser -a SHA -A &amp;#39;认证密码&amp;#39; -x AES -X &amp;#39;加密密码&amp;#39; 10.0.0.1 1.3.6.1.2.1.1.1&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;能吐出设备描述，说明设备没问题，接下来全是 Zabbix 里的事。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;第 2 步：在 Zabbix 添加主机&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;数据采集 → 主机 → 创建主机，注意两个地方别填错：&lt;/span&gt;&lt;/p&gt;&lt;ul style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;接口类型选 SNMP&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，端口&amp;nbsp;&lt;/span&gt;&lt;code&gt;161&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;，版本选 v2c 或 v3；v3 要在&amp;quot;SNMP 版本&amp;quot;旁边填安全名、认证协议/密码、加密协议/密码；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;宏&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：v2c 场景下，把社区串填到主机的宏&amp;nbsp;&lt;/span&gt;&lt;code&gt;{$SNMP_COMMUNITY}&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;里（模板里的监控项都引用这个宏），而不是硬编码；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;然后去&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;模板&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;页签链接模板。通用设备可以从&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Template Module Generic SNMP&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;起步，接口流量用&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;Template Module Interfaces SNMPv2&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;；主流品牌有现成的网络设备模板（如 Cisco、华为等的 SNMP 模板），模板名称以你版本内置列表为准（&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;有待验证&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;）。&lt;/span&gt;&lt;/p&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;第 3 步：两个必调的参数&lt;/span&gt;&lt;/h3&gt;&lt;ol style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;开启批量请求（Use bulk requests）&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：接口页签里勾上，SNMP 一次拿一批 OID。设备多、接口多的时候吞吐差别很大，&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;这个不勾采集会很慢&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;降低采集频率&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：交换机的接口流量不用 10 秒一次，60 秒足够。有些交换机 CPU 弱，SNMP 问太勤会把管理面 CPU 顶满——我踩过这个坑，表现为&amp;quot;监控一开设备就卡&amp;quot;。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ol&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;第 4 步：几十台设备怎么办（自动发现）&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;手点几十台交换机不现实。用&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;自动发现&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：数据采集 → 自动发现 → 创建发现规则，IP 范围填网段，检查项选 SNMP（对&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;1.3.6.1.2.1.1.2&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;做探测）；再到&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;动作&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;里配置&amp;quot;发现后自动添加主机、关联模板、加入主机组&amp;quot;。跑一晚，整个网段的设备就自己进来了。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;把网络设备纳管进来，监控才真正形成闭环：&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;业务不通时，能一眼分清是服务器的事还是网络的事&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。我个人的经验是，网络设备监控最值钱的不是流量图，而是&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;接口 up/down 和光衰告警&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;——一次核心链路抖动提前发现，省下的就是一次故障时长。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;挑战也很实际：设备型号杂、模板适配有工作量大；SNMP 采集对老旧设备有性能开销；再加上 v2c 的安全债。所以这事得&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;循序渐进&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：先纳管&lt;span class=&quot;&quot; link-id=&quot;link-1792741985778-0.355010390496599&quot;&gt;核心交换机&lt;/span&gt;和出口设备，再铺接入层。&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;padding: 1px 12.5px;color: rgb(255, 255, 255);margin: 1.2em 0px 1em;border-radius: 4px;display: inline-block;background-color: rgb(72, 112, 172);font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;可执行建议&lt;/span&gt;&lt;/h2&gt;&lt;ol style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;先用&amp;nbsp;&lt;/span&gt;&lt;code&gt;snmpwalk&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;验证连通再进界面，能省掉 80% 的&amp;quot;为什么没数据&amp;quot;排查时间；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;能上 SNMPv3 就上，v2c 至少配合 ACL 限制来源；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;大批量设备一定走自动发现 + 动作，别手工点，后期维护成本差十倍。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ol&gt;&lt;hr style=&quot;margin-top: 20px;margin-bottom: 20px;border-width: 2px 0px 0px;border-style: solid none none;border-color: rgb(238, 242, 245) currentcolor currentcolor;border-image: none;border-radius: 2px;&quot;/&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;到这里，Zabbix 的&amp;quot;网络侧&amp;quot;就打通了。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Fri, 23 Oct 2026 15:53:35 +0800</pubDate></item><item><title>Zabbix 7实战：用Web场景监控业务系统</title><link>https://kinber.cn/post/6818.html</link><description>&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;前几篇我们一直在折腾&amp;quot;机器&amp;quot;：装 Zabbix、纳管 Linux、搭大屏。但说实话，&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;CPU 曲线一条平的、内存也正常，业务却打不开&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;——这种事我遇到过不止一次。因为机器活着，不等于&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;业务能用&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;通过使用&lt;span class=&quot;&quot; link-id=&quot;link-1792741936101-0.608603737081217&quot;&gt;Zabbix 7&lt;/span&gt;的&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;Web 场景（Web scenario）&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;，从用户视角把业务系统端到端探活。装完你就能回答一个更值钱的问题：不是&amp;quot;服务器活着吗&amp;quot;，而是&amp;quot;用户能打开吗&amp;quot;。&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;padding: 1px 12.5px; color: rgb(255, 255, 255); margin: 1.2em 0px 1em; border-radius: 4px; display: inline-block; background-color: rgb(72, 112, 172); font-size: 1.3em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;Web 场景到底是什么&lt;/span&gt;&lt;/h2&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;Zabbix 的 Web 监控不是简单 ping 一下端口。它内部用&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;libcurl 按顺序请求&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;一串 URL，能带 Cookie、能跟随跳转、能校验返回内容和状态码——等于&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;替你模拟一遍真实用户的访问链路&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;：打开首页、登录、进入订单页。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;为什么必须补这一层？因为服务器侧监控有几个盲区它天生看不见：HTTP 200 但页面里写着&amp;quot;系统异常&amp;quot;、登录接口返回 500、SSL 证书过期、跳转链断开、CDN 回源失败。这些在 agent 视角里全都&amp;quot;正常&amp;quot;。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em; visibility: visible;&quot;&gt;&lt;strong style=&quot;color: rgb(72, 112, 172); visibility: visible;&quot;&gt;对谁有用&lt;/strong&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;：门户网站、OA、ERP、自研 SaaS 的运维和开发；要做可用率报表、&lt;span class=&quot;&quot; link-id=&quot;link-1792741936101-0.7020720608332015&quot;&gt;SLA&lt;/span&gt; 考核的团队。&lt;/span&gt;&lt;/p&gt;&lt;h2 style=&quot;padding: 1px 12.5px; color: rgb(255, 255, 255); margin: 1.2em 0px 1em; border-radius: 4px; display: inline-block; background-color: rgb(72, 112, 172); font-size: 1.3em; visibility: visible;&quot;&gt;&lt;span leaf=&quot;&quot; style=&quot;visibility: visible;&quot;&gt;一步步配：场景 + 步骤 + 触发器&lt;/span&gt;&lt;/h2&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;第 1 步：创建场景&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;数据采集 → 主机 → 新建主机&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;section style=&quot;text-align: center;&quot; nodeleaf=&quot;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100002543&quot; data-ratio=&quot;0.4398148148148148&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023155244_24110.png&quot; data-type=&quot;png&quot; data-w=&quot;1080&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;2&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023155244_24110.png&quot; _width=&quot;677px&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.987px !important;&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1792741950679&quot; data-report-img-idx=&quot;0&quot; data-fail=&quot;0&quot;/&gt;&lt;/section&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;选中你的主机（建议专门建一台&amp;quot;业务系统&amp;quot;主机，而不是挂在 Web 服务器上）→&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;Web&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;→ 右上角&amp;quot;创建 Web 场景&amp;quot;。关键几项：&lt;/span&gt;&lt;/p&gt;&lt;ul style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;名称&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：如&amp;quot;官网首页可用性&amp;quot;；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;更新间隔&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：生产建议 1m，别 10s 一次，容易给自己招来风控；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;尝试次数&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：3 次。单次失败就告警会产生大量误报，多试两次能过滤网络抖动；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;Agent&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：选一个 User-Agent，有些站点会拦截默认 UA。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;section style=&quot;text-align: center;&quot; nodeleaf=&quot;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100002544&quot; data-ratio=&quot;0.5083333333333333&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023155245_75304.png&quot; data-type=&quot;png&quot; data-w=&quot;1080&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;3&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023155245_75304.png&quot; _width=&quot;677px&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.987px !important;&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1792741950871&quot; data-report-img-idx=&quot;1&quot; data-fail=&quot;0&quot;/&gt;&lt;/section&gt;&lt;/p&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;第 2 步：添加步骤（Steps）&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;一个场景由多个步骤组成，&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;按顺序执行，前一步的 Cookie 自动带入下一步&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;——这就是它能测&amp;quot;登录后页面&amp;quot;的原理。每步要填：&lt;/span&gt;&lt;/p&gt;&lt;ul style=&quot;padding-left: 1rem; margin-left: 1rem; font-size: 0.9rem;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;URL&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：完整地址；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;要求状态码&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：默认 200，接口类可填 200,201；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;要求字符串&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：这是精髓，填页面上必然出现的关键字，比如&amp;quot;欢迎回来&amp;quot;。&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;只要关键字不在返回内容里就算失败&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，专治&amp;quot;200 但内容报错&amp;quot;；&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;li&gt;&lt;section&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;超时 / 跟随重定向&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;：登录类场景通常要保持 Cookie 和跟随跳转。&lt;/span&gt;&lt;/section&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;因为我现在不需要登录，只需要监测页面能不能打开，所以比较简单：&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;section style=&quot;text-align: center;&quot; nodeleaf=&quot;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100002545&quot; data-ratio=&quot;0.32526621490803487&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023155245_29904.png&quot; data-type=&quot;png&quot; data-w=&quot;1033&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;4&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023155245_29904.png&quot; _width=&quot;677px&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.975px !important;&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1792741951171&quot; data-report-img-idx=&quot;2&quot; data-fail=&quot;0&quot;/&gt;&lt;/section&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;填写状态码：&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;section style=&quot;text-align: center;&quot; nodeleaf=&quot;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100002546&quot; data-ratio=&quot;0.25415676959619954&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023155246_54515.png&quot; data-type=&quot;png&quot; data-w=&quot;842&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;5&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023155246_54515.png&quot; _width=&quot;677px&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.987px !important;&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1792741951211&quot; data-report-img-idx=&quot;3&quot; data-fail=&quot;0&quot;/&gt;&lt;/section&gt;&lt;section&gt;&lt;span leaf=&quot;&quot;&gt;此时就添加好了：&lt;/span&gt;&lt;/section&gt;&lt;section style=&quot;text-align: center;&quot; nodeleaf=&quot;&quot;&gt;&lt;img class=&quot;rich_pages wxw-img&quot; data-aistatus=&quot;1&quot; data-imgfileid=&quot;100002547&quot; data-ratio=&quot;0.2898148148148148&quot; data-s=&quot;300,640&quot; data-src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023155247_14210.png&quot; data-type=&quot;png&quot; data-w=&quot;1080&quot; type=&quot;block&quot; data-original-style=&quot;null&quot; data-index=&quot;6&quot; src=&quot;https://kinber.cn/zb_users/upload/2026/10/20261023155247_14210.png&quot; _width=&quot;677px&quot; style=&quot;height: auto !important; visibility: visible !important; width: 676.975px !important;&quot; alt=&quot;图片&quot; data-before-load-time=&quot;1792741951404&quot; data-report-img-idx=&quot;4&quot; data-fail=&quot;0&quot;/&gt;&lt;/section&gt;&lt;/p&gt;&lt;h3 style=&quot;padding: 0px;color: rgb(72, 112, 172);margin: 1.2em 0px 1em;font-size: 1.3em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;第 3 步：让它会告警&lt;/span&gt;&lt;/h3&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;场景建好后，Zabbix 会&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;自动生成监控项&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，不需要你手写：&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;web.test.fail[场景]&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;（失败步骤数）、&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;web.test.time[场景,步骤]&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;（每步耗时）、&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;web.test.rspcode[场景,步骤]&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;（响应码）、&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;web.test.error[场景]&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;（错误信息）。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;系统&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;不会&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;自动给你建触发器，这一步得自己补。创建一个触发器，表达式写成&amp;quot;失败步骤数大于 0 就报警&amp;quot;：&lt;/span&gt;&lt;/p&gt;&lt;pre style=&quot;border-radius: 5px; line-height: 2; margin: 1em 0.5em; padding: 0.5em; box-shadow: rgba(0, 0, 0, 0.55) 0px 1px 5px; font-size: 12px; background-color: rgb(253, 246, 227);&quot;&gt;&lt;section style=&quot;background-repeat: no-repeat; width: 100%; height: 16px;&quot;&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; version=&quot;1.1&quot; width=&quot;45&quot; height=&quot;12&quot; viewbox=&quot;0 0 450 130&quot; role=&quot;img&quot; aria-label=&quot;插图&quot;&gt;&lt;ellipse cx=&quot;65&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(220,60,54)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(237,108,96)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;225&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(218,151,33)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(247,193,81)&quot;&gt;&lt;/ellipse&gt;&lt;ellipse cx=&quot;385&quot; cy=&quot;65&quot; rx=&quot;50&quot; ry=&quot;52&quot; stroke=&quot;rgb(27,161,37)&quot; stroke-width=&quot;2&quot; fill=&quot;rgb(100,200,86)&quot;&gt;&lt;/ellipse&gt;&lt;/svg&gt;&lt;/section&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; display: block; overflow-x: auto; margin: 0.5em; padding: 3px 5px; color: rgb(88, 110, 117); background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;{HOST:web.test.fail[官网首页可用性].last()}&amp;lt;&amp;gt;0&lt;/span&gt;&lt;span leaf=&quot;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;再基于&amp;nbsp;&lt;/span&gt;&lt;code style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, monospace; color: rgb(72, 112, 172); font-size: 0.9em; overflow-wrap: break-word; padding: 2px 4px; border-radius: 3px; margin: 2px; background-color: rgb(246, 248, 250); word-break: break-all;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;web.test.time&lt;/span&gt;&lt;/code&gt;&lt;span leaf=&quot;&quot;&gt;&amp;nbsp;加一条&amp;quot;页面响应超过 3 秒&amp;quot;的告警，业务的&amp;quot;慢&amp;quot;和&amp;quot;挂&amp;quot;就都覆盖了。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;我个人认为，&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;Web 场景是 Zabbix 里性价比最高的一块功能&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;。它不依赖业务方改造，不用装任何东西，几行配置就把监控从&amp;quot;基础设施视角&amp;quot;拉到了&amp;quot;用户体验视角&amp;quot;，还能直接喂给大屏和 SLA 报表。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;当然它也有边界，得说清楚：它测的是&lt;/span&gt;&lt;strong style=&quot;color: rgb(72, 112, 172);&quot;&gt;探针到目标的链路&lt;/strong&gt;&lt;span leaf=&quot;&quot;&gt;，测不了浏览器里的 JS 渲染和前端报错——那属于浏览器合成监控的活。另外探针部署在哪很关键，你从机房探外网门户，测出来的不是用户体验。&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin-top: 1em;&quot;&gt;&lt;span leaf=&quot;&quot;&gt;到这里，&amp;quot;机器能用&amp;quot;和&amp;quot;业务能用&amp;quot;就都盯上了。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Fri, 23 Oct 2026 15:52:27 +0800</pubDate></item></channel></rss>