10 分钟实现一个自己的服务器监控器

三种监控服务器的搭建(Cacti,Nagios,Zabbix) 一.监控服务器的种类 1.Cacti(流量和性能监测为主) 2.Nagios(服务和性能监控为主) 3.Zabbix(全新型的监控软件)可以分布式运行 4.promethus(云原生,贴近容器) 二.Cacti监控服务器的的搭建 1.服务器端: a,安装基础环境 b.安装RRDTOOL c.部署cacti,设置数据库连接 d.添加检测数据的用户账户,更改权限保证读写数据正常 e.授权数据库用户,导入初始化数据 f.修改cacti配置文件 g.调整http配置 h.打开snmp文件 i.收集数据 j.安装插件 阅读详情

需求

最近需要给自己的服务器添加监控器,目的是监控服务器的内存、CPU、磁盘占用率,资源占用率过高的话能给自己发个提醒,当前主流的平台一般会提供邮件、短息、甚至会提供微信提醒,不过这类提醒包含的噪音太多了(夹杂着各种无关的社交信息),我只是单纯的需要接收到服务器的预警。由于服务器环境并不复杂,所以不考虑主流的与监控平台(毕竟搭建起来还是挺复杂的)。

选择产品

有很多产品支持 incoming(就是通过调用应用提供的 API 把我们自定义的消息转发送该应用),我打算使用 JBox ,因为它提供了 Android、和 iOS 客户端支持而且是开源的所以后期有什么需求都可以自己加上去(还有一点最主要的是使用起来非常简单,API 文档只有一个接口,基本没有学习成本)。

着手操作

按照 JBox 教程 来,首先新建一个自定义集成,获得一个 Webhook url

http://jbox.jiguang.cn/v1/message/dxwYTMfrC8GRhU5/vwlrqCegmp  //注意:这里填写自己集成的 Webhook url,每个集成的 Webhook 都不一样。

首先编写我们的监控脚本,这里我写了两个脚本

#内存监控脚本  monitor_memory.sh
webhook="http://jbox.jiguang.cn:80/v1/message/dxwYTMfrC8GRhU5/vwlrqCegmp" #注意:这里填写自己集成的 Webhook url
#告警阈值30G,少于则告警,频率 30分钟 检查一次
 normal=30

#取得总内存  

#取得内存分页数  

freemk=`vmstat 5 2 | tail -n 1 | awk '{print $5}'`;  
 #每一页是4K ,所以乘以4                              

freemm=`expr $freemk \* 4`;    
 #转换为 G                                                          

freemem=`echo $freemm/1024/1024|bc`;                                          

echo `date +%Y%m%d%H%M`"  Memory:" "M" all $freemem"G" avail;

if [ $freemem -lt $normal ]

then

    echo "当前内存"$freemem"G,少于"$normal"G"        #打印告警信息    这里可以插入短信库,发送至手机
    title="内存告警!!"
    message="当前内存"$freemem"G,少于"$normal"G"
    memoryAlertJson='{"title":"'${title}'"'',"message":"'${message}'"}'
    echo $memoryAlertJson

# 这里发送预警,该条消息会转发到 JBOx app
    curl -H "Content-Type: application/json" -X POST -d $memoryAlertJson $webhook
fi
# 磁盘监控脚本 monitor_disk.sh
webhook="http://jbox.jiguang.cn:80/v1/message/dxwYTMfrC8GRhU5/vwlrqCegmp"
normal=10 #当超过 10% 这个值时产生告警,这里因为测试 所以设得很低,这个可以根据自己的需求来增加

DiskPercent=`df |grep -w / |awk '{print $5}'|awk -F '%' '{print $1}'`;
echo $DiskPercent;
if [ $normal -lt $DiskPercent ] 
    then
    echo "硬盘 使用率告警"
    title="硬盘 使用率告警!!"
    message="当前使用率"$DiskPercent"%,大于"$normal"%"
    DiskAlertJson='{"title":"'${title}'"'',"message":"'${message}'"}'
    echo $DiskAlertJson
