gpt4 book ai didi

xml - 使用 nagios 向 web 服务发送 xml 请求,并检索响应

转载 作者:数据小太阳 更新时间:2023-10-29 02:18:37 24 4
gpt4 key购买 nike

我目前正在通过 Soap UI 手动发送请求,请求如下。

   <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"xmlns:sear="http://www.mysite.com/ws/search/searchcustomer">
<soapenv:Header/>
<soapenv:Body>
<sear:searchCustomerRequest>
<sear:sustomerID>0000245</sear:sustomerID>
<sear:registrationStatus>R</sear:registrationStatus>
<sear:versionNumber>1.0</sear:versionNumber>
</sear:searchCustomerRequest>
</soapenv:Body>
</soapenv:Envelope>

现在,我希望可以使用 nagios 中的 check_http 类/函数发送它,

你知道这是否可能吗?

我希望它能给我以下信息:

<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Header/>
<env:Body>
<ns2:searchGprnResponse xmlns:ns2="http://www.mysite.com/ws/gasmapservice/searchcustomer">
<ns2:areaName>Blackrock, County Dublin</ns2:areaName>
<ns2:townName>Dublin City</ns2:townName>
<ns2:countyName>Dublin</ns2:countyName>
</ns2:searchcustomer>
</env:Body>
</env:Envelope>

然后我想用 grep 查找,比如说“Dublin”,如果计数大于 0,那么它会给出一个 OK,如果它不返回这个,那么它会给出一个失败。

我是 nagios 的新手,发现它的工作有点复杂,

任何想法将不胜感激,我认为 CURL 可能会起作用,但不确定 :)

再次感谢,本

最佳答案

看到你的问题有点晚了,但希望这能有所帮助。

您可以使用 check_http 插件来做到这一点。 check_http Nagios 插件随 Nagios 插件包一起提供 (nagios-plugins.org)

使用 -P 参数,您可以POST SOAP 请求,使用 -r 参数,您可以(正则表达式)匹配响应一个特定的字符串。

从命令行使用 check_http 插件:(我不得不截断您的 SOAP 请求,因为我无法发布带有 http 标题的 url...)

check_http -H my.webserver.org -p 8080 -u "/testing" -P '<soapenv:Envelope .... </soapenv:Envelope>' -r 'Dublin'

如果这对您有用,那么您需要在 Nagios 中创建一个新的检查命令和服务检查定义。

webservice 命令的示例检查命令定义(还使用警告和关键响应时间值)...

define command {
command_name check_webservice
command_line $USER1$/check_http -H $ARG1$ -p $ARG2$ -u $ARG3$ -P $ARG4$ -r $ARG5$ -w $ARG6$ -c $ARG7$
}

...和一个示例服务检查定义

define service {
use generic-service
host_name my.webserver.org
service_description check_webservice
check_command check_http_webservice!my.webserver.org!8080!/testing!'<soapenv:Envelope .... </soapenv:Envelope>'!'Dublin'!5!10
}

请注意引用:这些检查必不可少!在上面的示例中,我使用单引号来引用 SOAP POST 请求和响应。

关于xml - 使用 nagios 向 web 服务发送 xml 请求,并检索响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23371372/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com