开源工具推荐:Checkmate监控

1. 概述

GitHub:bluewave-labs/Checkmate: Checkmate is an open-source, self-hosted tool designed to track and monitor server hardware, uptime, response times, and incidents in real-time with beautiful visualizations.

官网文档:Welcome to Checkmate | Checkmate,详细的介绍。

功能特点:

1)服务器监控

  • CPU使用率:区分用户态、系统态的使用情况,还能看到负载趋势
  • 内存使用:包括物理内存和虚拟内存的使用量、剩余量、使用率
  • 磁盘空间:监控各分区的使用情况,提前预警空间不足
  • 系统负载:了解1分钟、5分钟、15分钟的平均负载
  • 网络流量:监控网卡的出入带宽使用情况
  • 进程信息:查看占用资源多的进程,便于定位问题

 2)网站与接口监控

  • 站点可用性:定期访问网站,验证返回码是否正常
  • 响应时间:记录每次请求的耗时,绘制趋势图
  • 内容验证:检查页面内容是否符合预期
  • API监控:对重要接口进行定期调用测试
  • SSL证书:检查证书是否临近过期
  • 端口监控:确保关键端口服务正常运行

3)Docker容器监控

  • 容器状态:运行、停止、退出等状态变化
  • 资源占用:CPU、内存、网络等资源使用情况
  • 日志查看:实时查看容器的标准输出日志
  • 镜像管理:容器使用的镜像版本信息

4)告警通知

  • 邮件通知:最常用的告警方式
  • Discord/Slack:适合团队协作的即时通知
  • Webhook:可以对接到自己的系统
  • 告警级别:区分紧急和普通告警
  • 故障分析:记录告警历史,便于复盘

2. 部署实施

参考:Installing Checkmate | Checkmate

2.1 在本地安装

1)Download our Docker compose file

2)Run docker compose up to start the application

3)Now the application is running at http://localhost

Optional Config:

If you want to monitor Docker containers, uncomment this line in docker-compose.yaml:

# volumes:
  # - /var/run/docker.sock:/var/run/docker.sock:ro
This gives the app access to your docker daemon via unix socket, please be aware of what you are doing.

安装的过程有点长,耐心等待。

安装完毕后,可以看到服务运行起来,可以使用 http://localhost 访问。

2.2 在服务器安装

如果需要监控的是服务器,并且需要在外网查看状态,那么需要修改配置。

修改docker-compose.yaml 文件中的 UPTIME_APP_API_BASE_URL,如下:

# 默认配置
UPTIME_APP_API_BASE_URL: "http://localhost:5000/api/v1"

# 调整为远程服务器地址
UPTIME_APP_API_BASE_URL: "http://x.x.x.x:5000/api/v1"

记得打开防火墙对应的端口。

2.3 系统监控Agent

GitHub:bluewave-labs/capture: An open source hardware monitoring agent for Checkmate

参考:Server monitoring agent | Checkmate 

如果要进行服务器设备的CPU、内存等硬件状态监控,需要安装 Capture,是一个checkmate的Agent。目前只能在linux系统使用

docker方式安装:

docker run -v /etc/os-release:/etc/os-release:ro \
    -p 59232:59232 \
    -e API_SECRET=REPLACE_WITH_YOUR_SECRET \
    -d \
    capture:latest

# REPLACE_WITH_YOUR_SECRET 需要设置 

If you don't want to pull the image, you can build and run it locally.

docker buildx build -f Dockerfile -t capture .

docker run -v /etc/os-release:/etc/os-release:ro \
    -p 59232:59232 \
    -e API_SECRET=REPLACE_WITH_YOUR_SECRET \
    -d \
    capture:latest

这样就可以在 checkmate 前端进行添加创建了,创建后效果如下:

2.4 其他配置

1)Pagespeed monitors 

配置后一直显示 inactive,上网搜索可能的原因是服务器无法访问 Google PageSpeed Insights API,导致无法获取数据,这点在进行部署时,可能要处理一下。