# 这里发送预警,该条消息会转发到 JBOx app
    curl -H "Content-Type: application/json" -X POST -d $DiskAlertJson $webhook
fi

我把这两个脚本加在 crontab 执行计划里面
$ crontab -e

# Edit this file to introduce tasks to be run by cron.
# 
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
# 
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').# 
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
# 
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
# 
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
# 
# For more information see the manual pages of crontab(5) and cron(8)
# 
# m h  dom mon dow   command
# 一分钟执行一次脚本
* * * * * /bin/bash /home/ubuntu/monitor_memory.sh >>/home/ubuntu/moniter_memory.log
* * * * * /bin/bash /home/ubuntu/monitor_disk.sh >>/home/ubuntu/monitor_disk.log


作者:HuminiOS - 极光

原文:10 分钟实现一个自己的服务器监控器

知乎专栏:极光日报

从零开始搭建一个完整的服务器包含监控,自动化部署,容器管理,内网穿透等 主要配置有docker, portainer, ipannel, nps, redis, mysql, myat等,保证简单轻松,教你从零开始搭建一个完整的服务器项目 阅读详情

相关推荐

10分钟上手Charles:抓包改包实战

摘要: Charles是一款强大的跨平台网络调试工具(支持HTTP/HTTPS/WebSocket),核心功能包括: 抓包分析 - 实时查看请求/响应详情(Headers/Body等),支持结构化视图和瀑布流分析; HTTPS解密 - 需配置SSL代理并安装信任证书(关键步骤); 调试与Mock - 通过断点修改请求/响应,或使用Rewrite/Map功能自动映射数据; 性能优化 - 弱网模拟(Throttling)、请求耗时统计、重复压力测试; 效率工具 - 过滤器快速定位请求,会话导出共享。适用于开发/

myting的博客 1036

微服务之服务监控,一文秒懂

微服务架构盛行,但如何保障服务的稳定运行?本文将带您深入微服务监控的精髓,详细梳理监控流程,精选主流工具,助您轻松构建高效、可靠的监控体系,让服务运行尽在掌控!

m0_46606920的博客 5419

从零构建个人情绪监控器:数据模型、前端实现与可视化实践

在数据驱动的时代,个人数据追踪与可视化技术为自我认知和习惯养成提供了新范式。其核心原理在于通过结构化的数据模型,将主观体验转化为可量化、可分析的客观指标,从而揭示潜在的行为模式与关联关系。这一技术的价值在于赋能个体进行精细化的自我管理,尤其在心理健康、习惯养成等个人成长领域具有广阔的应用场景。本文以构建一个**个人情绪监控器**为例,深入探讨了如何设计包含情绪、能量、触发事件等多维度的**数据模型**,并利用现代前端技术栈实现极简流畅的记录交互。通过集成Chart.js等可视化库,将枯燥的数据转化为直观的情

weixin_34007906的博客 317

监控流媒体服务器的搭建和使用

需求 国内主流监控方案厂商都有自己的流媒体服务器平台,为什么要还需要通用的流媒体服务器产品呢?这个问题可以从几个方面回答:1)经济性: 传统监控厂商的流媒体服务器,由于主要面向城市建设和大型安防项目,往往造价和报价相对较高,对于规模较小的监控项目预算过高。2)兼容性:由于各种原因,各个监控厂商对非本厂的摄像头在兼容性上存在一些问题,如果一个项目中使用多个厂家的摄像头,会是一个大问题,因此需要有通用...

一名高级工程师的博客 1万+

自制电池监控器:从采样电路到SOC估算的完整实战指南

电池管理系统(BMS)的核心在于准确掌握电池的电压、电流、温度与剩余电量(SOC)。在工程实践中,成品监控器往往是一个无法验证的黑盒,而DIY方案则能完整打开每一环。从分压网络与INA226双向电流采样,到NTC温度补偿与库仑计积分,再到OCV静置校准与满充复位,每一步都直接影响SOC估算的可靠性。本文以实际项目为背景,梳理了从硬件选型、电路搭建、数据处理到校准踩坑的完整路径,适用于12V铅酸、48V磷酸铁锂及电动工具电池包等常见场景。无论是理解库仑计原理,还是探索更深入的BMS保护控制,这条自建监控器的路

