Difference between revisions of "Edge Monitoring"

From RifidiWiki

Jump to: navigation, search
(Event Notification via MQTT)
Line 40: Line 40:
  
 
=Event Notification via MQTT=
 
=Event Notification via MQTT=
 +
 +
Notification App Property Settings
 +
 +
mqttnotifier.qos=2
 +
mqttnotifier.broker=tcp://localhost:1883
 +
mqttnotifier.clientid=MyAppRifidiServicesId
 +
mqttnotifier.topic=notifications
 +
 +
 +
# Reader Notifications
 +
 +
## Example Application Started Event
 +
<pre>
 +
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <appstarted> <group>Monitoring</group> <name>StatsApp</name> <timestamp>1481553095850</timestamp> <ip>192.168.1.124</ip> </appstarted>
 +
</pre>
 +
 +
## Example Application Stopped Event
 +
<pre>
 +
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <appstopped> <group>Monitoring</group> <name>StatsApp</name> <timestamp>1481553071272</timestamp> <ip>192.168.1.124</ip> </appstopped>
 +
</pre>
 +
 +
# Rifidi Application Notifications
 +
 +
## Example Reader Processing Event
 +
<pre>
 +
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <sensorprocessing> <sensor>LLRP_1</sensor> <timestamp>1481553161280</timestamp> <ip>192.168.1.124</ip> </sensorprocessing>
 +
</pre>
 +
 +
## Example Reader Closed Event
 +
<pre>
 +
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <sensorclosed> <sensor>LLRP_1</sensor> <timestamp>1481553326093</timestamp> <ip>192.168.1.124</ip> </sensorclosed>
 +
</pre>

Revision as of 14:38, 12 December 2016

Introduction

In all versions Edge Monitoring is available through JMX/MBeans via RMI.

Note: The Edge Server can also be monitored via JConsole: https://docs.oracle.com/javase/8/docs/technotes/guides/management/jconsole.html

Remote process connection string: service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi



Starting in 3.1 Edge Monitoring is now accessible though Resftful Services (leveraging Jolokia plugin. Jolokia exposes all JMX/Mbeans via Rest

The types of components which can be monitored include

  • Java Virtual Machine (Memory, CPU etc..)
  • Sensors/Readers (Status, Properties etc..)
  • OSGI (Status, Applications etc..)
  • Messaging



Configuration

Note: Default port changed from 8080 to 8091 in Rifidi 3.1.1 (as 8080 is a popular port used by other web servers such as Tomcat) In rifidiserver.ini - A full list of Rifidi Edge configuration parameters can be found Edge_Server_Configuration


-Dorg.osgi.service.http.port=8091

Jolokia port

Examples

Example calls are:


Additional features can be found on Jolokia Get/Post Features

Event Notification via MQTT

Notification App Property Settings

mqttnotifier.qos=2 mqttnotifier.broker=tcp://localhost:1883 mqttnotifier.clientid=MyAppRifidiServicesId mqttnotifier.topic=notifications


  1. Reader Notifications
    1. Example Application Started Event
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <appstarted> <group>Monitoring</group> <name>StatsApp</name> <timestamp>1481553095850</timestamp> <ip>192.168.1.124</ip> </appstarted>
    1. Example Application Stopped Event
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <appstopped> <group>Monitoring</group> <name>StatsApp</name> <timestamp>1481553071272</timestamp> <ip>192.168.1.124</ip> </appstopped>
  1. Rifidi Application Notifications
    1. Example Reader Processing Event
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <sensorprocessing> <sensor>LLRP_1</sensor> <timestamp>1481553161280</timestamp> <ip>192.168.1.124</ip> </sensorprocessing>
    1. Example Reader Closed Event
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <sensorclosed> <sensor>LLRP_1</sensor> <timestamp>1481553326093</timestamp> <ip>192.168.1.124</ip> </sensorclosed>
Personal tools