How to identify problem tag / expression

Hi,

My log is flooding with the following exception. Any ideas how to identify the tag / Expression that is causing this exception? The problem is probably a faulty path.

Blockquote
E [T.P.E.Scanclass ] [11:49:07]: Unexpected error executing scan class. tag-provider=default, scanclass=2]
java.lang.IllegalArgumentException: java.io.IOException: com.google.common.collect.ComputationException: com.inductiveautomation.ignition.common.sqltags.parser.TagPathFormatException: Illegal character ']' (Line 1 , Char 28)
at com.inductiveautomation.ignition.gateway.sqltags.simple.SimpleTagProviderInternal.getPath(SimpleTagProviderInternal.java:996)
at com.inductiveautomation.ignition.gateway.sqltags.simple.SimpleTagProviderInternal.updateValue(SimpleTagProviderInternal.java:258)
at com.inductiveautomation.ignition.gateway.sqltags.simple.SimpleTagProvider.updateValue(SimpleTagProvider.java:87)
at com.inductiveautomation.ignition.gateway.sqltags.providers.AbstractStoreBasedTagProvider.scanclassStatisticsChanged(AbstractStoreBasedTagProvider.java:2429)
at com.inductiveautomation.ignition.gateway.sqltags.scanclasses.SimpleExecutableScanClass.notifyStatistics(SimpleExecutableScanClass.java:488)
at com.inductiveautomation.ignition.gateway.sqltags.scanclasses.SimpleExecutableScanClass.run(SimpleExecutableScanClass.java:907)
at com.inductiveautomation.ignition.common.execution.impl.BasicExecutionEngine$SelfSchedulingRunner.run(BasicExecutionEngine.java:483)
at com.inductiveautomation.ignition.common.execution.impl.BasicExecutionEngine$TrackedTask.run(BasicExecutionEngine.java:565)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.io.IOException: com.google.common.collect.ComputationException: com.inductiveautomation.ignition.common.sqltags.parser.TagPathFormatException: Illegal character ']' (Line 1 , Char 28)
at com.inductiveautomation.ignition.common.sqltags.parser.TagPathParser.parse(TagPathParser.java:155)
at com.inductiveautomation.ignition.common.sqltags.parser.TagPathParser.parse(TagPathParser.java:138)
at com.inductiveautomation.ignition.gateway.sqltags.simple.SimpleTagProviderInternal.getPath(SimpleTagProviderInternal.java:994)
... 14 common frames omitted
Caused by: com.google.common.collect.ComputationException: com.inductiveautomation.ignition.common.sqltags.parser.TagPathFormatException: Illegal character ']' (Line 1 , Char 28)
at com.inductiveautomation.ignition.common.sqltags.parser.TagPathParser$ParseFunction.load(TagPathParser.java:385)
at com.inductiveautomation.ignition.common.sqltags.parser.TagPathParser$ParseFunction.load(TagPathParser.java:378)
at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3527)
at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2319)
at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2282)
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2197)
at com.google.common.cache.LocalCache.get(LocalCache.java:3937)
at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3941)
at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4824)
at com.inductiveautomation.ignition.common.sqltags.parser.TagPathParser.parse(TagPathParser.java:146)
... 16 common frames omitted
Caused by: com.inductiveautomation.ignition.common.sqltags.parser.TagPathFormatException: Illegal character ']' (Line 1 , Char 28)
at com.inductiveautomation.ignition.common.sqltags.parser.TagPathLexer.errMsg(TagPathLexer.java:250)
at com.inductiveautomation.ignition.common.sqltags.parser.TagPathLexer.errMsg(TagPathLexer.java:254)
at com.inductiveautomation.ignition.common.sqltags.parser.TagPathLexer.yylex(TagPathLexer.java:911)
at com.inductiveautomation.ignition.common.sqltags.parser.TagPathParser._parse(TagPathParser.java:176)
at com.inductiveautomation.ignition.common.sqltags.parser.TagPathParser.access$200(TagPathParser.java:28)
at com.inductiveautomation.ignition.common.sqltags.parser.TagPathParser$ParseFunction.load(TagPathParser.java:383)
... 25 common frames omitted

Blockquote

The one error message is talking about a SQL tag. Are you using a SQL tag? If so, look for tag diagnostics on it to see if it gives you any details.

Hi, Thanks for the info.

We are using several SQL Tags. In total we have 126 000 tags, so its is very difficult to find out which one is bugging us. I have checked the diagnostics webpage for tags, but no relevant tags are found there. Any other suggestions ?

Thank you

Tag diagnostics moved in one of the Ignition updates. I think it was early in the 8.x updates but I don’t remember.

All the newer versions of Ignition will have tag diagnostics on the “edit tag” menu so you can just double click the tag and look for the diagnostics tab to see tag diagnostics. I think tag diagnostics was on a right click menu in older versions.

If you have a large number of SQL tags I would suggest looking for tags that appear to be calling out in pain and look for diagnostics on them. I would recommend using SQL tags sparingly because they can cause performance issues if you go crazy with them.