Files
notes/excalidraw/工作相关/数据库设计-监控系统.md
2026-03-01 01:43:46 +08:00

349 lines
32 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
excalidraw-plugin: parsed
tags: [excalidraw]
---
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving'
# Excalidraw Data
## Text Elements
ElasticSearchAlarmNoticeJob 业务告警(每隔 5 分钟执行一次) ^XUjRIk85
获取所有系统信息 system_service 通过 service_alias 当做索引去 ELK 搜索) ^rJCpmdhg
查询到的日志映射为 SystemServiceAlarmInfoVO
从 Elasticsearch 的索引(prefixIndex)中批量删除一组文档,文档 ID 存储在 documentIds 列表中(就是上边每一条告警)。 ^dH9WM7G5
根据 alarm_rule_num 分组 ^k4C2U3Uf
alarm_rule 根据 alarm_rule_num 获取规则
规则存在切在有效时间内(take_effect_time、lose_efficacy_time ^6jJ9stOB
getDingTalkAccessToken ^JCQGasvq
通过 alarm 的 ding_talk_alarm_crowd_id 找 ding_talk_alarm_crowd
或者配置项 DING_TALK_ACCESS_TOKEN ^IzVKifGc
获取 system_service、project_service、告警规则 ID 对应的 alarm_rule_user 今儿获取对应的 user ^9DCH3Ziy
存储所有告警信息和部分规则信息 notice_alarm_nfo ^M5otQR0K
存在判断 alarm_silence_mode 决定告警模式 ^1LalfSRA
不发送 ^rawu9dw5
实时 ^Q9dDDRFD
1. 告警静默模式控制:支持不同的告警静默模式,如"从不告警"和"实时告警",分别直接决定是否发送告警。
2. 告警频率限制:对于其他静默模式,通过 Redis 记录告警次数和时间,控制告警频率,避免频繁告警。
3. 唯一标识:使用项目、服务和规则编号组成唯一key,确保不同告警源的记录不会冲突。
4. 过期机制:告警记录在Redis中设置了过期时间,过期后会重新开始计数。
5. 次数阈值控制:在静默周期内,只有当告警次数未超过预设阈值时才发送告警。 ^wRnbOQ9r
根据 alarm_rule_notice_type 决定发哪些通知 ^OdQ4saj5
通过 RabbitMQ 发送不同的信息。 ^usvXFZON
IbsSystemInspectionReportJob(每天凌晨 1:00 发送IBS数据巡检报告 3 个) ^X0rtGo8J
LostContactHostHardWareMonitorJob(主机失联监控) ^PLwTUbzM
alarm_rule 和 alarm_rule_host 获取对应规则 ^3w9XRlQl
通过 offset 确定主机失联多久发送告警。 ^0tXXEKAc
ip_library 的 last_monitor_time 决定最后监控时间 ^LZB0kUFy
发动并记录 host_hard_ware_monitor_info ^aG3puLq4
MonitorByteDanceSubscribeJob(监控字节日志稳定性) ^xrnKcNsx
/api/ibs/system/monitor/operate/monitor/event 接口创建 ^ZD6pw3Av
monitor_charge_interface_stability 中记录了任务 ^tPsgmjuE
MonitorChargeInterFaceStabilityJob(监控charge接口稳定性) ^2peOxVLP
monitor_charge_interface_stability 中记录了任务 ^MLJw9ZsC
接口创建 ^MdNyevCz
MonitorDgaContentCenterDataTaskJob(监控dga内容中心数据稳定性) ^hVQV97TB
monitor_dga_content_center_data ^KV4Bxgnb
MonitorDgaEdgeDataTaskJob(监控dga边缘数据稳定性) ^KtsJHcCY
monitor_dga_content_center_data ^xybrmXzJ
MonitorDgaEdgeServerDataStabilityJob(用量查询/运营数据一致性监控) ^RLQV9Hm4
monitor_dga_edge_server_data_stability ^3mImmINc
接口创建 ^scsUQLoQ
接口创建 ^PHA7DRrv
接口创建 ^jCcU1FKs
MonitorIQiyiSubscribeJob(监控爱奇艺日志稳定性) ^WUNMx2E9
monitor_iqiyi_subscribe ^t4NJh7rZ
MonitorLogStabilityJob(监控日志接收/上传IBS-HDFS稳定性) ^rwrSV2EN
monitor_log_stability ^V33dqBOH
MonitorLogSubscribeJob(监控日志稳定性) ^kANvdAfF
monitor_log_subscribe ^GGBIc9tq
MonitorProductIdEdgeBillDataStabilityJob(订购话单/运营数据一致性监控) ^AZnZdVrj
monitor_product_id_edge_bill_data_stability ^CRczhiCQ
MonitorStatisticInterFaceTaskJob(监控API数据统计接口稳定性) ^ueKFa4KT
monitor_statistic_inter_face ^8vuLUQxJ
QueryBackupDataTaskIdJob(备份数据创建任务开始) ^mJyjM4qy
backup_data_taskId ^e02gOLDf
QueryBackupDataTaskPercentJob ^WFNIq89X
QueryEnterpriseProductIdDomainInfoJob(更新企业订购数据) ^xr2ko4zt
RedisStorageAlarmInfoJob(处理redis中存储的监控信息) ^4SK95kvH
从 Redis 获取业务监控告警相关的键,遍历每个键,解析数据后异步处理(调用 packAndSendListAlarmInfo()),最后删除已处理的键。
从 Redis 获取硬件监控告警相关的键,遍历每个键,解析数据后异步处理(调用 handleListHostHardWareMonitor()),最后删除已处理的键。 ^TjA9ek8r
## Embedded Files
0c2314ba16e6640ff679eb835204bd0984fecd6b: [[../../attachment/images-uuid/c9b05b20870b494d863ec8359fc7bad9.png]]
%%
## Drawing
```compressed-json
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=
```
%%