WS-Man Asset

The WS-Man asset provisioning adapter performs WS-Man queries to populate asset records for the node. This can be very useful for automatically populating asset fields in a large number of managed systems. You can either fill in some of the existing asset fields (for example, manufacturer, vendor, modelnumber, and/or serialnumber) or construct a custom-formatted message for the comment field.

The WS-Man asset provisioning adapter is invoked every time provisiond adds or updates a node. With the default provisiond configuration, the update takes place once every 24 hours.

You can reload the provisiond WsmanAssetProvisioningAdapter with this command (or just restart OpenNMS):

${OPENNMS_HOME}/bin# ./ --parm 'daemonName Provisiond.WsmanAssetProvisioningAdapter'
By default, this adapter runs 5 minutes after a provisiond nodeScanCompleted event is sent to indicate that provisiond completed the import.


To use this feature you have to install the WS-Man asset provisioning plugin from the repository.

  • For RPM-based distributions:

    • yum install opennms-plugin-provisioning-wsman-asset

  • For Debian-based distributions:

    • apt-get install opennms-plugin-provisioning-wsman-asset


Mapping WQL queries to node asset fields is defined in the ${OPENNMS_HOME}/etc/wsman-asset-adapter-configuration.xml file.

<wsman-asset-adapter-configuration xmlns="">
    <package name="some_package">
        <vendor>Microsoft Corporation</vendor>
        <assetField name="ram" formatString="${TotalPhysicalMemory}">
                <wql resourceUri="*" query="SELECT TotalPhysicalMemory FROM Win32_ComputerSystem" alias="TotalPhysicalMemory"/>
        <assetField name="serialNumber" formatString="${modelo}">
                <wql resourceUri="*" query="SELECT Model FROM Win32_ComputerSystem" alias="modelo"/>
        <assetField name="cpu" formatString="Socket(s): ${numCPUs} Core(s): ${numCores}">
                <wql resourceUri="*" query="SELECT NumberOfProcessors FROM Win32_ComputerSystem" alias="numCPUs"/>
                <wql resourceUri="*" query="SELECT NumberOfLogicalProcessors FROM Win32_ComputerSystem" alias="numCores"/>

Variables in the formatString using the ${token} syntax will be replaced by values that are defined by the list of WQL aliases.