I’ve searched the OpenNMS Docs and found that to auto-discovery my self-defined service on a node we should define a detector in a foreign source and then monitor doing the polling job. But here have some monitors that I can’t find the matched detector collaborate with:
and the two monitors in which I didn’t find a related detector in any foreign source XML and Docs:
My Expected outcome:
I want to know if all the monitor that is listed above have their specific detector collaborated with and which it is? if not, how can I tell Meridian to provision my service to the node automatically, for instance, service
Script_Example monitor by
OpenNMS version: Meridian 2020.1.3
Detectors and monitors are not strictly pairwise, and don’t have to be related at all (except by service name)
For example, a service can be detected by the FooDetector (which isn’t real and does nothing), which is then monitored by a completely different BarMonitor that’s perhaps more specific to the service.
As an example:
<detector name="Latency_to_FOO" class="org.opennms.netmgt.provision.detector.simple.HttpDetector">
<parameter key="ipMatch" value="127.0.0.1"/>
<!-- only run this detector against localhost -->
and the poller:
<service name="Latency_to_FOO" interval="300000" user-defined="false" status="on">
<parameter key="rrd-repository" value="/opt/opennms/share/rrd/response"/>
<parameter key="rrd-base-name" value="lat_foo"/>
<parameter key="timeout" value="15000"/>
<page disable-ssl-verification="true" host="foo.example.com" http-version="1.1" method="GET" path="/narf/OpenNMS_1M_Lat" port="80" response-range="100-399" scheme="http" virtual-host="foo.example.com" xmlns=""/>
<monitor service="Latency_to_FOO" class-name="org.opennms.netmgt.poller.monitors.PageSequenceMonitor"/>
In most cases, you should be discovering nodes into a requisition. If the nodes have a requisition, you can add a service directly to the node with no detector defined in the foreign source.
Thanks, I got that they’re only related by service name.
@dino2gnt I want to ask 1 more further question. If I want to add service
Script_Example automatically to the node with a detector, which detector do you suggest?
Thank you very much, your response makes me feel confident with my assuming.
Just FYI, if you want a bit more control, don’t use a detector. You can just assign any service manually to the IP interface in the requisition.