Uploaded image for project: 'OpenNMS'
  1. OpenNMS
  2. NMS-8927

Arbitrary Indexing on WS-Man collected data appears broken

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Critical
    • Resolution: Duplicate
    • Affects Version/s: 18.0.2
    • Fix Version/s: None
    • Security Level: Default (Default Security Scheme)
    • Labels:
      None
    • Environment:

      Description

      When defining arbitrary index on data collected by WsManCollector, only the last element collected is indexed.

      datacollection config:

      <resource-types>
          <resourceType name="wsProcIndex" label="Processor (wsman)"
                        resourceLabel="Processor (${wmiOSCpuName})">
            <persistenceSelectorStrategy class="org.opennms.netmgt.collection.support.PersistAllSelectorStrategy"/>
            <storageStrategy class="org.opennms.netmgt.dao.support.SiblingColumnStorageStrategy">
              <parameter key="sibling-column-name" value="wmiOSCpuName" />
            </storageStrategy>
          </resourceType>
      </resource-types>
      
          <group name="windows-os-wmi-processor"
                 resource-uri="http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_PerfFormattedData_PerfOS_Processor"
                 resource-type="wsProcIndex">
           <attrib name="Name" alias="wmiOSCpuName" type="string"/>
           <attrib name="InterruptsPersec" alias="wmiOSCpuIntsPerSec" type="Gauge"/>
           <attrib name="PercentProcessorTime" alias="wmiOSCpuPctProcTime" type="Gauge"/>
           <attrib name="PercentDPCTime" alias="wmiOSCpuPctDPCTime" type="Gauge"/>
           <attrib name="PercentInterruptTime" alias="wmiOSCpuPctIntrTime" type="Gauge"/>
           <attrib name="PercentUserTime" alias="wmiOSCpuPctUserTime" type="Gauge"/>
          </group>
      
      

      Collectd debug log:

      2016-11-30 15:29:06,579 DEBUG [Collectd-Thread-78-of-100] o.o.n.c.WsManCollector: Found 3 nodes.
      2016-11-30 15:29:06,580 DEBUG [Collectd-Thread-78-of-100] o.o.n.c.WsManCollector: Element values: {Frequency_Object=[], DPCsQueuedPersec=[86], Description=[], C1TransitionsPersec=[0], PercentDPCTime=[0], C3TransitionsPersec=[0], InterruptsPersec=[172], PercentC3Time=[0], PercentC1Time=[0], PercentProcessorTime=[0], Caption=[], Name=[_Total], C2TransitionsPersec=[132], Timestamp_PerfTime=[], Timestamp_Object=[], PercentPrivilegedTime=[0], DPCRate=[1], Frequency_Sys100NS=[], Timestamp_Sys100NS=[], PercentC2Time=[95], PercentIdleTime=[95], Frequency_PerfTime=[], PercentUserTime=[0], PercentInterruptTime=[0]}
      2016-11-30 15:29:06,580 DEBUG [Collectd-Thread-78-of-100] o.o.n.c.WsManCollector: Element values: {Frequency_Object=[], DPCsQueuedPersec=[39], Description=[], C1TransitionsPersec=[0], PercentDPCTime=[0], C3TransitionsPersec=[0], InterruptsPersec=[93], PercentC3Time=[0], PercentC1Time=[0], PercentProcessorTime=[0], Caption=[], Name=[0], C2TransitionsPersec=[82], Timestamp_PerfTime=[], Timestamp_Object=[], PercentPrivilegedTime=[0], DPCRate=[0], Frequency_Sys100NS=[], Timestamp_Sys100NS=[], PercentC2Time=[94], PercentIdleTime=[94], Frequency_PerfTime=[], PercentUserTime=[0], PercentInterruptTime=[0]}
      2016-11-30 15:29:06,581 DEBUG [Collectd-Thread-78-of-100] o.o.n.c.WsManCollector: Element values: {Frequency_Object=[], DPCsQueuedPersec=[46], Description=[], C1TransitionsPersec=[0], PercentDPCTime=[0], C3TransitionsPersec=[0], InterruptsPersec=[78], PercentC3Time=[0], PercentC1Time=[0], PercentProcessorTime=[0], Caption=[], Name=[1], C2TransitionsPersec=[50], Timestamp_PerfTime=[], Timestamp_Object=[], PercentPrivilegedTime=[0], DPCRate=[1], Frequency_Sys100NS=[], Timestamp_Sys100NS=[], PercentC2Time=[95], PercentIdleTime=[95], Frequency_PerfTime=[], PercentUserTime=[0], PercentInterruptTime=[0]}
      2016-11-30 15:29:06,581 DEBUG [Collectd-Thread-78-of-100] o.o.n.c.WsManCollector: Using resource GenericTypeResource[node=NodeLevelResource[nodeId=1158], resourceType=ResourceType [name=wsPDDiskIndex, label=Physical Storage (wsman), resourceLabel=Physical Disk (${wmiPDName}), persistenceSelectorStrategy=PersistenceSelectorStrategy [class=org.opennms.netmgt.collection.support.PersistAllSelectorStrategy, parameters=[]], storageStrategy=StorageStrategy [class=org.opennms.netmgt.dao.support.SiblingColumnStorageStrategy, parameters=[Parameter [key=sibling-column-name, value=wmiPDName], Parameter [key=replace-first, value=s/^\d+\s//], Parameter [key=replace-all, value=s/\s//], Parameter [key=replace-all, value=s/:/_/]]]],storageStrategy=org.opennms.netmgt.dao.support.SiblingColumnStorageStrategy@7be82777, persistenceSelectorStrategy=org.opennms.netmgt.collection.support.PersistAllSelectorStrategy@1fb157a4 for group named windows-os-wmi-PhysicalDisk
      

      Collected indexes are all the last element in the list of elements:

      [root@hounm25 etc]# ls -l ../share/rrd/snmp/1158/ws*
      ../share/rrd/snmp/1158/wsLDDiskIndex:
      total 4
      drwxrwxr-x 2 root root 4096 Nov 30 13:44 HarddiskVolume3
      
      ../share/rrd/snmp/1158/wsNetIndex:
      total 4
      drwxrwxr-x 2 root root 4096 Nov 30 13:36 isatap.{D3B391CE-4E6A-47DA-9664-FD698BC2B968}
      
      ../share/rrd/snmp/1158/wsPDDiskIndex:
      total 4
      drwxrwxr-x 2 root root 4096 Nov 30 12:45 D_
      
      ../share/rrd/snmp/1158/wsProcIndex:
      total 4
      drwxrwxr-x 2 root root 4096 Nov 30 14:00 1
      

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                j-white Jesse White
                Reporter:
                dino2gnt Dino Yancey
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: