Fixed
Details
Assignee
Patrick SchweizerPatrick SchweizerReporter
Gulen BuyukbayramGulen Buyukbayram(Deactivated)HB Grooming Date
Jul 07, 2020HB Backlog Status
BacklogSprint
NoneFix versions
Affects versions
Priority
Minor
Details
Details
Assignee
Patrick Schweizer
Patrick SchweizerReporter
Gulen Buyukbayram
Gulen Buyukbayram(Deactivated)HB Grooming Date
Jul 07, 2020
HB Backlog Status
Backlog
Sprint
None
Fix versions
Affects versions
Priority
PagerDuty
PagerDuty
PagerDuty
Created July 7, 2020 at 1:49 PM
Updated August 25, 2020 at 1:49 PM
Resolved August 11, 2020 at 10:29 PM
Hi,
With the 2019.1.5 version, we are having problems with some of our graphs where we draw graphs that are including multiple nodes in a single graph. To define unique labels from different nodes, we are using the foreign ids. Here is an example:
DEF:8C32095E_A731_435C_9FBF_F3AF9F005FFB_bwSNMPProcessMetricsGCPauseTimeAvgLastInt_rawdef={rrd1}:bwSNMPProcessMetric:AVERAGE \
What we have observed is that whenever we are dealing with a node whose foreign id starts with a number instead of a letter, we get the following exception:
Caused by: org.apache.commons.jexl2.JexlException$Parsing: C32095E_A731_435C_9FBF_F3AF9F005FFB_bwSNMPProcessMetricsGCPauseTimeAvgLastInt_rawdef@1:2 parsing error near '... Ambiguous st ...'
at org.apache.commons.jexl2.parser.JexlParser.jjtreeCloseNodeScope(JexlParser.java:126) ~[commons-jexl-2.1.1.jar:2.1.1]
at org.apache.commons.jexl2.parser.Parser.ExpressionStatement(Parser.java:274) ~[commons-jexl-2.1.1.jar:2.1.1]
at org.apache.commons.jexl2.parser.Parser.Statement(Parser.java:140) ~[commons-jexl-2.1.1.jar:2.1.1]
at org.apache.commons.jexl2.parser.Parser.JexlScript(Parser.java:72) ~[commons-jexl-2.1.1.jar:2.1.1]
at org.apache.commons.jexl2.parser.Parser.parse(Parser.java:24) ~[commons-jexl-2.1.1.jar:2.1.1]
at org.apache.commons.jexl2.JexlEngine.parse(JexlEngine.java:1248) ~[commons-jexl-2.1.1.jar:2.1.1]
at org.apache.commons.jexl2.JexlEngine.createExpression(JexlEngine.java:435) ~[commons-jexl-2.1.1.jar:2.1.1]
at org.apache.commons.jexl2.JexlEngine.createExpression(JexlEngine.java:419) ~[commons-jexl-2.1.1.jar:2.1.1]
at org.opennms.netmgt.measurements.impl.JEXLExpressionEngine.applyExpressions(JEXLExpressionEngine.java:111) ~[org.opennms.features.measurements.impl-25.0.0-SNAPSHOT.jar:?]
Note that dashes in the label don’t seem to be accepted either.
For example this works:
DEF:BE4F9D54_3083_4F45_8418_7392265FA840_bwSNMPProcessMetricsGCPauseTimeAvgLastInt_rawdef={rrd1}:bwSNMPProcessMetric:AVERAGE \
Were you aware of this restriction? Is that intentional? If not, then could you please fix it? Otherwise, please advise how to handle this problem.
Thanks