Web Detector
Use this detector to find and assign services based on HTTP.
Configuration and use
Parameter | Description | Default |
---|---|---|
authEnable |
Whether to enable basic authentication. |
false |
authPassword |
Password required for authentication. |
admin |
authPreemtive |
Whether to send basic authentication even if the site did not ask for it. |
true |
authUser |
Username required for authentication. |
admin |
headers |
Optional headers to pass in the HTTP request. |
none |
ipMatch |
Matches against specific IP addresses or patterns. Use filters here to match single addresses or ranges. Substring match by default (see note below regarding regular expressions). |
none |
path |
The relative URL to call in the request. |
/ |
port |
Port of the web server the detector is connecting to. |
80 |
queryString |
The query string to add to the URL after a ? (for example, foo=bar&baz=zot). |
none |
responseRange |
Range for allowed HTTP error codes from the response. |
100-399 |
responseText |
Text to look for in the response body. This will be matched against every line, and it will be considered a success at the first match. Substring match by default (see note below regarding regular expressions). |
none |
retries |
none |
Number of attempts to test a service’s up/down status. |
schema |
Protocol/scheme to use. |
http |
serviceName |
A custom service name to identify this service. |
WEB |
timeout |
Timeout in milliseconds to wait for a response. |
2000 |
useHttpV1 |
True/false whether to use HTTP 1.0 or 1.1. |
false |
useSSLFilter |
If true, certificate verification is skipped. |
false |
useSystemProxy |
Should the system-wide proxy settings be used? Configure system proxy settings via system properties. |
false |
userAgent |
Set the user agent field in HTTP header to identify the OpenNMS monitor. |
OpenNMS WebMonitor |
virtualHost |
Set the virtual host field in HTTP header. In case of an HTTPS request, this is also the virtual domain to send as part of the TLS negotiation. |
none |
If there is a ~ at the beginning of the parameter, the rest of the string will be used as a regular expression pattern match, otherwise the match will be a substring one.
The regular expression match is anchored at the beginning and end of the line, so you will likely need to put a .* on both sides of your pattern unless you are going to match on the entire line.
|
Example configuration
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<foreign-source date-stamp="2010-06-29T13:15:30.494+02:00" name="test" xmlns="http://xmlns.opennms.org/xsd/config/foreign-source">
<scan-interval>1d</scan-interval>
<detector name="ServiceName" class="org.opennms.netmgt.provision.detector.web.WebDetector">
<parameter key="useSSLFilter" value="true"/>
<parameter key="port" value="443"/>
<parameter key="schema" value="https"/>
<parameter key="timeout" value="5000"/>
<parameter key="responseText" value="~^.*WoooRegEx.*$"/>
<parameter key="path" value="/login.jsp"/>
</detector>
<policies/>
</foreign-source>