Prometheus的target是支持动态更新的,例如经过file_sd_configs配置将target放置到yaml文件中,当yaml文件中的内容发生变化时,Prometheus会自动更新自身的target,从而实现动态配置target。一样咱们也能够将rule放置到yaml文件中,咱们也但愿Prometheus可以动态更新rule规则。然而实验中却发现,修改了rule配置文件后Prometheus并不会动态刷新,重启Prometheus后才能生效,百度一番后找到以下两种方法(实际上是经过刷新Prometheus全部配置内容来实现刷新规则的)。web
找到Prometheus的进程ID,而后执行
kill -HUP pid
开启配置文件热加载,Prometheus启动时在参数中加入--web.enable-lifecycle(该参数默认关闭),而后执行curl命令刷新配置
/执行路径/prometheus --web.enable-lifecycle
curl -X POST http://IP:port/-/reload