The Data Reviewer service
The Data Reviewer service is a Windows service that can be scheduled to run Reviewer batch jobs. Similar to running a batch job using the Reviewer Batch Validate tool, the Data Reviewer service validates and runs batch jobs and writes the results to the Reviewer table in a specified Reviewer session. Batch jobs can be scheduled to run once at a specific date and time or to run repeatedly at regular intervals.
Requirements for running the Data Reviewer service
Before you can run a batch job using the service, the following criteria must be met for the system and the database:
- A Reviewer session must be set up in the Reviewer workspace.
- An ArcGIS license must be available where the service is installed. The service, once it has started, consumes an ArcGIS license.
- A configuration file must be available for the service.
Components of the service
There are two components to the service: the Windows service and the service controller, which is a means of configuring the service. The Data Reviewer service runs in the background as a Windows service under the control of the Windows Service Control Manager (SCM). On startup, the service reads the configuration specifying which batch jobs will be run at which time and at what frequency or interval. The service also performs a regular maintenance cycle to check any batch jobs that are currently executing. In addition, the service listens for a shutdown event from the SCM or another external source, for instance, which it then propagates to any currently executing batch jobs.
The Data Reviewer service controller provides the means to configure and administer the service, and it is accessed from the system tray. From the system tray, you can open a context menu from which the various Data Reviewer service controller dialog boxes can be opened. The service controller is used to create or edit the configuration specifying which batch jobs will be run when, as well as what Reviewer workspace and session should be used to record the batch job errors. In addition, the service controller allows you to start and stop the service, as well as view its current status, log files, and the batch jobs.
Configuration files
There are two configuration files that are associated with the Data Reviewer service: the service configuration file and the service job file. The service configuration file controls the configuration of the service itself, such as where it writes the log files and the job status, the location of the service job configuration file to be run, and so forth. The service job file specifies the Reviewer batch jobs to be executed. Both of these are Extensible Markup Language (XML) files.
The Data Reviewer service interacts with these files by initially searching for the service configuration file, which contains information about which service job is to be run as well as the directory to which the status and log files will be written. The Data Reviewer service then parses the referenced service job file, and an internal timer is created and configured according to the schedule information that is part of the file. At the scheduled time, the batch jobs referenced in the service job are run.
Permissions and the Data Reviewer service
The Data Reviewer service runs under a local system account that should already have access to the necessary configuration and connection files required by the service. If the user who will be configuring the service (that is, setting up and scheduling batch jobs) does not have administrative privileges on the machine, that user will receive an access denied error when trying to start or stop the service using the service controller. To allow non-administrative users to start and stop the Data Reviewer service, you need to grant them permission to do so. One way to do this is to use the SubInACL command line tool available from Microsoft. To give a particular user permissions to the Data Reviewer service, you would enter the following command:
subinacl /service RevService /grant=domain1\user1= FHere, F is for Full Control.
You must run the command line tool with an account that has administrative privileges.
If the account the Data Reviewer service runs under is changed from local system, you will need to ensure that the account has administrative privileges on the local machine as well as the necessary permissions to the files required for the service to run. The list below is a summary of the permissions.
Service component |
Required permissions |
Notes |
---|---|---|
Service configuration files |
Modify |
It is recommended these files be stored in the config directory of the Data Reviewer service folder chosen during the post-install process. |
Service job files |
Modify |
It is recommended these files be stored in the jobs directory of the Data Reviewer service folder chosen during post install process. |
Reviewer batch job files (.rbj files) |
Read |
The service account needs read access to the Reviewer batch job files (.rbj files) referenced in the service job file. |
Reviewer workspace connection file |
Read |
The service account needs read permissions to the Reviewer workspace connection file referenced in the service job file. |
Licensing and the Data Reviewer service
The Data Reviewer service consumes an ArcGIS license once it has started. The ArcGIS License Manager grants licenses based on user name and host name. If the Data Reviewer service runs under the local system account, it will check out one ArcGIS license. If you start an ArcGIS application on that same machine, but under a different account (user name), ArcGIS will check out another license.
If you run the Data Reviewer service and any ArcGIS application on that same machine is using the same account, ArcGIS will not consume an additional license. However, that account must have local administrative privileges.