Advanced Dci

Started by Egert143, June 08, 2020, 11:32:28 AM

Previous topic - Next topic

Egert143

Hello

Is it possible to create "advanced" dci poll like:

Example 1: Check if windows service is running and network speed is above some value. If some criteria is not matched, return specific alert message, not just general error.

Example 2: Check for multiple wifi ap frequencis on same tower and if they overlap then alert, but with specific message again, like what ap's are overlaping.

Example 3: Count specific node events per given time. Like Event X happened over last 7 days.

Egert

Filipp Sudanov

You can use DCI with origin "Script". For that you need to create a script in the script library and confgure that script name in properties of a DCI.
Then in the script you can read parameters directly from agent
    $node->readAgentParameter(name)
($node will be the object of node, to which the DCI belongs. You can also use this method on other nodes).

You can also get last collected value of any DCI - https://www.netxms.org/documentation/nxsl-latest/#func-getdcivalue

You can use "abort" operator in the script - if it's called, the script will terminate and no new datapoint will be generated at this time.


Some examples of NXSL scripts are available here: https://wiki.netxms.org/wiki/SG:Script_Examples