【问题标题】:How to fix a Zabbix Trigger that always returns EOF如何修复始终返回 EOF 的 Zabbix 触发器
【发布时间】:2013-04-17 02:32:23
【问题描述】:

我在配置 Zabbix 模板项/触发器时遇到问题。我正在尝试设置触发器来检查网页的 HTTP 状态。但是,我似乎遇到了一些困难,因为它总是返回“EOF”错误。

我阅读了web.page.regexp 将在出现错误时返回 EOF 的文档。我知道正则表达式的主机有效,因为我从主机“卷曲”了它。

下面是我的物品键:

web.page.regexp[127.0.0.1,,9198,HTTP/1\.1.*,12]

这是我的触发器:

(({Tungsten Check:web.page.regexp[127.0.0.1,,9198,HTTP/1\.1.*,12].regexp(HTTP/1.1\ 200)})#1)

有没有人看到明显的错误?我正在按照以下教程中的说明进行操作:HTTP Return Code Monitoring Without Web Monitoring

我不确定我是否使用 CURL 编译了 Zabbix,这可能是原因吗?

更新 #1

我重新编译了支持 CURL 的 Zabbix,但它没有解决问题,仍然收到 EOF 消息。

【问题讨论】:

  • 不是“HTTP/1\.1”。没有被解析的状态响应的一部分,因为它不是“页面”的一部分,甚至不是标题?即使使用 libcurl,卷曲它也可能与 zabbix 所做的不同。
  • 您为什么不想使用网络检查?这就是他们的目的。

标签: ubuntu triggers zabbix


【解决方案1】:

以下适用于我的实例:

zabbix_get -s localhost -k web.page.regexp[www.bbc.co.uk,,80,HTTP/1\.1.*,12]

然后返回

HTTP/1.1 200

我认为当它尝试选择空的前 12 个字符时会出现该错误。我可以通过从无效的主机/端口请求或正则表达式不匹配任何内容来生成该错误。

看到我使用了你的正则表达式,我猜你要么没有从你的网络服务器收到任何东西,要么它没有返回与你的正则表达式匹配的行——也许是 HTTP 1.0?

我建议使用适当的网络检查,即使它只是一次检查。会更容易一些。

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 2015-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多