Pipeline managers can now be configured to perform health checks to determine how Aspire is performing.
On this page:
To configure health checks for your system add a <healthChecks> section to the pipeline managers for which you desire health checks. Details on how to configure each type of health check are given below. Multiple health checks can be configured per pipeline manager.
The following is an example configuration:
<component name="MyPipelineManager" subType="pipeline" factoryName="aspire-application"> <healthChecks> <timestamp name="Test Timestamp" redThreshold="4000" yellowThreshold="1000" history="5" /> <initialization name="Test Long Initializer"> <check componentRef="/pipeline/LongInitializer"/> <check componentRef="/pipeline/Concat-Test"/> </initialization> <jobCount redThreshold="1" /> </healthChecks> <!-- Configure your pipelines here --> <!-- Configure your components here --> </component>
Note that all health checks can have a "user friendly name" attached to them (the @name attribute).
Once health checks are configured for your pipeline managers, they will be automatically accumulated and made available as requested.
There are multiple types of health checks available. The types currently available include:
Health Checks can be:
The health checks for all pipeline managers across the system are accumulated into a single health check for the entire server. URLS are also available for accessing and managing health checks:
This health check is used to check components to see if they are initializing. If they are, the health of the system will be returned as "INITIALIZING".
Configuration:
<initialization name="Test Long Initializer"> <check componentRef="/pipeline/LongInitializer"/> <check componentRef="/pipeline/Concat-Test"/> </initialization>
Attribute:
Health details:
Note: It is expected that the initialization health check will be performed automatically in a future release of Aspire, at which point this health check will be deprecated.
This health check provides a total count of jobs and will determine the health of the system based on the total number of failed jobs that occur.
Configuration:
<jobCount name="Count of Document Jobs" redThreshold="3" yellowThreshold="1"/>
Attributes:
Health details will show:
Timestamp health checks are used to check the duration of every job and are typically used for occasional jobs (for example, nightly) that take a long time to run (i.e., hours).
Configuration:
<timestamp name="Rebuild Dictionary Token Stats" history="5" redThreshold="10000" yellowThreshold="2000"/>
Attribute:
History:
A history of old timestamps will be kept and displayed in the health check details.
Note that only the most recent timestamp will contribute to the health of the overall system.
Latency health checks compute a moving average of the time it takes to complete a job and then will flag RED or YELLOW if average job latency rises above specified thresholds.
Averages are computed over a specified number of jobs (@jobsToAverage). This method will also compute a peak average latency and give a history of averages for previous time periods.
Configuration: (defaults to 15 minute intervals over 24 hours)
<latency name="Process Single Document" jobsToAverage="5" isSticky="true" redThreshold="15000" yellowThreshold="5000" />
Configuration: (specify the interval and history length)
<latency name="Process Single Document" jobsToAverage="5" isSticky="true" redThreshold="15000" yellowThreshold="5000" interval="3600000" history="48" />
Attributes for Moving Averages:
Attributes for History Presentation:
Notes: