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.
- 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.
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.
?Request=GetCapabilities&Service=WMS
If any other request shall be used for monitoring purposes, the KVP information must be entered in the text field.
?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.
<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.
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:
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.
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: |
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
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:
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.
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. |