r20 - 27 Aug 2008 - 11:18:38 - EricTYou are here: Wiki >  AppLogic2 Web > CatMonitoringMon
ALERT! AppLogic 2.1/2.2 Documentation The latest production release is AppLogic 2.8.9

MON: Application Monitoring Appliance

Latest version: 1.1.3

mon.PNG At a Glance
Catalog System
Category Monitoring
User volumes yes
Min. memory 128 MB
OS Linux
Constraints no
Questions/Comments Ask Forum

Functional Overview

MON is an application monitoring appliance which collects performance and resource usage statistics (i.e., counters) from other appliances within an application. Appliances report their counters to MON through the mon terminal.

MON provides a visual interface via a web browser to access and view the appliance counters. Through the visual interface, the user creates views containing one or more graphs. Each graph displays one or more appliance counters. The visual interface is accessible through the following:

  • the AppLogic GUI
    • a "Monitor" button at the bottom of the Applications tab of the Dasboard
    • a monitor icon in the toolbar of the Application Editor
  • through a gateway (i.e., IN or INSSL gateway) connected to the web terminal of MON
IDEA! Please see the Monitor Reference for additonal details on accessing and using the visual interface.

MON also supports background monitoring of appliance counters. All counters in a single view, as specified by the alarm_view property, are monitored in the background by MON. Whenever one of these counters falls below or exceeds a specified threshold, MON generates an alarm to the AppLogic Grid Controller, which posts a message to the dashboard. A browser to MON's visual interface does not have to be open in order for MON to monitor the appliance counters in the background.

Boundary

Resources

Resource Minimum Maximum Default
CPU 0.05 4 0.05
Memory 128 MB 2 GB 128 MB
Bandwidth 1 Mbps 1Gbps 1 Mbps

Terminals

Name Dir Protocol Description
mon in cce Terminal on which performance and resource usage statistics are received.
web in http Terminal used to access and view the appliance counters.
aux in any Input used for programmatic collection of counters.

The default interface is enabled. The default interface is used by the appliance to report to AppLogic that it has booted successfully. It can also be used to log in over secure shell to the appliance from the AppLogic controller, primarily for diagnostic and troubleshooting purposes. The default interface is used by the AppLogic GUI to access the visual interface of a MON appliance.

User Volumes

Volume Description
data Read-write, providing storage for persistent state of MON (e.g., views & graphs).

Properties

Property name Type Description
title String Title to display in the browser windows of MON's visual interface. If empty, the application name is used. Default is empty.
user String User name for web-based authentication. Authentication is only used when accessing MON through the web terminal (i.e., through a gateway). There is no authentication when accessing MON's visual interface through the AppLogic GUI. If empty, there is no authentication. Default is empty.
password String Password for web-based authentication. This property is not used if user is empty. Default is empty.
alarm_view String Name of the view containing the appliance counters to be monitored in the background. Only one view name can be specified. If empty, background monitoring is disabled. Default is empty.

Counter groups and counters

The following counters groups are defined for all appliances:

  • CPU Summary
  • CPU n (only if more than 1 CPU -- otherwise no such group(s))
  • Scheduler
  • Memory statistics
  • Filesystem
  • Interface name (one group for each interface: terminals or raw)
  • Volume name (one group per volume, including class and placeholders)

IDEA! Please see the Monitoring Custom Counters reference for a guide on how to create and monitor custom counters in an appliance.

Typical Usage

Monitoring of an application through the AppLogic GUI.

The following diagram shows a typical usage of MON for a simple application. In this application, the monitor can be accessed through the AppLogic GUI only.


simple_mon_appl.png

Appliances in use:

  • in - input gateway, class IN
  • srv - web server, class WEB
  • db - database server, class MYSQL
  • mon - monitoring appliance, class MON

The mon terminal of all appliances are connected to the mon terminal of mon.

Monitoring of an application through both the AppLogic GUI and an IP address on port 80

The following diagram shows how MON can be used in order to access the application monitor through the AppLogic GUI or through an IP address.


mon_appl_with_in_gateway.png

Appliances in use:

  • usr - input gateway, class IN
  • admin - input gateway, class IN
  • srv - web server, class WEB
  • db - database server, class MYSQL
  • mon - monitoring appliance, class MON

The mon terminal of all appliances are connected to the mon terminal of mon.

The out terminal of admin is connected to the web terminal of mon so users can access the monitor through the IP address specified by the ip_addr property on admin.

Monitoring of application through both the AppLogic GUI and an application IP address on port 8080

The following diagram shows how MON can be used in order to access the application monitor through the AppLogic GUI or through an application IP address on port 8080.


ps8.png

Appliances in use:

  • INSSL - input gateway, class INSSL
  • WEBx8 - web servers assembly, class WEBx8
  • MYSQL - database server, class MYSQL
  • NAS - storage appliance, class NAS
  • PS8 - port switch, class PS8
  • mail - mail server, class MAIL
  • NET - output gateway, class NET
  • mon - monitoring appliance, class MON

The mon terminal of all appliances are connected to the mon terminal of mon.

INSSL is configured to forward https traffic to the WEBx8 and all other TCP traffic to the aux terminal. PS8 is configured to forward all traffic on port 8080 through out8 to the web terminal of mon. This allows users to monitor the application through the application IP address specified by the ip_addr property on INSSL on port 8080.

Background Monitoring

This use case describes how to use MON to monitor appliance counters in the background and have it generate alerts when an appliance counter is out of range.

  1. Set the alarm_view property on MON to the name of a view that contains the counters to be monitored.
  2. (Re)start the application.
  3. Login to the Application Monitor.
  4. Click on the New button to create a new view and give it the same name as the alarm_view property.
  5. Click on the Add Graph button to create a new graph and add it to the view.
  6. Select a counter to be monitored and add it to the graph.
  7. Set the alarm threshold by filling in the two boxes next to Alarm.
    To set a minimum threshold, enter a value in the left box. There is no minimum threshold if this box is left empty.
    To set a maximum threshold, enter a value in the right box. There is no maximum threshold if this box is left empty.
  8. Repeat steps 5-7 to monitor additional appliance counters.

Whenever an appliaance counter falls below or exceeds the specified threshold, MON generates an alert to the AppLogic Controller. A message is then logged to the dashboard specifying which counter of which appliance is out of range. For each appliance, the AppLogic Controller only logs the last alert to the dashboard, however it will specify in the dashboard message if multiple alerts have been received for the appliance. All alerts are logged to /var/log/messages on the AppLogic Controller.

IDEA! A browser to the Application Monitor does not have to be open in order for MON to monitor the appliance counters in the background.

To stop monitoring a specific appliance counter:

  • If the counter is the only counter on the graph, delete the graph.
  • If the counter is on a graph with multiple counters, remove the counter from the graph.

To disable background monitoring, execute one of the following:

  • Rename the view to a name that is different than the alarm_view property on MON.
  • Delete all graphs in the view.
  • Delete the view.
  • Stop the MON appliance in the application (e.g., comp stop myapp:main.mon).
  • Clear the alarm_view property on MON and restart the MON instance (or restart the application).

Notes and Links

Known Limitations

  • To monitor an application through the AppLogic GUI, the name of the MON appliance in the application should be mon.

Related Documents

Questions and Comments

IDEA! To post a question or comment on this appliance, visit our forum.


-- BeckyH - 26 Apr 2007

 
Copyright © 2005-2010 3tera, Inc. All Rights Reserved.
%