2)Maintenance

可以参考页面要求设置。

3)账号设置

可以邀请添加其他账号。

(end)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/978891.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Unity报错:InvalidOperationException: Insecure connection not allowed

Unity报错:InvalidOperationException: Insecure connection not allowed 介绍问题原因解决方案方案一:Unity配置文件修改方案二:将网址做备案和证书认证 总结 介绍 最近在做抖音小程序的升级(官方换新API),框架的加载…

linux中安装部署Jenkins,成功构建springboot项目详细教程

参考别人配置Jenkins的git地址为https,无法连上github拉取项目,所以本章节介绍通过配置SSH地址来连github拉取项目 目录: 1、springboot项目 1.1 创建名为springcloudproject的springboot项目工程 1.2 已将工程上传到github中,g…

idea + Docker + 阿里镜像服务打包部署

一、下载docker desktop软件 官网下载docker desktop,需要结合wsl使用 启动成功的画面(如果不是这个画面例如一直处理start或者是stop需要重新启动,不行就重启电脑) 打包成功的镜像在这里,如果频繁打包会导致磁盘空间被占满,需…

cpp中的继承

一、继承概念 在cpp中,封装、继承、多态是面向对象的三大特性。这里的继承就是允许已经存在的类(也就是基类)的基础上创建新类(派生类或者子类),从而实现代码的复用。 如上图所示,Person是基类&…

MySQL - Navicat自动备份MySQL数据

对于从事IT开发的工程师,数据备份我想大家并不陌生,这件工程太重要了!对于比较重要的数据,我们希望能定期备份,每天备份1次或多次,或者是每周备份1次或多次。 如果大家在平时使用Navicat操作数据库&#x…

el-input实现金额输入

需求&#xff1a;想要实现一个输入金额的el-input&#xff0c;限制只能输入数字和一个小数点。失焦数字转千分位&#xff0c;聚焦转为数字&#xff0c;超过最大值&#xff0c;红字提示 效果图 失焦 聚焦 报错效果 // 组件limitDialog <template><el-dialog:visible.s…

基于 C++ Qt 的 Fluent Design 组件库 QFluentWidgets

简介 QFluentWidgets 是一个基于 Qt 的 Fluent Designer 组件库&#xff0c;内置超过 150 个开箱即用的 Fluent Designer 组件&#xff0c;支持亮暗主题无缝切换和自定义主题色。 编译示例 以 Qt5 为例&#xff08;Qt6 也支持&#xff09;&#xff0c;将 libQFluentWidgets.d…

Metal学习笔记八:纹理

到目前为止&#xff0c;您已经学习了如何使用片段函数和着色器为模型添加颜色和细节。另一种选择是使用图像纹理&#xff0c;您将在本章中学习如何操作。更具体地说&#xff0c;您将了解&#xff1a; • UV 坐标&#xff1a;如何展开网格&#xff0c;以便可以对其应用纹理。 •…

JWT使用教程

