Nacos 监控手册
Nacos 0.8.0版本完善了监控系统,支持通过暴露metrics数据接入第三方监控系统监控Nacos运行状态,目前支持prometheus、elastic search和influxdb,下面结合prometheus和grafana如何监控Nacos。与elastic search和influxdb结合可自己查找相关资料
搭建Nacos集群暴露metrics数据
配置application.properties文件,暴露metrics数据
management.endpoints.web.exposure.include=*
访问{ip}:8848/nacos/actuator/prometheus,看是否能访问到metrics数据
搭建prometheus采集Nacos metrics数据
下载你想安装的prometheus版本,地址为download prometheus
linux & mac
解压prometheus压缩包
tar xvfz prometheus-*.tar.gz
cd prometheus-*
修改配置文件prometheus.yml采集Nacos metrics数据
metrics_path: '/nacos/actuator/prometheus'static_configs:- targets: ['{ip1}:8848','{ip2}:8848','{ip3}:8848']
启动prometheus服务
./prometheus --config.file="prometheus.yml"
windows
下载对应的windows版本并解压
修改配置文件prometheus.yml采集Nacos metrics数据
metrics_path: '/nacos/actuator/prometheus'static_configs:- targets: ['{ip1}:8848','{ip2}:8848','{ip3}:8848']
启动prometheus服务
prometheus.exe --config.file=prometheus.yml
通过访问http://{ip}:9090/graph可以看到prometheus的采集数据,在搜索栏搜索nacos_monitor可以搜索到Nacos数据说明采集数据成功

搭建grafana图形化展示metrics数据
和prometheus在同一台机器上安装grafana,使用 yum 安装grafana
mac
brew install grafana
brew services start grafana
linux
sudo yum install https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-5.2.4-1.x86_64.rpm
sudo service grafana-server start
windows
参考文档:Install Grafana on Windows | Grafana documentation
访问grafana: http://{ip}:3000
配置prometheus数据源

导入Nacos grafana监控模版

Nacos监控分为三个模块:
- nacos monitor展示核心监控项

- nacos detail展示指标的变化曲线

- nacos alert为告警项

配置grafana告警
当Nacos运行出现问题时,需要grafana告警通知相关负责人。grafana支持多种告警方式,常用的有邮件,钉钉和webhook方式
钉钉告警
钉钉可以通过配置钉钉机器人

配置钉钉通知url

测试告警项

邮件告警
修改defaults.ini配置文件,增加邮件告警
#################################### SMTP / Emailing ##########################
[smtp]
enabled = true
host = smtp.126.com:25
user = xxxxxx
password = xxxxx
;cert_file =
;key_file =
skip_verify = true
from_address = xxxxxx@126.com[emails]
;welcome_email_on_sign_up = false
配置通知邮箱

