Prometheus设置1d抓取间隔后target状态为unknown是否配置错误?
结论
你的配置本身没有错误,只需要等待24小时首次抓取完成后,target状态就会自动变为UP,可正常获取指标。
原理说明
- Prometheus新增抓取任务后,不会主动触发即时抓取,会严格遵循配置的
scrape_interval间隔执行抓取,首次抓取时间为任务添加后的第一个间隔周期结束时刻。 - 在首次抓取完成前,target的默认状态就是
unknown,抓取时长显示为0s属于正常表现。你之前20分钟间隔的测试结果已经完全验证了该逻辑,和当前1天间隔的现象完全一致,不存在配置错误。
可选快速验证方案
如果你不想等待24小时确认配置有效性,可以临时将ServiceMonitor中的interval参数调整为1~5分钟的短间隔,确认target状态变为UP、指标抓取正常后,再改回1440m即可,该调整不会影响后续每日抓取的逻辑。
异常排查(若24小时后状态仍未变为UP)
如果等待24小时后target仍未变为UP,可以按以下顺序排查:
- 检查对应服务的9759端口
/metrics路径是否可以正常访问,返回格式是否符合Prometheus指标规范 - 确认
scrape_timeout10s的配置是否足够覆盖指标接口的响应时长,若接口响应较慢可以对应调大该参数
内容的提问来源于stack exchange,提问作者ben amara marwa
相关产品推荐
相关产品推荐

