<?xml version="1.0" encoding="UTF-8"?>

<!-- $Id: monitoring-service.xml,v 1.1 2006/04/21 17:58:45 jjanke Exp $ -->

<!-- ===================================================================== -->
<!--                                                                       -->
<!--  User Service Configuration                                           -->
<!--                                                                       -->
<!-- ===================================================================== -->

<server>

  <mbean code="org.jboss.monitor.alerts.ConsoleAlertListener" 
         name="jboss.alerts:service=ConsoleAlertListener">
    <attribute name="MessageTemplate"><![CDATA[%(MONITOR_NAME) was triggered for attribute %(ATTRIBUTE).]]></attribute>
    <attribute name="AlertName">Console Alert</attribute>
  </mbean>
  
<!-- Enable after filling in correct to, from, and reply to
  
  <mbean code="org.jboss.monitor.alerts.EmailAlertListener" 
         name="jboss.alerts:service=EmailAlertListener">
    <depends>jboss:service=Mail</depends>
    <attribute name="MessageTemplate"><![CDATA[%(MONITOR_NAME) was triggered for attribute %(ATTRIBUTE).]]></attribute>
    <attribute name="AlertName">Email Alert</attribute>
    <attribute name="To">somebody@somewhere.org</attribute>
    <attribute name="From">noreply@nowhere.org</attribute>
    <attribute name="ReplyTo">noreply@nowhere.org</attribute>
    <attribute name="SubjectTemplate"><![CDATA[[jboss-alert] %(MONITOR_NAME)]]></attribute>
  </mbean>

-->
<!--
  Example of listening for notifications from JBoss monitors.
  
  The SubscriptionList attribute provides the specification to which
  MBeans to subscribe for notifications and for what notification types.
  
  The DynamicSubscriptions attribute is used to indicate whether to monitor
  the MBeanServer for new MBeans and subscribe to them if the subscription
  specification matches.
  
  The NotificationListener attribute can be set to indicate an external
  MBean as the receiver of the Notifications.
-->
<!--
  <mbean code="org.jboss.monitor.services.NotificationListener"
         name="jboss.jmx:service=NotificationListener">
    
    <attribute name="DynamicSubscriptions">true</attribute>
    <attribute name="NotificationListener"></attribute>
    <attribute name="SubscriptionList">
      <subscription-list>
        <mbean name="jboss.monitor:*">
          <notification type="JBOSS_MONITOR_NOTIFICATION"/>
        </mbean>
      </subscription-list>
    </attribute>
    
  </mbean>
-->

<!--
  Example of listening for notifications from the MemoryMonitor
  
  MemoryMonitor monitors the free JVM memory and emits JMX Notifications
  (org.jboss.monitor.alarm.AlarmNotification) when certain thresholds
  are crossed. 
  
  The following attributes may be set:
  
  FreeMemoryWarningThreshold
    - e.g. 1048576, or 1000k, or 1m
  FreeMemoryCriticalThreshold 
    - like above, must be lower
  SamplingPeriod 
    - e.g. 5000, or 5sec. 
  TriggeringWarningMeasurements 
    - number of measurements in the warning area to trigger a notification
  
  AlarmNotification carries alarmState and alarmSeverity.
  alarmSeverity takes the values NORMAL, WARNING, CRITICAL for this monitor.
  See org.jboss.monitor.alarm.Alarm
  
  The NotificationListener is simply used to output the alarm on the console.
-->
<!--
  <mbean code="org.jboss.monitor.services.MemoryMonitor"
         name="jboss.monitor:service=MemoryMonitor">
         
    <attribute name="FreeMemoryWarningThreshold">17m</attribute>
    <attribute name="FreeMemoryCriticalThreshold">16m</attribute>    
  </mbean>

  <mbean code="org.jboss.monitor.services.NotificationListener"
         name="jboss.monitor:service=NotificationListener">
         
    <attribute name="SubscriptionList">
      <subscription-list>
        <mbean name="jboss.monitor:service=MemoryMonitor">
          <notification type="jboss.alarm.memory.low"/>
        </mbean>
      </subscription-list>
    </attribute>
  </mbean>
-->  
</server>