Nacos metrics含义
jvm metrics
| 指标 | 含义 |
|---|---|
| system_cpu_usage | CPU使用率 |
| system_load_average_1m | load |
| jvm_memory_used_bytes | 内存使用字节,包含各种内存区 |
| jvm_memory_max_bytes | 内存最大字节,包含各种内存区 |
| jvm_gc_pause_seconds_count | gc次数,包含各种gc |
| jvm_gc_pause_seconds_sum | gc耗时,包含各种gc |
| jvm_threads_daemon | 线程数 |
Nacos 监控指标
| 指标 | 含义 |
|---|---|
| http_server_requests_seconds_count | http请求次数,包括多种(url,方法,code) |
| http_server_requests_seconds_sum | http请求总耗时,包括多种(url,方法,code) |
| nacos_timer_seconds_sum | Nacos config水平通知耗时 |
| nacos_timer_seconds_count | Nacos config水平通知次数 |
| nacos_monitor{name='longPolling'} | Nacos config长连接数 |
| nacos_monitor{name='configCount'} | Nacos config配置个数 |
| nacos_monitor{name='dumpTask'} | Nacos config配置落盘任务堆积数 |
| nacos_monitor{name='notifyTask'} | Nacos config配置水平通知任务堆积数 |
| nacos_monitor{name='getConfig'} | Nacos config读配置统计数 |
| nacos_monitor{name='publish'} | Nacos config写配置统计数 |
| nacos_monitor{name='ipCount'} | Nacos naming ip个数 |
| nacos_monitor{name='domCount'} | Nacos naming域名个数(1.x 版本) |
| nacos_monitor{name='serviceCount'} | Nacos naming域名个数(2.x 版本) |
| nacos_monitor{name='failedPush'} | Nacos naming推送失败数 |
| nacos_monitor{name='avgPushCost'} | Nacos naming平均推送耗时 |
| nacos_monitor{name='leaderStatus'} | Nacos naming角色状态 |
| nacos_monitor{name='maxPushCost'} | Nacos naming最大推送耗时 |
| nacos_monitor{name='mysqlhealthCheck'} | Nacos naming mysql健康检查次数 |
| nacos_monitor{name='httpHealthCheck'} | Nacos naming http健康检查次数 |
| nacos_monitor{name='tcpHealthCheck'} | Nacos naming tcp健康检查次数 |
nacos 异常指标
| 指标 | 含义 |
|---|---|
| nacos_exception_total{name='db'} | 数据库异常 |
| nacos_exception_total{name='configNotify'} | Nacos config水平通知失败 |
| nacos_exception_total{name='unhealth'} | Nacos config server之间健康检查异常 |
| nacos_exception_total{name='disk'} | Nacos naming写磁盘异常 |
| nacos_exception_total{name='leaderSendBeatFailed'} | Nacos naming leader发送心跳异常 |
| nacos_exception_total{name='illegalArgument'} | 请求参数不合法 |
| nacos_exception_total{name='nacos'} | Nacos请求响应内部错误异常(读写失败,没权限,参数错误) |
client metrics
| 指标 | 含义 |
|---|---|
| nacos_monitor{name='subServiceCount'} | 订阅的服务数 |
| nacos_monitor{name='pubServiceCount'} | 发布的服务数 |
| nacos_monitor{name='configListenSize'} | 监听的配置数 |
| nacos_client_request_seconds_count | 请求的次数,包括多种(url,方法,code) |
| nacos_client_request_seconds_sum | 请求的总耗时,包括多种(url,方法,code) |
Nacos-Sync监控
随着Nacos 0.9版本发布,Nacos-Sync 0.3版本支持了metrics监控,能通过metrics数据观察Nacos-Sync服务的运行状态,提升了Nacos-Sync的在生产环境的监控能力。 整体的监控体系的搭建参考Nacos监控手册
grafana监控Nacos-Sync
和Nacos监控一样,Nacos-Sync也提供了监控模版,导入监控模版
Nacos-Sync监控同样也分为三个模块:
- nacos-sync monitor展示核心监控项

- nacos-sync detail和alert展示监控曲线和告警

