Installed software version as dci

Started by Egert143, September 27, 2021, 11:35:40 AM

Previous topic - Next topic

Egert143

Hello

Is it possible to monitor specific installed software version via installed agent and get the result as dci ?

Egert

Filipp Sudanov

If you mean versions available in Software Inventory, this information is available in System.InstalledProducts agent's table. So you can use a script DCI or a Internal "Dummy DCI" and transformation script. In the script $node->readAgentTable("System.InstalledProducts") would return the table.

TOLeg

Could you describe the implementation of this solution in more detail?

Filipp Sudanov

Make a script named getPackageVersion in script library:

packageName = $ARGS[1];
if (packageName == null) return "package name not provided to script";
for (s : $node->softwarePackages) {
  if (s->name == packageName) {
    return s->version;
  }
}

Then create a script DCI with metric e.g.:
getPackageVersion("curl")
The script is using information about packages collected during configuration poll, so it will provide a value even if the agent is not available at the moment.