目录 JWT (JSON Web Token)1. JWT简介(1) 什么是JWT(2) JWT有什么用(3) JWT认证方式 2. JWT的组成部分3. 签名的目的4. JWT与Token的区别5 JWT的优势6 JJWT签发与验证token(1) 引入依赖(2) 创建 Token(3) 解析Token(4) 设置过期时间(5) 自定义claims 7. JWT自定义工具类 JWT (J…

SpringBoot整合SpringSecurity、MyBatis-Plus综合实例:认证、授权

Spring Security 安全框架,系列文章: 《SpringSecurity创建一个简单的自定义表单的认证应用》 《SpringSecurity中的过滤器链与自定义过滤器》 《SpringSecurity实现自定义用户认证方案》 《SpringSecurity密码编码器:使用BCrypt算法加密、自定义密码编码器》 《SpringSecur…

CSDN年度评选揭晓,永洪科技AI技术与智能应用双星闪耀

近日&#xff0c;永洪科技在CSDN&#xff08;中国专业开发者社区&#xff09;的年度评选中&#xff0c;凭借在人工智能技术创新与vividime在行业应用中的卓越表现&#xff0c;一举斩获“人工智能企业”及“智能应用”双料大奖。这一荣誉不仅彰显了永洪科技在AI领域的领先地位&a…

深度学习之“雅可比矩阵与黑塞矩阵”

在深度学习中&#xff0c;导数在优化算法、梯度计算、反向传播等方面起着至关重要的作用。雅可比矩阵&#xff08;Jacobian Matrix&#xff09;和黑塞矩阵&#xff08;Hessian Matrix&#xff09;是多元微积分中的两个重要概念&#xff0c;理解它们的计算方法及应用对掌握深度学…

【MySQL】InnoDB中的Buffer Pool

目录 1、背景2、Buffer Pool【1】含义【2】组成【3】free链表【4】哈希查找缓存页【5】flush链表【6】LRU链表【7】刷新脏页到磁盘【8】Buffer Pool实例【9】chunk【10】Buffer Pool状态信息 3、总结 1、背景 mysql数据是存储在磁盘上的&#xff0c;但是从磁盘上读取数据的速度…

可狱可囚的爬虫系列课程 15:防盗链反爬虫的处理

一、防盗链了解 防盗链是一种技术手段&#xff0c;主要用于防止其他网站通过直接链接的方式使用本网站的资源&#xff08;如图片、文件等&#xff09;&#xff0c;从而节省带宽和服务器资源。当其他网站尝试直接链接到受保护的资源时&#xff0c;服务器会根据设置的规则判断请求…

Dashboard-frps

通过浏览器查看 frp的状态以及代理统计信息展示。 注&#xff1a;Dashboard 尚未针对大量的 proxy 数据展示做优化&#xff0c;如果出现 Dashboard 访问较慢的情况&#xff0c;请不要启用此功能。 需要在 frps.ini中指定 dashboard服务使用的端口&#xff0c;即可开启此功能&…

Element-Plus,使用 El-form中 的 scroll-to-error 没有效果问题记录

因业务需要表单组件中嵌套着表格列表&#xff0c;内容比较多&#xff1b; 所以需要表单校验不通过时&#xff0c;自动定位到不通过的节点&#xff1b; 但发现这个像是没有起到效果一样&#xff0c;后面就是排查的思路了&#xff1a; 容器高度问题&#xff1a;如果表单容器的高度…

实现 Leaflet 多类型点位标记与聚合功能的实战经验分享

在现代的地理信息系统&#xff08;GIS&#xff09;应用中&#xff0c;地图功能是不可或缺的一部分。无论是展示商业网点、旅游景点还是公共服务设施&#xff0c;地图都能以直观的方式呈现数据。然而&#xff0c;当数据量较大时&#xff0c;地图上可能会出现大量的标记点&#x…

次日留存率——mysql计算过程

次日留存率——mysql计算过程 问题&#xff1a;有一张表&#xff0c;有用户id、用户浏览时间a_time&#xff0c;计算每天的用户数、以及次日留存率、三日留存率 创建表user() CREATE TABLE user (id INT, a_time DATE );插入 10 条随机数据 INSERT INTO user (id, a_time) …

老旧android项目编译指南(持续更)

原因 编译了很多项目&#xff0c;找到了一些可观的解决办法 1. android studio里面的jdk版本切换 jdk版本切换在这里&#xff0c;一般安卓开发需要用到4个版本的jdk,jdk8, jdk11, jdk17, jdk21新版的android stuio是默认使用高版本的jdk,所以切换版本是很有必要的 2. 命令…

将VsCode变得顺手好用(1

目录 设置中文 配置调试功能 提效和增强相关插件 主题和图标相关插件 创建js文件 设置中文 打开【拓展】 输入【Chinese】 下载完成后重启Vs即可变为中文 配置调试功能 在随便一个位置新建一个文件夹&#xff0c;用于放置调试文件以及你未来写的代码&#xff0c;随便命名但…