GT 4.0 WS MDS Trigger Service: Developer's Guide

1. Introduction

The WS MDS Trigger Service collects information about Grid resources and can be configured to execute a program if the collected data meets certain conditions. This document describes the programmatic interfaces to the Trigger Service.

This document describes the programmatic interfaces to the Trigger Service. See also general Globus Toolkit coding guidelines and GT 4.0 best practices.

2. Before you Begin

Before you begin:

2.1. Feature summary

Features new in release 4.0

  • Not applicable

Other Supported Features

  • Monitors resource properties for matching trigger conditions
  • When a trigger condition matches, fires a customizable action: for example, sends email to an administrator.
  • Monitored services are managed through service group-based registration API, allowing use of many of the same clients that can be used in the Index Service.

Deprecated Features

  • Not applicable

2.2. Tested platforms

Tested Platforms for WS-MDS Trigger Service

  • Linux on i386
  • Windows XP

Tested containers for WS-MDS Trigger Service:

  • Java WS Core container
  • Tomcat 5.0.28

2.3. Backward compatibility summary

The Trigger Service is a new component for GT 4.0 and so has no compatibility statement.

2.4. Technology dependencies

The Trigger Service depends on the following GT components:

The Trigger Service depends on the following 3rd party software:

  • None

2.5. Security considerations

The security considerations for the Aggregator Framework also apply to the Trigger Service:

By default, the aggregator sources do not use authentication credentials -- they retrieve information using anonymous SSL authentication or no authentication at all, and thus retrieve only publicly-available information. If a user or administrator changes that configuration so that a service's aggregator source uses credentials to acquire non-privileged data, then that user or administrator must configure the service's aggregator sink to limit access to authorized users.

3. Architecture and design overview

The Trigger Service collects information and acts on it, by executing an administrator-supplied executable program when certain conditions (expressed as XPath matches on the collected information) are met. There are two programmatic interfaces to the Trigger Service: information is collected using an aggregator source and acted upon by an executable program.

There is no "client" interface to the Trigger Service -- "clients" will typically interact with the Trigger Service indirectly, using some mechanism specific to the triggered executable program (for example, an executable program may send mail to an end-user or write a structured log file that will later be read by some other program).

4. Public interface

The public interfaces for specifying trigger actions, including specifications for executable programs to be executed by the trigger, can be found in Trigger Service Public Interface Guide.

The public interfaces for creating and configuring aggregator sources -- sources of information used by the trigger service -- can be found in the Aggregator Sources Reference.

5. Usage scenarios

5.1. Controlling information collected by the Trigger Service

Information is collected by the Trigger Service by way of an aggregator source. The Globus Toolkit distribution includes several standard aggregator sources (see Aggregator Sources Reference for more details). To create your own custom information source, see the WS MDS Aggregator Framework Developer's Guide.

5.2. Controlling the Conditions Under Which the Executable is Executed

This is handled through configuration options (see Configuring the Trigger Service for details).

5.3. Programming the Executable

The executable program triggered by the Trigger Service can be written in any programming or scripting language. The specifications for this program are documented in Configuring the executable.

6. Tutorials

There are no tutorials available at this time.

7. Debugging

See the Debug section of the Java WS Core Developer's Guide for general information on logging, including which files to edit to set logging properties.

To turn on debug logging for the Trigger Service, add the line:

log4j.category.org.globus.mds.trigger=DEBUG

to the appropriate properties file. Since the Trigger Service is implemented using the aggregator framework, you may also want to turn on aggregator debugging by adding this line:

log4j.category.org.globus.mds.aggregator=DEBUG

8. Troubleshooting

General troubleshooting information can be found in the GT 4.0 Java WS Core Developer's Guide.

9. Related Documentation

Specifications for resource properties, service groups, and subscription/notification are available at http://www.globus.org/wsrf/.