夜莺-Nightingale
夜莺V6
项目介绍
架构介绍
快速开始
黄埔营
安装部署
升级
采集器
使用手册
API
数据库表结构
users
target
user_group
user_group_member
task_tpl
task_tpl_host
task_record
sso_config
role
role_operation
recording_rule
notify_tpl
metric_view
datasource
configs
chart_share
busi_group
busi_group_member
builtin_cate
board
board_payload
alerting_engines
alert_subscribe
alert_rule
alert_mute
alert_his_event
alert_cur_event
alert_aggr_view
FAQ
转发数据给多个时序库
机器列表数据异常
数据流图
监控数据时有时无
查询原始监控数据
快捷视图详解
告警自愈模块使用
仪表盘里只展示我的机器
仪表盘里图表数据缺失
设置自定义告警通知方式
target_up指标的问题
夜莺可以监控 x 么
告警和恢复的判断逻辑
容量规划问题
connection refused
登录与认证
数据采集器Categraf
日志写到`/var/log/messages`
告警规则&告警模板如何引用变量
采集到的数据是字符串怎么处理
管理员密码忘记了
制作大盘如何添加图片
添加loki数据源报错
v6小版本升级有什么 sql 要执行吗
机器列表有展示,但采集数据查询不到
n9e 启动异常报错
n9e集群部署配置修改
推送 Promethus 报错 OOO
机器列表怎么忽略云资源
告警规则仅在本业务组生效失败
categraf 启动 oracle 插件报错
告警自愈不生效
n9e查询时序库EOF报错
手动编译项目报错
promQL 使用函数标签信息丢失
内存使用率+可用率不等于100
夜莺仪表盘有哪些内置变量
categraf配置文件支持热加载吗
导入 Grafana 仪表盘无效数据源
如何查看报错消息
采集器-Categraf
开源生态
Telegraf
Prometheus
版权声明
第1章:天降奇兵
第2章:探索PromQL
开篇
理解时间序列
Metrics类型
初识PromQL
PromQL操作符
PromQL聚合操作
PromQL内置函数
在HTTP API中使用PromQL
最佳实践:4个黄金指标和USE方法
小结
第3章:Prometheus告警处理
开篇
Prometheus告警简介
自定义Prometheus告警规则
部署Alertmanager
Alertmanager配置概述
基于标签的告警处理路由
使用Receiver接收告警信息
告警模板详解
屏蔽告警通知
使用Recoding Rules优化性能
小结
第4章:Exporter详解
第5章:数据与可视化
第6章:集群与高可用
第7章:Prometheus服务发现
第8章:监控Kubernetes
开篇
初识Kubernetes
在Kubernetes下部署Prometheus
Kubernetes下的服务发现
使用Prometheus监控Kubernetes集群
基于Prometheus的弹性伸缩
小结
第9章:Prometheus Operator
参考资料
网络设备采集模板
编写网络设备采集模板
在采集模版点击右上角新增即可新增自定义采集模版。
下面给出一个 snmp 设备的自定义采集配置和基本参数说明。
基础参数说明
community:设备配置文件或者管理界面获取的参数,一般是 public 。
agent_host_tag :上报设备 ip 的 LabelName 。
retries : SNMP 请求失败时,系统会重试的次数。
max_repetitions :SNMP 一次请求中最多请求对象的数量。注意:这个值越高,可能会减少请求次数,但也可能增加网络负载。
获取 Scalar 数据类型:这些数据点在 MIB 中是以单个 OID 标识的。
# 获取 Scalar 数据
# cpu系统态使用率
[[instances.field]]
oid = "1.3.6.1.4.1.2021.11.9.0"
name = "cpu_usage_sys"
# cpu用户态使用率
[[instances.field]]
oid = "1.3.6.1.4.1.2021.11.10.0"
name = "cpu_usage_user"
# 设备空闲内存
[[instances.field]]
oid = "1.3.6.1.4.1.2021.4.6.0"
name = "mem_free"
获取 Table 类数据:有多列数据,也有多个索引,Categraf会自动获取Table中的所有索引字段做成时序数据的标签,会自动获取所有的数据列,作为指标上报。
# 获取 Table 类数据
[[instances.table]]
oid = "IF-MIB::ifTable"
name = "interface"
[[instances.table.field]]
oid = "IF-MIB::ifDescr"
name = "ifDescr"
# 有些列可能不是数值,比如 ifDescr 就是字符串,这个列无需作为指标上报,应该作为标签上报更合适,所以有个 is_tag=true 的配置。
is_tag = true
OID :用于唯一标识网络管理协议(例如 SNMP)中的每个管理对象的标识符。它是一种标准化的编号系统,用于标识管理信息库(MIB)中的对象及其层次结构。
- 树状结构:OID 表示一个分层的命名系统,每个节点都是一个数字,代表树的一个层次。
- 从根节点开始:所有的 OID 都从根节点(0)开始,然后逐级向下。 例如,OID 1.3.6.1.2.1.1.3.0 可以分解为:
- 1:ISO 标识符
- 3:组织编号
- 6:企业编号
- 1:管理编号
- 2:标准编号
- 1:MIB-II
- 1:系统组
- 3:系统运行时间
- 0:具体实例
保存好模板后就可以在即时查询中查看指标了。
排错分析:
如果配置完成后没有查看到相关指标可以在网络设备上执行以下相关命令确认是否有返回值。
正常网络设备返回值:
网络设备无返回值:
排错方向:
- OID 路径是否正确,不同设备和厂商可能会有不同的 OID 来表示;
- SNMP 是否正常加载了相关的 MIB 模块;
- 网络设备是否是私有 OID,这些 OID 需要配置特定的 MIB 模块,或者需要特定的硬件或软件支持;
- SNMPD 配置文件中字符串( public )权限和优先级顺序问题;