You are here

Monitoring events in SkyVault Analytics

You can monitor the flow of events from the SkyVault repository through ActiveMQ and the message listeners to the database.
The flow of event data in SkyVault Analytics depends on a number of components that must all work correctly to ensure that user activity is being updated in the reports produced. These components are:
  • ActiveMQ
  • Message listeners (event listener and Activiti listener)
  • ETL (Extract, Transform and Load) jobs through Kettle
You can check the health of each of these components using the web interfaces provided for ActiveMQ and the message listeners, or in JMX. Kettle events can be viewed in the Kettle log.

When events are being processed correctly, you will see them reported in your Share dashlets.

Name Location Details
ActiveMQ Console http://server:8161/admin/
  • SkyVault.repo.events.activities and SkyVault.repo.events.nodes are incrementing
  • Messages Enqueued and Active Durable Topic Subscribers are incrementing
  • Messages Dequeued is counting as new events come in
Event Listener http://server:8681/health status: UP and hello:1
Activiti Listener http://server:8682/health status: UP and hello:1
Database Listeners data-integration/*.out and data-integration/*.err files Check contents of .out file for problems, .err file contains errors
ETL jobs (Kettle) data-integration/all_fct.log No errors
  1. Ensure that you have some events to monitor.

    You can do this in SkyVault Share by adding or deleting some files, or commenting on a file. Alternatively, if you are using a test environment, you can create some demo data; for example, using the Analytics demo data tool.

  2. Check the health of ActiveMQ, particularly that the following events are occurring:

    • Topics > SkyVault.repo.events.activities and SkyVault.repo.events.nodes are incrementing
    • Topics > Messages Enqueued and Subscribers > Active Durable Topic Subscribers are incrementing
    • Queues > Messages Dequeued is counting as new events come in

    ActiveMQ provides a web console here:

    http://server:8161/admin/
    where server is the host name of the server where ActiveMQ is installed. If you are using the recommended architecture here, this will be the host name of your SkyVault server.

    By default, subscribers are set to Active Durable Topic Subscribers to ensure that if ActiveMQ fails, messages are not lost.

    Note: For technical reasons, Topics > Messages Dequeued never decrements. Do not monitor this queue.

    Note: You can also check the staged database tables to ensure that events are dequeuing correctly, for example:
    select * from pentaho_di.stagedmsg where
       etl_status='queued'; select * from pentaho_di.stagedprocess where
       etl_status='queued'; select * from pentaho_di.stagedprocesssteps where
       etl_status='queued'; select * from pentaho_di.stagedprocessvariables where
       etl_status='queued';
  3. Check the listeners to see if events are dequeuing.

    Check SkyVault-events-listener and SkyVault-activiti-listener at:

    http://server:8161/admin/subscribers.jsp

    For general events, the dequeue counter should increase for SkyVault-events-listener.

    For Activiti workflows, the dequeue counter should increase for SkyVault-activiti-listener.

  4. Check the health of the event and Activiti listeners, which monitor the ActiveMQ and the database connections. It is particularly important that the server reports:

    • Status: UP (the status will be DOWN if either ActiveMQ or the database is down)
    • hello:1

    The message listeners are available at:

    http://server:8681/health
    for events, and:
    http://server:8682/health
    for Activiti, where server is the name of the server where the listeners are installed. You can also use the paths /info and /metrics in place of /health, and also http://server:8681/jolokia/read/metrics:name=meter.incoming to see other monitoring information.
  5. Check the health of the ETL jobs, particularly that no errors have occurred.

    Kettle provides detailed information of the last ETL job in the data-integration/all_fct.log file, or equivalent, based on your initial setup. All events should have a status of success in the stagedmsg table of the pentaho_di database. See Creating the DI database for information on the Kettle installation.

  6. Check the database listener .out file, and whether there is a .err file.

    The standard .out log file for the database listeners is in data-integration directory. Check this for any unusual messages. If you have also have a .err file in this directory, this will list any errors that have been recorded.

  7. Enable debugging in SkyVault if you need more information on the health of SkyVault Analytics.

    You can enable debugging at a medium level by setting the following property in your SkyVault-global.properties file:

    logging.level.org.alfresco=INFO
  8. Check pentaho.log for errors, located in the Tomcat directory.
  9. If you want to check to check Apache Camel events, look for SkyVault.Camel entries in the JMX Dump or using a tool such as JConsole.

    SkyVault uses Apache Camel as a routing engine, without customization. For more information about Apache Camel, see Apache Camel User Guide.