【问题标题】:Remove HTTP headers from Prometheus in Zabbix从 Zabbix 中的 Prometheus 中删除 HTTP 标头
【发布时间】:2020-09-24 10:37:00
【问题描述】:

我有一台安装了 Nginx VTS 模块的服务器,它以 prometheus 格式输出指标。

当我尝试通过 Zabbix 主动检查 web.page.get 时,我得到了 HTTP 标头,然后是以下格式的数据:

HTTP/1.1 200 OK

Server: nginx

Date: Thu, 24 Sep 2020 09:16:20 GMT

Content-Type: text/plain

Content-Length: 33769

Connection: close

Vary: Accept-Encoding



# HELP nginx_vts_info Nginx info
# TYPE nginx_vts_info gauge
nginx_vts_info{hostname="example",version="1.18.0"} 1
# HELP nginx_vts_start_time_seconds Nginx start time
# TYPE nginx_vts_start_time_seconds gauge
nginx_vts_start_time_seconds 1600367492.145

# snip output...

我写了一个正则表达式,去掉了表头,只输出了第一行:

# \n\s?\n(.*)

# HELP nginx_vts_info Nginx info

如何重写表达式,以便删除标头而其余数据可用?

【问题讨论】:

  • 试试\n\s?\n([\s\S]*)
  • @Liju 谢谢一百万。为我工作!给出答案而不是评论?

标签: regex http-headers zabbix


【解决方案1】:

请尝试下面的正则表达式

\n\s?\n([\s\S]*)

在正则表达式中. 不会检查换行符,除非设置了特定的标志。因此在您的示例中,仅返回了第一行。所以重写它以包含换行符也会有所帮助。

【讨论】:

    猜你喜欢
    • 2018-04-24
    • 1970-01-01
    • 2013-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-13
    • 2010-09-21
    • 2015-01-20
    相关资源
    最近更新 更多