Events are missing
search cancel

Events are missing

book

Article ID: 333072

calendar_today

Updated On:

Products

VMware Smart Assurance

Issue/Introduction

Smarts events report is empty or Mismatch in events seen in report and events seen in Database.

mysql> select COUNT(*) from events_archive where ClosedAt>1500196467 and SourceDomainName LIKE '%NGP%' and OpenedAt<1508145267;
+----------+
| COUNT(*) |
+----------+
|   346341 |
+----------+
1 row in set (0.01 sec)

But the Frontend reports only show 2100 events. 



Found errors in the catalina logs:

SEVERE: can't expand children
com.watch4net.apg.v2.gui.database.DatabaseException: An error occurred when accessing the Database RPE2-ARCH.
    at com.watch4net.apg.v2.gui.x.onTaskFailed(SourceFile:62)
    at com.watch4net.async6.EvaluatorTask.notifyComplete(EvaluatorTask.java:248)
    at com.watch4net.async6.EvaluatorTask.run(EvaluatorTask.java:162)
    at com.watch4net.apg.v2.gui.bi.compute(SourceFile:176)
    at com.watch4net.async6.EvaluatorTask.computeWithMDC(EvaluatorTask.java:176)
    at com.watch4net.async6.EvaluatorTask.run(EvaluatorTask.java:158)
    at com.watch4net.apg.v2.gui.database.DefaultGlobalDatabaseAccesssor.a(SourceFile:281)
    at com.watch4net.apg.v2.gui.database.DefaultGlobalDatabaseAccesssor.getExpansion(SourceFile:130)
    at com.watch4net.apg.v2.gui.database.ParallelGlobalDatabaseAccesssor.getExpansion(SourceFile:156)
    at com.watch4net.apg.v2.gui.database.StaticDatabaseAccessor.getExpansion(SourceFile:656)
    at com.watch4net.apg.v2.gui.tree.expansion.Expansion.getExpansionGroups(SourceFile:122)
    at com.watch4net.apg.v2.gui.tree.property.NodeExpansion.a(SourceFile:433)
    at com.watch4net.apg.v2.gui.tree.DynamicNode.expandNode(SourceFile:696)
    at com.watch4net.apg.v2.gui.tree.DynamicNode.expandChildren(SourceFile:792)
    at com.watch4net.apg.v2.gui.tree.DynamicNode.getChildren(SourceFile:911)
    at com.watch4net.apg.v2.gui.tree.DynamicNode.getChildren(SourceFile:981)
    at com.watch4net.apg.v2.gui.util.i.a(SourceFile:64)
    at com.watch4net.apg.v2.gui.graph.AbstractStackedGraph.a(SourceFile:467)
    at com.watch4net.apg.v2.gui.graph.AbstractStackedGraph.a(SourceFile:347)
    at com.watch4net.apg.v2.gui.graph.AbstractStackedGraph.<init>(SourceFile:98)
    at com.watch4net.apg.v2.gui.graph.StackedBarGraph.<init>(SourceFile:71)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
    at com.watch4net.apg.v2.gui.bh.a(SourceFile:235)
    at com.watch4net.apg.v2.gui.bh.a(SourceFile:87)
    at com.watch4net.apg.v2.gui.ft.a(SourceFile:32)
    at com.watch4net.apg.v2.gui.ft.b(SourceFile:23)
    at com.watch4net.apg.v2.gui.ey.b(SourceFile:247)
    at com.watch4net.apg.v2.gui.report.d.b(SourceFile:479)
    at com.watch4net.apg.v2.gui.report.d.a(SourceFile:418)
    at com.watch4net.apg.v2.gui.report.d.compute(SourceFile:518)
    at com.watch4net.async6.EvaluatorTask.computeWithMDC(EvaluatorTask.java:176)
    at com.watch4net.async6.EvaluatorTask.run(EvaluatorTask.java:158)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