weixin_33841503的博客 404

从零到一:RV1126与IMX415的硬件交响曲——深入解析Linux IPC摄像头的硬件调试艺术

本文深入解析了RV1126与IMX415组合的Linux IPC摄像头硬件调试技术,涵盖硬件接口检查、设备树配置、驱动加载验证及ISP调优等关键步骤。通过详细的操作指南和常见问题解决方案,帮助开发者快速掌握摄像头调试技巧,提升开发效率。

weixin_29161785的博客 978

监控服务架构组成详解和实现监控方法

监控服务架构组成 页面组成介绍 企业实现监控方法 利用系统监控命令 利用编写监控脚本 监控软件 关于稳定性的3个9,4个9,5个9 主机监控配置步骤 自定义监控方法

一个野生自学的运维狗 3630

Zynq远程更新程序实战:从emmc到flash的完整方案解析

本文详细解析了Zynq远程更新程序的完整方案,重点探讨了从emmc到flash的实战操作。通过硬件连接限制破解、emmc配置技巧、flash擦写策略优化等关键技术点,提供了可靠的远程更新解决方案,特别适合需要频繁更新boot.bin的应用场景。

weixin_29163797的博客 179

监控自动上传自己的服务器,10 分钟实现一个自己的服务器监控器

需求最近需要给自己的服务器添加监控器,目的是监控服务器的内存、CPU、磁盘占用率,资源占用率过高的话能给自己发个提醒,当前主流的平台一般会提供邮件、短息、甚至会提供微信提醒,不过这类提醒包含的噪音太多了(夹杂着各种无关的社交信息),我只是单纯的需要接收到服务器的预警。由于服务器环境并不复杂,所以不考虑主流的与监控平台(毕竟搭建起来还是挺复杂的)。选择产品有很多产品支持 incoming(就是通过调...

weixin_35995951的博客 1177

从时序博弈到数据稳定:CS1237驱动中的信号滤波与卡尔曼实践

本文探讨了CS1237高精度ADC驱动在复杂工业环境中的信号处理挑战,重点介绍了一阶滤波与自适应卡尔曼滤波算法的实践应用。通过参数优化和动态调整策略,有效提升了数据稳定性和抗干扰能力,为嵌入式系统在噪声环境下的精密测量提供了可靠解决方案。

rnn9storyteller的博客 863

电池管理系统(BMS)系列—状态估计之SOH

BMS系列文章,介绍了SOH估计

zxx52113140的博客 1846

10 分钟实现一个自己的server监控器

需求 近期须要给自己的server加入监控器。目的是监控server的内存、CPU、磁盘占用率,资源占用率过高的话能给自己发个提醒。当前主流的平台通常会提供邮件、短息、甚至会提供微信提醒,只是这类提醒包括的噪音太多了(夹杂着各种无关的社交信息),我仅仅是单纯的须要接收到server的预警。由于server环境并不复杂,所以不考虑主流的与监控平台(毕竟搭建起来还是挺复杂的)。 ...

weixin_33786077的博客 108

EV1527、PT2262傻傻分不清?一文讲透常见315/433MHz遥控编码协议区别与选型

本文深度对比了EV1527、PT2262和SC5262三种常见的315/433MHz遥控编码协议,详细解析了它们的技术特点、成本效益和适用场景。EV1527作为低成本方案的首选,特别适合智能家居和简易安防设备;PT2262在稳定性和兼容性上表现优异;而SC5262则在安全性方面具有显著优势。文章还提供了实用的选型框架和工程建议,帮助开发者在不同应用场景中做出最优决策。

weixin_33640562的博客 349

ceph 10分钟入门

Ceph是一个开源的分布式存储系统,它的发展历史可以追溯到2004年,从那时开始,它经历了多个版本和重大改进。:Ceph的早期工作始于2004年,由Sage Weil在加州大学圣塔克鲁兹分校(University of California, Santa Cruz)启动。最初的研究项目旨在开发一个高可用性的分布式文件系统。:Ceph的开发工作逐渐扩展到对象存储,并于2006年发布了第一个公开版本。:Ceph开始引入RADOS(可扩展自组织分布式对象存储)作为其核心存储技术,并发布了Ceph的第一个稳定版本。

zyqash的博客 525

【Godot4自学手册】第一节配置Godot运行环境

Godot是一款自由开源、由社区驱动的 2D 和 3D 游戏引擎!它是一款功能丰富的跨平台游戏引擎,可以通过统一的界面创建 2D 和 3D 游戏。它提供了一套全面的通用工具,因此用户可以专注于制作游戏,而无需重新发明轮子。游戏可以一键导出到多个平台,包括主流的桌面平台(Linux、macOS、Windows)、移动平台(Android、iOS)、基于 Web 的平台以及主机平台。

zhaoyang314的博客 5982

Win10环境借助DockerDesktop部署Open web UI集成DeepSeek

Win10环境借助DockerDesktop部署Open web UI集成DeepSeek,并借助DuckDuckGo实现联网查询

虎鲸不是鱼 1699

8GB显存训千万高斯:3DGS训练工具Spirula Studio

Spirula Studio 是一个自包含的 3DGS(3D 高斯泼溅)训练工具,从照片或视频一步产出带纹理的网格。NVIDIA、AMD、Intel、Apple 显卡经 Vulkan 用同一套二进制就能训练;量化训练让 1000 万高斯塞进 8 GB 显存,无需 Python、PyTorch 与 COLMAP。 [![Spirula Studio 3DGS 训练工具界面](https://raw

gitblog_00481的博客 194

YOLOv12改进策略【卷积层】| SPD-Conv 针对小目标和低分辨率图像的检测任务

SPD-Conv是一种新的 CNN 构建模块,用于替代传统 CNN 架构中使用的步长卷积(strided convolution)和池化(pooling)层,它由空间到深度(Space-to-depth,SPD)层和非步长卷积(non - strided convolution)层组成。

Limiiiing的博客 1778

10分钟上手Fluent:从安装到运行第一个分布式计算任务的完整指南

Fluent是一个强大的数据驱动计算平台,能帮助开发者轻松构建和运行分布式计算任务。本指南将带你在10分钟内完成从环境搭建到执行第一个分布式计算任务的全过程,让你快速掌握Fluent的核心功能。 ## 📋 准备工作 在开始之前,请确保你的系统满足以下要求: - 操作系统:Linux(Debian或Fedora系列) - 网络连接:用于下载依赖包 - 权限:需要sudo权限安装系统依赖 ##

gitblog_01178的博客 810

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

Win2008ServerR2下查看IIS并发连接数

B/S项目的一个重要的性能指标是,实时并发能力。针对于此,我们通常要进行多种性能测试,从不同的角度来检测服务器的相应能力。 本文档需要说明的是,如何在Windows 2008 Server R2中,监控IIS所能相应的实时连接数。笔者主要是借助于系统自带【系统监控器】来监控Web服务的连接数信息的。 一、启动【系统监控器】 命令行: perfmon.msc 二、上图中,点击,添加计数器

AttaGain的专栏 2万+

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

10 个免费开源的网络服务器监控工具

如果你有一个网站或一个网络,你应该密切的关注它,并在问题发生之后迅速解决。最简单方便的办法是通过使用服务器/网络监视工具来监视您的设备,以防任何可能出现的问题。有许多免费和开源服务器和网络监控工具存在,但找到一个好用的并不是件容易的事情。 本文向你推荐 10 个免费开源的网络服务器监控工具: 1. Monit Monit 是一个Linux/UNIX系统上开源的进程、文件、目录和文

lemei2002的专栏 856
上一篇: iOS 轻松使用 App 数据统计
下一篇: JPush Android 推送如何区分开发、生产环境
极光推送
博客等级 码龄14年 109粉丝 108原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值