IV35827: ERROR PRODUCED IN NETCOOL.LOG WHEN USING AN EVENTREADER WITH A BLANK FILTER VALUE

Subscribe

You can track all active APARs for this component.

APAR status

  • Closed as program error.

Error description

  • Netcool/Impact 6.1.0.1 Fix Pack 1 (build 324)
    
    Configuring an OMNIbusEventReader with a blank Filter produces a
    syntax warning message in the netcool.log and, although it does
    not impinge upon performance or the processing of the Policies,
    it does add to the rapid roll-over of the log files and is
    disturbing to the end customer's sensibilities.
    
    So, a configuration like:
    
      #Mon Jan 21 15:01:12 GMT 2013
      #This file was written by Impact Server.
      impact.omni_er.autostartup=true
      impact.omni_er.enableorderevents=true
      impact.omni_er.eventlockingexpression=ServerName+"\:"+
        ServerSerial
      impact.omni_er.executeallmatchingpolicies=false
      impact.omni_er.isfilteractive.1=true
      impact.omni_er.isfilteractive.2=true
      impact.omni_er.isfilteractive.3=true
      impact.omni_er.isfilteractive.4=true
      impact.omni_er.ispolicyinchainforfilter.1=false
      impact.omni_er.ispolicyinchainforfilter.2=false
      impact.omni_er.ispolicyinchainforfilter.3=false
      impact.omni_er.ispolicyinchainforfilter.4=false
      impact.omni_er.logtofile=true
      impact.omni_er.numfilters=4
      impact.omni_er.objectserver.collectreports=false
      impact.omni_er.objectserver.datasource=ObjServ_DS
      impact.omni_er.objectserver.fields=*
      impact.omni_er.objectserver.getdeletes=false
      impact.omni_er.objectserver.getstatusevents=false
      impact.omni_er.objectserver.getupdates=true
      impact.omni_er.objectserver.orderby=
      impact.omni_er.objectserver.polltime=3000
      impact.omni_er.objectserver.useiduc=false
      impact.omni_er.policyname.1=Policy_001
      impact.omni_er.policyname.2=Policy_002
      impact.omni_er.policyname.3=Policy_003
      impact.omni_er.policyname.4=Policy_004
      impact.omni_er.restriction.1=
      impact.omni_er.restriction.2=Location\!\=''
      impact.omni_er.restriction.3=Customer\!\=''
      impact.omni_er.restriction.4=Service\!\=''
    
    with simple Policies doing not a lot - like:
    
      PN="Policy_001: ";
      ID="ID_"+ @Serial +"_"+ @StateChange +": ";
      ANN="Start";
      Log(1,PN+ID+ANN);
    
      ANN="Middle";
      Log(2,PN+ID+ANN);
    
      ANN="End";
      Log(1,PN+ID+ANN);
    
    produces the messages:
    
      21 Jan 2013 15:11:52,086 WARN  [EventFilter]
      EventFilter.getMatchingPoliciesForEvent: Could not parse the
      Expression:
      java.lang.RuntimeException:
      com.micromuse.common.parser.internal.core.ParseException:
      Encountered ";" at line 1, column 10.
      Was expecting one of:
          <INTEGER_LITERAL> ...
          <FLOAT_LITERAL> ...
          <DATETIME_LITERAL> ...
          <DATE_LITERAL> ...
          "-" ...
          "~" ...
          "!" ...
          "(" ...
          "{" ...
          "@" ...
          "true" ...
          "false" ...
          <IDENTIFIER> ...
          "\"" ...
          "\'" ...
    
              at
      com.micromuse.response.common.parser.IPLPolicy.getNode(
      IPLPolicy.java:106)
              at
      com.micromuse.response.common.parser.IPLPolicy.execute(
      IPLPolicy.java:54)
              at
      com.micromuse.response.common.parser.PolicyUtils.parse(
      PolicyUtils.java:96)
              at
      com.micromuse.response.common.parser.PolicyUtils.parse(
      PolicyUtils.java:114)
              at
      com.micromuse.response.common.parser.PolicyUtils.parse
      Expression(PolicyUtils.java:197)
              at
      com.micromuse.response.common.parser.PolicyUtils.test
      Expression(PolicyUtils.java:350)
              at
      com.micromuse.response.common.parser.PolicyUtils.test
      Expression(PolicyUtils.java:344)
              at
      com.micromuse.response.event.EventFilter.getMatching
      PoliciesForEvent(EventFilter.java:271)
              at
      com.micromuse.response.service.AbstractEventReader.run
      (AbstractEventReader.java:524)
              at java.lang.Thread.run(Thread.java:662)
      Caused by:
      com.micromuse.common.parser.internal.core.ParseException:
      Encountered ";" at line 1, column 10.
      Was expecting one of:
          <INTEGER_LITERAL> ...
          <FLOAT_LITERAL> ...
          <DATETIME_LITERAL> ...
          <DATE_LITERAL> ...
          "-" ...
          "~" ...
          "!" ...
          "(" ...
          "{" ...
          "@" ...
          "true" ...
          "false" ...
          <IDENTIFIER> ...
          "\"" ...
          "\'" ...
    
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      generateParseException(PolicyParser.java:2872)
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      jj_consume_token(PolicyParser.java:2746)
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      UnaryExpression(PolicyParser.java:1391)
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      InExpression(PolicyParser.java:1215)
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      RegularExpression(PolicyParser.java:1139)
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      MultiplicativeExpression(PolicyParser.java:1035)
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      AdditiveExpression(PolicyParser.java:959)
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      RelationalExpression(PolicyParser.java:827)
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      EqualityExpression(PolicyParser.java:725)
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      AndExpression(PolicyParser.java:685)
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      ExclusiveOrExpression(PolicyParser.java:645)
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      InclusiveOrExpression(PolicyParser.java:605)
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      ConditionalAndExpression(PolicyParser.java:553)
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      ConditionalOrExpression(PolicyParser.java:512)
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      Expression(PolicyParser.java:476)
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      Assignment(PolicyParser.java:488)
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      StatementExpression(PolicyParser.java:2358)
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      Statement(PolicyParser.java:2263)
              at
      com.micromuse.common.parser.internal.core.PolicyParser.
      CompilationUnit(PolicyParser.java:113)
              at
      com.micromuse.response.common.parser.IPLPolicy.getNode
      (IPLPolicy.java:99)
              ... 9 more
    
    The error is seen in the netcool.log file, but not in the
    EventReader or PolicyLogger log files.  Also, since it is only
    of "WARN" level it does not appear in the netcool-errors.log
    file.
    
    Obviously it is some syntax checker being invoked prior to the
    process being launched and this can't cope with a blank value
    preceding whatever delimiter is used between the list of Filter
    values.
    
    However, We must advise against the use of a blank Filter as
    this would lead to every event in the ObjectServer being
    processed repeatedly by the associated Policy upon insertion to
    the ObjectServer, DeDuplication and even Impact update.  We
    would strongly urge the use of a flag field to mark an event as
    processed and/or its state or way-point within processing.
    

