摘要不用装任何第三方工具用 Windows 自带的 PowerShell 写一个网络监控脚本定时 ping 内网业务地址和隧道外网地址延迟超阈值或不通时通过企业微信群机器人 Webhook 或 Server酱推到手机。脚本带三重防骚扰设计 —— 连续几次异常才告警、同一目标冷却时间、恢复后补一条。文末附可直接复制的完整脚本。上期给大家分享了外检现场网络不通怎么排查结尾答应给各位朋友分享网络不通时怎么第一时间接到手机消息其实很简单什么环境也不用安装直接使用电脑系统自带的PowerShell写的脚本就能请一位忠实的网络管理员帮我们一刻不停盯着整个网络当网络发生阻塞时通过脚本发送消息给我们的手机。下面就跟着我一步一步搭建并实现。做过维护的人都知道我们不可能时刻盯着网络是否通畅就算一直开着ping界面我们也还会处理其他问题要么处理数据问题要么是已经离开自己的电脑去给其他医生处理问题总之是没办法一直盯着网络通不通等到各个医生打电话来或是喊的时候那会场面估计就又有些让人尴尬百十号人看着你等你恢复网络……所以我就有了个请帮手的想法外检网络其实只要保证两个地址一直通畅一个是交换业务数据的内网地址一个是和医院建立隧道的外网固定地址。这两个地址都可以使用最简单的ping命令来监测数据延迟大不大使用一段时间对这个网络正常延迟有了了解完全可以写个脚本来帮我们监测。这个帮手是怎么替我盯着的定时探一探 → 连续几次不对劲才报警 → 网络缓过来再补一条脚本和配置文件长这样第一段探测 —— 用系统自带的 .NET Ping不去抠中文输出稳function Ping-Once($ip, $timeoutMs) { $p New-Object System.Net.NetworkInformation.Ping try { $r $p.Send($ip, $timeoutMs) if ($r.Status -eq Success) { return { ok $true; ms [int]$r.RoundtripTime } } return { ok $false; ms $null } } catch { return { ok $false; ms $null } } finally { $p.Dispose() } }第二段只在真出问题时才报警 —— 连续几次异常才发不轰炸、不误报if ($bad) { $st.streak $nowSec [int]((Get-Date) - (Get-Date 1970-01-01 00:00:00)).TotalSeconds if ($st.streak -ge $Times -and (-not $st.alerted) -and ($nowSec - $st.last) -ge ($CooldownMin * 60)) { Send-Msg 网络告警 $t 目标 $t 连续 $($st.streak) 次异常阈值 $($ThresholdMs) ms $st.alerted $true $st.last $nowSec } }第三段每次启动先发一条报平安 —— 确认它在跑、推送通道是通的Send-Msg 监控已启动 网络监控已启动正在盯 $($Targets.Count) 个地址。配置文件地址、阈值、推送密钥都在这里改$Targets (192.168.1.1, 10.0.0.1) # 要盯的地址示例占位换成你自己的 $WecomKey # 企业微信机器人 Webhook留空则不用 $ServerChan # Server酱 SendKey留空则不用 $ThresholdMs 100 # 延迟超过多少毫秒算异常 $Times 3 # 连续几次异常才告警防抖 $IntervalSec 30 # 每隔多少秒探测一次 $CooldownMin 10 # 同一目标最短告警间隔分钟那怎么通知到我手机上监测的帮手有了但怎么通知我这又是一个值得考虑的问题。现在每个人时刻都离不开手机所以最好的办法就是有问题推送提醒到我手机上通知我。现在不是正在上各种AI客服吗我首先考虑的是否有我可以使用的客服。经过尝试我找到了最简单的方法群机器人 Webhook。只用手机上安装一个企业微信app就全解决了。去企微官网注册一个账号个人账号注册完全免费然后建立一个人的群启用这个群的消息推送你就得到一位24小时听候差遣的免费专用助手。到此网络有问题手机收到提示消息整个流程完全实现我们要做的就是收到网络有问题的消息及时处理使网络恢复正常就是了完全不用一直盯着电脑监测网络。有了这样一个完整的功能其实还可以做很多事情包括我现在已经用这一套流程监测数据库阻塞情况监察硬盘空间使用情况等等。完整的脚本我也已经写好由于篇幅原因我另开了一篇需要完整脚本的朋友可以看下面我附的那一份。在使用脚本或是消息推送功能中遇到什么问题也可以及时留言给我我会一一解答。其实上面也只是我的一个抛砖引玉各位朋友肯定还有其他更好的想法我们也可以一起交流探讨期待你的留言。下篇各位朋友想看什么内容呢刚才说到了服务器下篇我分享一些服务器的相关维护经验你是否期待……文中案例均已脱敏不出现系统账号、服务器地址与患者信息完整脚本# 网络监控精简可跑版—— Windows 10/11 自带 PowerShell无需安装任何东西 # 只需改下面这 8 行配置双击运行即可CtrlC 停止 $Targets (192.168.1.1, 10.0.0.1) # 要盯的地址示例占位换成你自己的 $WecomKey # 企业微信机器人 Webhook留空则不用 $ServerChan # Server酱 SendKey留空则不用 $ThresholdMs 100 # 延迟超过多少毫秒算异常 $Times 3 # 连续几次异常才告警防抖 $IntervalSec 30 # 每隔多少秒探测一次 $CooldownMin 10 # 同一目标最短告警间隔分钟 function Ping-Once($ip, $timeoutMs) { $p New-Object System.Net.NetworkInformation.Ping try { $r $p.Send($ip, $timeoutMs) if ($r.Status -eq Success) { return { ok $true; ms [int]$r.RoundtripTime } } return { ok $false; ms $null } } catch { return { ok $false; ms $null } } finally { $p.Dispose() } } function Send-Msg($title, $content) { if ($WecomKey) { $b { msgtype text; text { content $content } } | ConvertTo-Json -Compress try { Invoke-RestMethod -Uri $WecomKey -Method Post -TimeoutSec 10 -ContentType application/json; charsetutf-8 -Body ([Text.Encoding]::UTF8.GetBytes($b)) | Out-Null return } catch {} } if ($ServerChan) { try { Invoke-RestMethod -Uri https://sctapi.ftqq.com/$ServerChan.send -Method Post -Body { title $title; desp $content } -TimeoutSec 10 | Out-Null } catch {} } } $state {} foreach ($t in $Targets) { $state[$t] { streak 0; alerted $false; last 0 } } Send-Msg 监控已启动 网络监控已启动正在盯 $($Targets.Count) 个地址。 while ($true) { foreach ($t in $Targets) { $r Ping-Once $t $ThresholdMs $st $state[$t] $bad (-not $r.ok) -or ($r.ms -gt $ThresholdMs) if ($bad) { $st.streak $nowSec [int]((Get-Date) - (Get-Date 1970-01-01 00:00:00)).TotalSeconds if ($st.streak -ge $Times -and (-not $st.alerted) -and ($nowSec - $st.last) -ge ($CooldownMin * 60)) { Send-Msg 网络告警 $t 目标 $t 连续 $($st.streak) 次异常阈值 $($ThresholdMs) ms $st.alerted $true $st.last $nowSec } } else { if ($st.alerted) { Send-Msg 网络恢复 $t 目标 $t 已恢复正常当前 $($r.ms) ms } $st.streak 0 $st.alerted $false } } Start-Sleep -Seconds $IntervalSec }
企业数字化 ERP 产品动态
相关推荐
DeepSeek LeetCode 109. 有序链表转换二叉搜索树 Python3实现 LeetCode 109. 有序链表转换二叉搜索树 — Python3 实现
思路:中序遍历模拟
二叉搜索树(BST)的中序遍历结果是有序的,而给定的链表恰好也是有序的。因此可以模拟中序遍历的过程来构建 BST:
先计算链表的长度 n。递归函… · 2026/9/26 11:15:44
SOM:无监督学习的「聚类之王」,为什么它能「自组织」? 从竞争学习到 Kohonen 网络,理解无监督聚类的数学本质开头:不需要标签也能学习?
上一篇我们学习了 PCA,它是有监督的降维(需要标签来计算方差)。
今天我们学习自组织映射(SOM)——一… · 2026/9/26 11:15:44
DeepSeek LeetCode 109. 有序链表转换二叉搜索树 Rust实现 LeetCode 109. 有序链表转换二叉搜索树 — Rust 实现
思路:转数组 递归构建
由于链表有序,且二叉搜索树(BST)的中序遍历结果也是有序的,最直接的做法是:
将链表所有值存入一个 Vec。在有序数组上递归&… · 2026/9/26 11:15:44
TransactionManager详解:Spring事务失效排查与边界设计实践 前天排查一个线上问题,代码里明明白白写着Transactional(rollbackFor Exception.class),库存也扣了,可订单状态偏偏没更新,最后定位到是同一个类内部的this.updateStock()自调用,事务管理器压根没参与。类似的事我这些… · 2026/9/26 12:59:01
AI Agent落地实战指南:从伪智能到真生产力 1. 项目概述:这不只是份报告,而是AI Agent落地前的“施工图纸”“36氪研究院 | 2026年中国AI Agent行业发展研究报告”——光看标题,很多人第一反应是“又一份行业白皮书”,随手划走。但如果你正带技术团队做智能客服升级、在规划… · 2026/9/26 12:59:01
贪心算法实战指南:从局部最优到全局最优的经典例题 今天是我"更弱智的算法学习"系列的第23天。这个名字不是自暴自弃,而是我自己总结出来的一套学习策略:把自己当成一个什么都不懂、只会用最笨办法的人,先把一个算法用最朴素的方式跑通,再去理解它背后的道理。今天这个位… · 2026/9/26 12:59:01
论文几何干预:警惕数学有效性掩盖的认知桎梏 1. 先别急着画图:几何在科学理论里到底承担什么角色我做科研写作和跨学科审稿有十几年了,审过不少数学物理交叉的论文。一个特别常见又特别隐蔽的问题,就是作者把“数学有效性”当成了“本体论正确性”。尤其是论文里出现几何模型、拓扑结构、… · 2026/9/26 12:59:01
从1.1G估值资料到实战能力:DCF模型六大细节与框架 1. 为什么我会攒下1.1G的估值建模资料:从被项目逼到墙角说起做财务估值这件事,大多数人第一反应是“找个模板套一下”。但真正接过项目的朋友都清楚,当你面对一家业务复杂、历史财务数据混乱、未来假设充满不确定性的公司时,模板只… · 2026/9/26 12:58:55
Agent开发本质:从AI聊天到自动执行的范式跃迁 1. 这不是写个“AI聊天机器人”,而是让AI真正替你跑腿干活你有没有过这种体验:早上打开邮箱,发现几十封客户询盘要分类、报价、同步给销售;下午要从三份PDF合同里提取关键条款,比对差异,生成摘要࿱… · 2026/9/26 12:58:55
数据库课后习题答案别硬背:当测试用例集刷,效率翻倍 简介:万常选版《数据库原理与设计》课后习题答案资源,覆盖第2至6章及第9章,适合正在学习关系模型、数据库建模、关系数据理论与模式求精的本科生、自学者作为复习与自测材料。压缩包共7个文件,含3个doc参考答案、2个sql示例脚本、… · 2026/9/26 0:00:21
OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 0:00:40
向下兼容与向上兼容:接口设计中的兼容性策略与工程实践 一次版本升级事故,是很多团队绕不过去的坎。线上环境里,服务端明明已经上线了新版接口,老的移动端还在照着旧文档传参数。请求一到网关,校验直接拒绝,用户操作失败,客服群炸了锅,开发群里开始互… · 2026/9/26 0:00:46