Job definition

At least one monitoring job must be defined for each registered service. The monitoring and notification rules are to be laid down next.

Description

General information must be defined for each job.

edit desc
Job name

The job name facilitates the identification of and distinction between services and their jobs.

Category

Depending on the service type, different job categories are available. (INSPIRE Services)

The following table describes the semantics of the different categories.

Name

Description

Example

Customized

The values for the monitoring interval and the notification rules can be defined arbitrary.

-

INSPIRE (Availability)

Some of the values for the monitoring interval and some of the notification rules are filled out with predefined values and the corresponding entries cannot be modified by the user.

The monitoring rules for INSPIRE View Services for instance are 5000 ms for the initial service response time, one single service request and a service availability of 99%. The service monitoring will be performed 24 hours per day every 10 minutes.

INSPIRE (Capacity)

Some of the values for the monitoring interval and some of the notification rules are filled out with predefined values and the corresponding entries cannot be modified by the user.

The monitoring rules for INSPIRE View Services for instance are 5000 ms for the initial service response time, 20 simultaneous service request and a service availability of 99%. The service monitoring must be performed at a minimum of 22 hours per day every 10 minutes.

INSPIRE (Performance)

Some of the values for the monitoring interval and some of the notification rules are filled out with predefined values and the corresponding entries could not be modified by the user.

The monitoring rules for INSPIRE View Services for instance are 5000 ms for the initial service response time, one single service request and a service availability of 99%. The service monitoring will be performed 24 hours per day every 10 minutes.

The different job categories and the corresponding predefined values for monitoring and notification are only available if the selected service type is INSPIRE-related.

Http Request

Detailed information about the monitoring request must be defined for each job.

edit request

The request consists of the query string (or XML payload) that is send to the service and the method of how the request is sent. This data shall be stored in the field called Content.

The monitoring is performed by way of a service operation, which is defined at this point. The Key Value Pairs (KVP) of a request must be specifically stated, beginning with a question mark.

This also allows you to extend your service URL before starting to append the query parameters. Extending the service URL can be necessary when monitoring RESTful services.

For each service type, there is a standard request (e.g. Capabilities request) which is predefined and which can be inserted into the Content field by clicking the Standard request button.

GetCapabilities request for a WMS
?Request=GetCapabilities&Service=WMS

If any other request shall be used for monitoring purposes, the KVP information must be entered in the text field.

Example of a GetMap request
?BBOX=-178,-90,179,90&WIDTH=400&HEIGHT=300&SRS=EPSG:4326&Layers=countries&version=1.1.1&service=WMS&FORMAT=IMAGE/jpeg&TRANSPARENT=TRUE&request=getmap

For a job definition using HTTP POST or SOAP as a requesting method, it is possible to define the corresponding inputs here.

Example of a GetFeature request
<GetFeature version="1.0.0" service="WFS" maxFeatures="10" xmlns="http://www.opengis.net/wfs">
    <Query typeName="ABC"/>
</GetFeature>

Three different types of HTTP request methods can be selected: GET, POST or SOAP over HTTP.

After setting up all the required fields and parameters properly , one can send a test request to see whether the expected response is given for the job. To do so, the user can hit the Test request button to see the service' response.

edit test

ArcSDE monitoring

A special kind of monitoring is ArcSDE Spatial Database. In addition to simply testing the connectivity to an ArcSDE instance, one can probe for the existence of specific feature classes and features. The service.monitor can test for the number of objects/attributes of a specific feature.

If this service type is selected, the label Service URL will change to ArcSDE host. Along with that, a number of additional fields will occur:

edit sde instance

The ArcSDE host stores the name of the server the ArcSDE instance is running on. The ArcSDE service stores the port number of the ArcSDE instance (e.g. 5150). If the given DBMS support more than one SDE database, the target database can be stored in the field ArcSDE database.

The login credential for the ArcSDE instance are stored in the fields username/password, in the same way as for web services.

Optionally, the following parameters can be entered into the form to further monitor specific aspects of the SDE instance.

edit sde filter
All fields are optional, but if you enter values into Feature count condition or Object query (SQL) a value for Feature class must be given.

The following table explains the meaning of the parameters.

Name

Description

Feature class

If given, the service.monitor checks the existence of the feature class. The name needs to be fully qualified: <Schema>.<Featureclass>, whereas <Schema> refers to the owner of the feature class.

Feature count condition

Tests the number of features that shall be present. You might combine the number with the following comparison operators:

  • >

  • <

  • =

Object query (SQL)

By providing an optional SQL query it can be tested if specific features are present. This filed stores the WHERE clause of an SQL query. Thus, string must be enter in quotation marks.

  • POPULATION>10000

  • FEDERAL_STATE='NRW'

The job is treated as 'ok' if the object query yields one or more rows.

Enterprise Geodatabase DirectConnect monitoring

Quite similar to ArcSDE monitoring described above it is possible to monitor Esri Enterprise Geodatabases via Direct Connect. In this case no SDE Application Server is involved and the database holding the geodatabase schema is accessed directly.

If this service type is selected, the label Service URL will change to Direct Connect address. Along with that, a number of additional fields will occur:

egdb address en

The field DirectConnect address picks up the connection string to the Enterprise Geodatabase you want to connect to.

For a PostgreSQL database the connection string is sde:postgresql:<HOSTNAME>,<DB_PORT>

For a Oracle database the connection string

  • sde:<HOST>[:<DB_PORT>]/<INSTANCE>

  • sde:oracle11g$//<HOST>[:<DB_PORT>]/<INSTANCE> (there are other connection string formats available).

For a MS SQL Server the connection string is sde:sqlserver:<HOST>,<DB_PORT>

The field database allows for specifying the schema or database name you want to connect to. The concrete meaning of this field is vendor specific.

Please check Esri documentation for all available database connection strings: Database connections in ArcMap

Creating a query as part of the monitoring request is very much the same like for Arc SDE Monitoring. Please see above.

egdb query en
Testing the request will not only check the connection to the server it will also perform the queries entered in the input fields.

Please make sure you have provided Esri’s ArcObjects library and your database’s vendor library available on service.monitor application classpath. Furthermore, service.monitor needs to be able to obtain a Esri License for executing the requests to the EGDB. Obtaining the license works pretty much the same like obtaining a license for an Esri Engine application. Please verify with Esri’s documentation to set up the system correctly.