Configuring HEYMon jobs

HEYMon performs units of work known as Jobs. Jobs are configured through a simple XML file named job.properties which is located in the same directory as the HEYMon application.
The following is a complete job.properties file with one configured job:

<jobProperties>
<properties>
   <property name="our_app_log">c:/path/file.log</property>
   <property name="our_server">OURSERVERNAME</property>
   <property name="notify_support">name@emailsvr.com</property>
</properties>
<jobs>
   <job name="Our App Error monitor">
   <description>Monitors Our App log files to send a notification when an error has occurred</description>
   <connection>our_app_log</connection>
   <systemID>our_server</systemID>
   <scanIntervalSeconds>300</scanIntervalSeconds>
   <destination>notify_support</destination>
   <queries>
      <query1>$4=ERROR</query1>
   </queries>
   <notifySubject>Errors found in APP log file from %s</notifySubject>
   <notifyBody> </notifyBody>
   <type name="ProcessErrorLogJob">
      <logTempDirectory>file_tmp_dir</logTempDirectory>
      <logLineKey>$1$2$3$4</logLineKey>
      <logLineRead>5</logLineRead>
      <keyDelimiter> </keyDelimiter>
      <logLineDateFormat>yyyy-MM-dd HH</logLineDateFormat>
   </type>
</job>
</jobs>
</jobProperties>

The properties file has two main sections which can be described as follows:

To configure a new job for HEYMon, just add the related XML anywhere inside the <jobs> element.
To get a sample of the XML and related properties for a job look in the Users Guide.

Lets go over the first job in detail to see what it does:
    <job name="Our App Error monitor"> : Specifies that this is a job and what the job name is. Job names should be unique within job.properties.
    <description> : A description of the job. The description should contain all the details of what the job is being used for.
    <connection> : A meta-property for the location this job connects to. In this case, the connection is the path to a log file. Note that this property has a value of 'our_app_log'. If you look in the <properties> section of job.properties you will see that this property has a value of c:/path/file.log.
    <systemID> : A meta-property for the system this job should run on. Note that this property has a value of our_server. If you look in the <properties> section of job.properties you will see that this property has a value of OURSERVERNAME.
    <scanIntervalSeconds> : A property specifying the interval that this job should run. This job is configured to run every 300 seconds, which is the equivalent of 5 minutes.
    <destination> : A meta-property for the email addresses that alerts should be sent to. Note that this property has a value of notify_support. If you look in the <properties> section of job.properties you will see that this property has a value of name@emailsvr.com.
    <queries> : The queries specific to this job type. All jobs use the <queries> property to contain what is considered an alert condition. The format of the <queries> property is different depending on the job type. In our example, this job type is ProcessErrorLogJob. For this job type, the <queries> property represents what comprises an alert inside an error log file.
    <type name="ProcessErrorLogJob"> : This property defines which HEYMon job type is being used. All the properties within the <type> element are specific to each job type, and all job types and related properties are documented in the Users Guide.