Caused by: com.watch4net.apg.v2.gui.database.DatabaseException: java.sql.SQLException: an error occured executing query 'Project (Project (Aggr (Project (Select (MScan ('events_archive', ['Severity', 'ClosedAt', 'OpenedAt']), &&(||(>(events_archive.ClosedAt, sint('1469302948')), isnull(events_archive.ClosedAt)), <(events_archive.OpenedAt, sint('1471981348')))), [APG_PROPERTY_COL_1 = events_archive.Severity]), [APG_PROPERTY_COL_1], [], 1), [APG_PROPERTY_COL_1]), [APG_PROPERTY_COL_1])' ! Query: SELECT DISTINCT events_archive.Severity AS APG_PROPERTY_COL_1 FROM events_archive WHERE (events_archive.ClosedAt>1469302948 OR events_archive.ClosedAt IS NULL) AND events_archive.OpenedAt<1471981348 Parameters: []
    at com.watch4net.apg.v2.gui.database.util.a.a(SourceFile:213)
    at com.watch4net.apg.v2.gui.database.util.a.a(SourceFile:250)
    at com.watch4net.apg.v2.gui.bo.a(SourceFile:313)
    at com.watch4net.apg.v2.modules.database.GenericFlow.FlowDatabaseAccessor.a(SourceFile:319)
    at com.watch4net.apg.v2.modules.database.GenericFlow.FlowDatabaseAccessor.a(SourceFile:406)
    at com.watch4net.apg.v2.modules.database.GenericFlow.FlowDatabaseAccessor.getExpansion(SourceFile:438)
    at com.watch4net.apg.v2.gui.dq$a.a(SourceFile:56)
    at com.watch4net.apg.v2.gui.dq$a.a(SourceFile:34)
    at com.watch4net.apg.v2.gui.ez.compute(SourceFile:65)
    at com.watch4net.async6.EvaluatorTask.computeWithMDC(EvaluatorTask.java:176)
    at com.watch4net.async6.EvaluatorTask.run(EvaluatorTask.java:158)
    ... 35 more
Caused by: java.sql.SQLException: an error occured executing query 'Project (Project (Aggr (Project (Select (MScan ('events_archive', ['Severity', 'ClosedAt', 'OpenedAt']), &&(||(>(events_archive.ClosedAt, sint('1469302948')), isnull(events_archive.ClosedAt)), <(events_archive.OpenedAt, sint('1471981348')))), [APG_PROPERTY_COL_1 = events_archive.Severity]), [APG_PROPERTY_COL_1], [], 1), [APG_PROPERTY_COL_1]), [APG_PROPERTY_COL_1])' ! Query: SELECT DISTINCT events_archive.Severity AS APG_PROPERTY_COL_1 FROM events_archive WHERE (events_archive.ClosedAt>1469302948 OR events_archive.ClosedAt IS NULL) AND events_archive.OpenedAt<1471981348 Parameters: []
    at org.apache.commons.dbutils.QueryRunner.rethrow(QueryRunner.java:359)
    at org.apache.commons.dbutils.QueryRunner.query(QueryRunner.java:240)
    at org.apache.commons.dbutils.QueryRunner.query(QueryRunner.java:309)
    at org.apache.commons.dbutils.QueryRunner.query(QueryRunner.java:328)
    at com.watch4net.apg.v2.gui.database.util.a.a(SourceFile:209)
    ... 45 more

Environment

Watch4net/MnR - 7.x

Cause

Smarts events database is commented in tomcat configuration files or has 2 configurations like 1 for MySQL and 1 for Datastore.

Resolution

  • Modify APG.xml from /APG/Web-Servers/Tomcat/Default/conf/Catalina/localhost.
  • Find the SMARTS events database resource links section and uncomment it:

    Before
<!-- emc-smarts-events for MySQL -->

     <!--
  <ResourceLink name="jdbc/FLOW-RPE2-ARCH:{ mapping=FLOW-RPE2.xml, table=events_archive }" global="jdbc/FLOW-EVENTS" type="javax.sql.DataSource" />

    <ResourceLink name="jdbc/FLOW-RPE2-LIVE:{ mapping=FLOW-RPE2.xml, table=events_live }" global="jdbc/FLOW-EVENTS" type="javax.sql.DataSource" />

    -->


After

<!-- emc-smarts-events for MySQL -->

    <ResourceLink name="jdbc/FLOW-RPE2-ARCH:{ mapping=FLOW-RPE2.xml, table=events_archive }" global="jdbc/FLOW-EVENTS" type="javax.sql.DataSource" />

    <ResourceLink name="jdbc/FLOW-RPE2-LIVE:{ mapping=FLOW-RPE2.xml, table=events_live }" global="jdbc/FLOW-EVENTS" type="javax.sql.DataSource" />


*If Datastore is being used for SMARTS events then the resource links for datastore will need to be uncommented as well*

Example:

<!-- emc-smarts-events for datastore -->

<ResourceLink name="jdbc/FLOW-RPE2-ARCH:{ mapping=FLOW-RPE2.xml, table=events_archive }" global="jdbc/FLOW-DS-EVENTS" type="javax.sql.DataSource" />
<ResourceLink name="jdbc/FLOW-RPE2-LIVE:{ mapping=FLOW-RPE2.xml, table=events_live }" global="jdbc/FLOW-EVENTS" type="javax.sql.DataSource" />
    
  • Save the file and restart tomcat:
/APG/bin/manage-modules.sh service restart tomcat <instance name>

Once tomcat is back up running, the reports will now be populated.