IBM Support

IZ38488: Unable to reference $$11 in genalarmvb when the value is an IP address.

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Product: System Service Monitors
    Release: 4.x
    Severity: High
    
    Environment: any
    
    Problem description: The Generic Alarm subagent fails to
    reference the correct value for a varbind when used in the
    genalarm control row if the value for the varbind is an IP
    address.  String and numeric values are not affected.
    
    Expected behaviour: IP Addresses should be displayed correctly.
    
    Steps to re-create:
    Monitor the availability of an IP address.  Use genalarm to
    monitor the value of destination available.  Store a varbind for
    the genalarm control row that captures the IP address of the
    destination.  Reference the varbind in the description for the
    threshold event in genalarm.  When the trigger for the genalarm
    control row is sent, the description reads "$11" where as it
    should read the IP address of the destination.
    
    example cfg
    
    event reset
    event description="violationevent"
    event type=snmp-trap
    event community="public"
    event create
    violationevent=$?
    
    availability reset
    availability dest=<replace with IP for webserver>
    availability port=80
    availability method=application
    availability sample=10
    availability datacontrol=on
    availability onevent=0
    availability offevent=0
    availability event=0
    availability eventstatus=alwaysready
    availability buckets=0
    availability history=0
    availability passevent=0
    availability failevent=0
    availability create
    availabilityMonitor=$?
    
    genalarm reset
    genalarm var="$availabilityDataAvailable.$availabilityMonitor"
    genalarm vardescr="destination available"
    genalarm interval=15
    genalarm type=absolute
    genalarm startup=rising
    genalarm mode=push
    genalarm matchvalue=2
    genalarm matchduration=0
    genalarm matchevent=$violationevent
    genalarm matchseverity=warning
    genalarm matchdescr="$$11"
    genalarm datacontrol=on
    genalarmvb
    oid="$availabilityControlDestAddress.$availabilityMonitor"
    genalarmvb store
    genalarm create
    
    The resulting trap is;
    
    11 variable bindings:
      .1.3.6.1.4.1.1977.25.1.1.4.1   OCTET STRING
    .1.3.6.1.4.1.1977.6.2.1.2.2
      .1.3.6.1.4.1.1977.25.1.1.5.1   OCTET STRING   destination
    available
      .1.3.6.1.4.1.1977.25.2.1.1.1.12.1.3.6.1.4.1.1977.6.2.1.2.2
    OBJECT IDENTIF
    ER      .1.3.6.1.4.1.1977.6.2.1.2.2
      .1.3.6.1.4.1.1977.25.1.1.7.1   Integer32      1
      .1.3.6.1.4.1.1977.25.1.1.9.1   Integer32      6
      .1.3.6.1.4.1.1977.25.2.1.2.1.12.1.3.6.1.4.1.1977.6.2.1.2.2
    Integer32
    1
      .1.3.6.1.4.1.1977.25.1.1.21.1  Integer32      2
      .1.3.6.1.4.1.1977.25.1.1.22.1  Integer32      0
      .1.3.6.1.4.1.1977.25.1.1.24.1  Integer32      2
      .1.3.6.1.4.1.1977.25.1.1.25.1  OCTET STRING   $11
      .1.3.6.1.4.1.1977.6.1.1.2.2    IpAddress      a.b.c.d
    
    The penultimate line of the output above read $11, but should
    read with the IP address, as with the last line.
    

Local fix

  • Use the following arithmetic config as an alternative to the
    genalarm control row.
    
    arithmetic interval=15
    arithmetic window=1
    arithmetic description="availability"
    arithmetic event=$violationevent
    arithmetic expression="
     @v = .availabilityDataAvailable.*;
     @ip = .availabilityControlDestAddress.*;
     @v = 2 ?
      @result = ipaddr{'@ip'};
     :
      @result = 0;
     @result
    "
    arithmetic create
    

Problem summary

  • The custom varbind formatting logic had been written inside
    genalarm. This logic did not support all ASN MIB data types,
    including IP addresses.
    

Problem conclusion

  • This was remedied by calling the formatting functions in the
    master agent which do support all data types, including IP
    address.
    
    The fix for this APAR is contained in the following maintenance
    packages:
       | fix pack | 4.0.0-TIV-SSM-FP0007
    

Temporary fix

Comments

APAR Information

  • APAR number

    IZ38488

  • Reported component name

    NETCOOL SYS SVC

  • Reported component ID

    5724P4300

  • Reported release

    400

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2008-11-23

  • Closed date

    2008-12-18

  • Last modified date

    2009-02-05

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    NETCOOL SYS SVC

  • Fixed component ID

    5724P4300

Applicable component levels

  • R400 PSY

       UP

[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSCP7NT","label":"Netcool System Service Monitor"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"400","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
05 February 2009