Nacos-Sync metrics含义
Nacos-Sync的metrics分为jvm层和应用层
jvm metrics
| 指标 | 含义 |
|---|---|
| system_cpu_usage | CPU使用率 |
| system_load_average_1m | load |
| jvm_memory_used_bytes | 内存使用字节,包含各种内存区 |
| jvm_memory_max_bytes | 内存最大字节,包含各种内存区 |
| jvm_gc_pause_seconds_count | gc次数,包含各种gc |
| jvm_gc_pause_seconds_sum | gc耗时,包含各种gc |
| jvm_threads_daemon | 线程数 |
应用层 metrics
| 指标 | 含义 |
|---|---|
| nacosSync_task_size | 同步任务数 |
| nacosSync_cluster_size | 集群数 |
| nacosSync_add_task_rt | 同步任务执行耗时 |
| nacosSync_delete_task_rt | 删除任务耗时 |
| nacosSync_dispatcher_task | 从数据库中分发任务 |
| nacosSync_sync_task_error | 所有同步执行时的异常 |
相关文章:
Nacos 监控手册
Nacos 0.8.0版本完善了监控系统,支持通过暴露metrics数据接入第三方监控系统监控Nacos运行状态,目前支持prometheus、elastic search和influxdb,下面结合prometheus和grafana如何监控Nacos。与elastic search和influxdb结合可自己查找相关资料…...
项目需求分析5大常见问题及解决方案
需求分析过程中,往往容易导致需求不准确和不完整,引起需求频繁变更,导致项目进度延误和成本增加;而需求分析的误解问题,导致交付产品无法满足客户期待,降低用户满意度和资源浪费。 那么在需求分析中&#x…...
C#学习系列相关之多线程(四)----async和await的用法
一、async、await用法的作用 async用法主要是用来作为修饰符将方法作为异步方法使用,await关键字只用作为在异步方法才能使用,也就是只有当方法有async修饰后,才能在方法中使用await,await后跟Task新的任务启动。(awai…...
极智AI | 大模型优化之KV Cache
欢迎关注我的公众号 [极智视界],获取我的更多经验分享 大家好,我是极智视界,本文来介绍一下 大模型优化之KV Cache。 邀您加入我的知识星球「极智视界」,星球内有超多好玩的项目实战源码下载,链接:https://t.zsxq.com/0aiNxERDq 在大模型的优化中经常会听到的一个技术叫…...
Android 使用 registerForActivityResult() 打开系统相册或相机获取图像
一、简介 当使用了 AndroidX 后,发现 startActivityForResult() 标记为过时了,而是推荐我们使用 registerForActivityResult() 函数。 registerForActivityResult() 函数是 Android 中用于启动 Activity 结果回调的新方式。这个函数的目的是简化在 Act…...
如何制作网页 ico
1. 制作 icon 可以通过 https://www.iconfont.cn/collections/detail?spma313x.7781069.1998910419.de12df413&cid13720 或者自己在 PPT 制作,然后截图导出png 文件。 2. 转换为 ico 文件 使用:https://www.bitbug.net/ 上传并且转换成自己要的…...
golang gorm 增删改查以及使用原生SQL(以操作mysql为例)
gorm mysql增删改查 model定义 package _caseimport "gorm.io/gorm"func init() {DB.Migrator().AutoMigrate(Teacher{}, Course{}) } type Roles []stringtype Teacher struct {gorm.ModelName string gorm:"size:256"Email string gorm:&q…...
代码随想录 单调栈part2
503. 下一个更大元素 II 给定一个循环数组 nums ( nums[nums.length - 1] 的下一个元素是 nums[0] ),返回 nums 中每个元素的 下一个更大元素 。 数字 x 的 下一个更大的元素 是按数组遍历顺序,这个数字之后的第一个比它更大的数…...
详解利用高斯混合模型拆解多模态分布 + 精美可视化
文章目录 一、前言二、主要内容三、总结🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/ 一、前言 本文旨在介绍如何利用高斯混合模型(Gaussian Mixture Models,简称 GMMs)将一维多模态分布拆分为多个分布。作为统计 / / /机器学习领域常用的概率模型...
排序算法之【归并排序】
📙作者简介: 清水加冰,目前大二在读,正在学习C/C、Python、操作系统、数据库等。 📘相关专栏:C语言初阶、C语言进阶、C语言刷题训练营、数据结构刷题训练营、有感兴趣的可以看一看。 欢迎点赞 👍…...
Qt中QTimer定时器的用法
Qt中提供了两种定时器的方式一种是使用Qt中的事件处理函数,另一种就是Qt中的定时器类QTimer。 使用QTimer类,需要创建一个QTimer类对象,然后调用其start()方法开启定时器,此后QTimer对象就会周期性的发出timeout()信号。 1.QTimer…...
vue-组件定义注册使用
vue组件使用的步骤 定义组件注册组件使用组件 定义组件 Vue.extend(options) 其中options和new Vue(options)出入的options对象几乎一样,但是也有不同。 创建 el不用写—最终所有组件需要经过一个vm的管理,由vm的el决定服务哪个容器。 data必须写成函…...
斑馬打印機打印中文
创建项目 首先說一下,本文章是借鉴了其他大佬的文章,然后我记录一下的文章。 首先创建好一个.net framework的winform项目。 这里面主要用到两个库文件: Fnthex32.dll、LabelPrint.dll。 Fnthex32这个有8位参数和9位参数的,我这…...
(一)Apache log4net™ 手册 - 介绍
0、相关概念 Log4j 几乎每个大型应用程序都包含自己的日志记录或跟踪 API。根据这一规则,E.U. SEMPER 🌹项目决定编写自己的跟踪 API。那是在 1996 年初。经过无数次的增强、几个化身和大量的工作,API 已经发展成为 log4j —— 一个流行的 Ja…...
基于Java的民宿管理系统设计与实现(源码+lw+部署文档+讲解等)(民宿预约、民宿预订、民宿管理、酒店预约通用)
文章目录 前言具体实现截图论文参考详细视频演示代码参考源码获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技…...
039:mapboxGL更换地图上的鼠标样式
第039个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+mapbox中更换地图上的鼠标的样式。 直接复制下面的 vue+mapbox源代码,操作2分钟即可运行实现效果 文章目录 示例效果配置方式示例源代码(共74行)相关API参考:专栏目标示例效果 配置方式 1)查看基础设置:htt…...
【云原生】K8S对外服务之Ingress
目录 一、Ingress 简介1.1Ingress 组成1.3Ingress-Nginx 工作原理 二、部署 nginx-ingress-controller2.1部署ingress-controller Pod及相关资源2.2ingress 暴露服务的方式2.3 采用方式二:DaemonSetHostNetworknodeSelector 三、采用方式二:DeploymentNo…...
分布式锁如何实现
分布式是现在的比较主流的技术,常常和微服务一起出现。那么对于多个实例之间,如何证分布式系统中多个进程或线程同步访问共享资源呢?我们其实一想到的就是锁,我们在java里边有 synchronized, 在python里有lock,但是这个…...
Mysql存储-EAV模式
Mysql存储-EAV模式 最近又又又搞一点新东西,要整合不同业务进行存储和查询,一波学习过后总结了一下可扩展性MAX的eav模式存储。 在eav这里的数据结构设计尤为关键,需要充分考虑你需要使用的字段、使用场景,当数据结构设计完成后便…...
全局变量报错:\Output\STM32.axf: Error: L6218E: Undefined symbol
全局变量报错: .\Output\STM32.axf: Error: L6218E: Undefined symbol key_num (referred from main.o). 这里只说全局变量哦,这是因为你在调用的.c文件里 把定义写在了函数里面,写函数外面就没事了 改为: .h的声明文件根本不用写…...
ACUITY IMAGING 070-200000控制器模块
ACUITY IMAGING 070-200000 控制 / 模拟模块ACUITY IMAGING 070-200000 是美国 ACUITY IMAGING 公司出品的工业级高精度信号处理与控制模块,主要用于机器视觉、自动化检测及精密成像系统,负责信号采集、逻辑控制与数据传输,是工业视觉系统的核…...
SenseVoice-Small ONNX精彩案例分享:10分钟会议录音→带标点可编辑文本
SenseVoice-Small ONNX精彩案例分享:10分钟会议录音→带标点可编辑文本 本文展示SenseVoice-Small ONNX语音识别工具在实际会议录音转写场景中的惊艳效果,通过真实案例演示如何将10分钟会议录音快速转换为带标点、可编辑的规范文本。 1. 案例背景与工具价…...
OpenClaw+Qwen3.5-9B:法律文档审查助手实战
OpenClawQwen3.5-9B:法律文档审查助手实战 1. 为什么需要AI法律文档助手? 去年接手一个跨境合作项目时,我曾在72小时内手动审阅了137页的英文合同草案。那段经历让我意识到:传统人工审查不仅效率低下,还容易因疲劳遗…...
终极fswatch过滤器配置指南:如何用正则表达式精准控制文件监控范围
终极fswatch过滤器配置指南:如何用正则表达式精准控制文件监控范围 【免费下载链接】fswatch A cross-platform file change monitor with multiple backends: Apple OS X File System Events, *BSD kqueue, Solaris/Illumos File Events Notification, Linux inoti…...
DICOM序列实时渲染从28fps到126fps:C++无锁队列+GPU命令缓冲复用+ROI局部重绘的工业级调优日志
第一章:DICOM序列实时渲染性能跃迁全景概览 现代医学影像工作流对DICOM序列的实时可视化提出严苛要求:从百层CT扫描到高分辨率MRI动态序列,传统CPU软渲染方案常遭遇帧率跌破15 FPS、交互延迟超300ms的瓶颈。近年来,GPU加速管线、零…...
低成本自动化:OpenClaw+Gemma-3-12b-it替代Zapier的5个场景
低成本自动化:OpenClawGemma-3-12b-it替代Zapier的5个场景 1. 为什么选择OpenClawGemma替代Zapier 作为一个长期使用Zapier的自动化爱好者,我最近开始尝试用OpenClawGemma-3-12b-it组合来替代部分Zapier工作流。这个转变源于两个痛点:一是Z…...
javaweb农贸市场摊位商户管理信息系统设计与实现
目录同行可拿货,招校园代理 ,本人源头供货商功能模块设计商户服务功能市场运营功能技术实现要点项目技术支持源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作同行可拿货,招校园代理 ,本人源头供货商 功能模块设计 用户管理模块 角色划分&…...
护网行动入门指南:零基础也能参与,快速积累网安实战经验
护网行动入门指南:如何参与并积累实战经验 护网行动是国内最高规格的网络安全实战演练,旨在检验企业、单位的网络安全防御能力,现已成为网络安全领域的“实战练兵场”。对计算机专业学生而言,参与护网行动不仅能积累宝贵的实战经…...
CCF推荐C类会议与期刊全景解析:计算机网络研究者的学术地图
1. CCF推荐C类会议与期刊:计算机网络研究者的学术指南针 刚进入计算机网络领域的研究生常常会面临一个困惑:面对海量的学术会议和期刊,到底该从哪里入手?中国计算机学会(CCF)推荐的C类会议和期刊就像一张精…...
Minecraft启动器与游戏配置工具全攻略:从新手到大师的进阶指南
Minecraft启动器与游戏配置工具全攻略:从新手到大师的进阶指南 Minecraft启动器是每一位玩家进入方块世界的第一道门,而一款优秀的游戏配置工具则能让你的冒险之旅更加顺畅。本文将以玩家视角,带你深入了解如何利用PCL2-CE这款强大的开源工具…...