Local fix

  • Don't use a blank Filter.
    

Problem summary

  • When using a blank restriction filter with an event reader the
    following exception occurs:
    21 Jan 2013 15:11:52,086 WARN  [EventFilter]
      EventFilter.getMatchingPoliciesForEvent: Could not parse the
      Expression:
      java.lang.RuntimeException:
      com.micromuse.common.parser.internal.core.ParseException:
      Encountered ";" at line 1, column 10.
      Was expecting one of:
          <INTEGER_LITERAL> ...
          <FLOAT_LITERAL> ...
          <DATETIME_LITERAL> ...
          <DATE_LITERAL> ...
          "-" ...
          "~" ...
          "!" ...
          "(" ...
          "{" ...
          "@" ...
          "true" ...
          "false" ...
          <IDENTIFIER> ...
          "\"" ...
          "\'" ...
    

Problem conclusion

  • Added a check to make sure that if the filter is empty than
    mark the events as matching the filter
    The fix for this APAR is contained in the following maintenance
    packages:
    |Fix Pack | 6.1.0-TIV-NCI-FP0002
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV35827

  • Reported component name

    NETCOOL/IMPACT

  • Reported component ID

    5724O59IS

  • Reported release

    610

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2013-01-24

  • Closed date

    2013-08-01

  • Last modified date

    2013-08-01

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

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

Modules/Macros

  • UNKNOWN
    

Fix information

  • Fixed component name

    NETCOOL/IMPACT

  • Fixed component ID

    5724O59IS

Applicable component levels

  • R611 PSY

       UP



Rate this page:

(0 users)Average rating

Add comments

Document information


More support for:

Tivoli Netcool/Impact
Netcool/Impact

Software version:

610

Reference #:

IV35827

Modified date:

2013-08-01

Translate my page

Machine Translation

Content navigation