从v5升级到v6.0.0-ga.10 告警不触发

Viewed 131

image.png
image.png
image.png

主节点日志和edge日志没有明显报错
image.png

image.png

11 Answers

关联后还是没有告警啊

image.png
image.png
image.png
image.png
关联后依旧没有告警

image.png
edge 配置

你是边缘机房的模式吧。边缘机房需要部署n9e-edge,如果也部署了,看看边缘机房的n9e-edge是否有异常日志

edge也没明显报错诶

image.png

edge和主节点之间是如何通信的啊 是主节点主动推送还是从节点被动拉取?

我现在增加了一个测试规则 用的一个一直为1的量 也是没触发的
image.png
image.png

image.png 这里不太正常,一个告警引擎实例,应该只能属于一个引擎集群,你这里属于了三个引擎集群。可以把你的各个机房 n9e-edge 使用的配置文件都贴一下看看

我测了下主节点的告警是正常的 edge节点的告警都不行 是不是还有哪里需要配置 主要日志完全没有报错 我也看不出啥

我的edge是docker启动的所以地址可能会重复集群之前是跨机房的 这里的地址我不知道是怎么注册的 配置 就改了主集群的地址 和引擎名称

[Global]
RunMode = "release"

[CenterApi]
Addrs = ["http://mask:17000"]
BasicAuthUser = "xxxxx"
BasicAuthPass = "xxxxxxxx"
# unit: ms
Timeout = 9000

[Log]
# log write dir
Dir = "logs"
# log level: DEBUG INFO WARNING ERROR
Level = "DEBUG"
# stdout, stderr, file
Output = "stdout"
# # rotate by time
# KeepHours = 4
# # rotate by size
# RotateNum = 3
# # unit: MB
# RotateSize = 256

[HTTP]
# http listening address
Host = "0.0.0.0"
# http listening port
Port = 19000
# https cert file path
CertFile = ""
# https key file path
KeyFile = ""
# whether print access log
PrintAccessLog = false
# whether enable pprof
PProf = false
# expose prometheus /metrics?
ExposeMetrics = true
# http graceful shutdown timeout, unit: s
ShutdownTimeout = 30
# max content length: 64M
MaxContentLength = 67108864
# http server read timeout, unit: s
ReadTimeout = 20
# http server write timeout, unit: s
WriteTimeout = 40
# http server idle timeout, unit: s
IdleTimeout = 120

[HTTP.APIForAgent]
Enable = true
# [HTTP.APIForAgent.BasicAuth]
# user001 = "ccc26da7b9aba533cbb263a36c07dcc5"

[HTTP.APIForService]
Enable = true
[HTTP.APIForService.BasicAuth]
user001 = "ccc26da7b9aba533cbb263a36c07dcc5"

[Alert]
[Alert.Heartbeat]
# auto detect if blank
IP = ""
# unit ms
Interval = 1000
EngineName = "NA"

# [Alert.Alerting]
# NotifyConcurrency = 10

[Pushgw]
# use target labels in database instead of in series
LabelRewrite = true
# # default busigroup key name
# BusiGroupLabelKey = "busigroup"
# ForceUseServerTS = false

# [Pushgw.DebugSample]
# ident = "xx"
# __name__ = "xx"

# [Pushgw.WriterOpt]
# # Writer Options
# QueueCount = 1000
# QueueMaxSize = 1000000
# QueuePopSize = 1000
# # ident or metric
# ShardingKey = "ident"

[[Pushgw.Writers]]
# Url = "http://127.0.0.1:8480/insert/0/prometheus/api/v1/write"
Url = "http://prometheus:9090/api/v1/write"
# Basic auth username
BasicAuthUser = ""
# Basic auth password
BasicAuthPass = ""
# timeout settings, unit: ms
Headers = ["X-From", "n9e"]
Timeout = 10000
DialTimeout = 3000
TLSHandshakeTimeout = 30000
ExpectContinueTimeout = 1000
IdleConnTimeout = 90000
# time duration, unit: ms
KeepAlive = 30000
MaxConnsPerHost = 0
MaxIdleConns = 100
MaxIdleConnsPerHost = 100
## Optional TLS Config
# UseTLS = false
# TLSCA = "/etc/n9e/ca.pem"
# TLSCert = "/etc/n9e/cert.pem"
# TLSKey = "/etc/n9e/key.pem"
# InsecureSkipVerify = false
# [[Writers.WriteRelabels]]
# Action = "replace"
# SourceLabels = ["__address__"]
# Regex = "([^:]+)(?::\\d+)?"
# Replacement = "$1:80"
# TargetLabel = "__address__"
[Alert.Heartbeat]
# auto detect if blank
IP = ""

这里IP如果不为空,就使用这里配置的字符串作为edge的唯一标识,如果为空,就自动探测本地IP作为唯一标识。你的环境下,如果多个edge自动探测出来的IP是相同的,那就不能用自动探测的方式。需要保证每个edge的标识都是唯一的,手工在IP字段配置个唯一字符串试试吧。

添加了 也是没告警

image.png

NA 的 n9e-edge 日志可以再贴下

哪个接口是拉取告警规则的啊 我看了下貌似没看到

我找到问题了 是因为 我是从v5升级上来的 生成的v6配置的prometheus地址是公网地址
对于中心节点来说确实需要公网地址来查询数据
我安全组对自己访问过来的端口没有放开 (因为我认为会走内网查询)

我觉得这里配置还是有点不合理的 edge应该直接用内网地址查询规则而不是从中心节点获取到的公网地址走

了解了

我找到问题了 是因为 我是从v5升级上来的 生成的v6配置的prometheus地址是公网地址
对于中心节点来说确实需要公网地址来查询数据
我安全组对自己访问过来的端口没有放开 (因为我认为会走内网查询)

我觉得这里配置还是有点不合理的 edge应该直接用内网地址查询规则而不是从中心节点获取到的公网地址走