Skip to main content

EmpowerID HealthCheck SQL Procedure

Run the SQL stored procedure, Z_EmpowerID_Health, to conduct a health assessment of core EmpowerID processes. This procedure is designed to evaluate the performance of standard EmpowerID functionalities and should be used by enterprise monitoring tools to notify IT personnel when intervention is needed. Customization options are available to include additional checks.

warning

It is advised to run this procedure on a regular basis at 5-minute intervals; intervals shorter than 1 minute may cause excessive system load.

Required Configuration Settings

Two settings are needed for certain pre-programmed health checks in this stored procedure to function effectively. Configure these settings via the EID UI: https://<EID-URL>/ui/#custom/EmpowerIDConfigSettings

  1. EmpowerID_Health_EmpowerIDServerRoleNames_ToMonitor: Enter a comma-separated list of EmpowerID Server Roles used in your EID instance. Typically, this value should be "Application Server Full, Web Front-End" to cover the two most common server roles.
  2. EmpowerID_Health_EmpowerIDServiceFriendlyNames_ToMonitor: Provide a comma-separated list of EmpowerID Services used in your EID instance. Generally, this value should be "Web Role Service, Worker Role Service" to include the two most frequently utilized services.

Procedure Results

When you run the Z_EmpowerID_Health procedure, you will always receive a single resultset containing at least one result. The resultset includes a single column. If all checks pass, only a default record with the text "Z_EmpowerID_Health Complete (disregard this message)" will be returned. If any checks fail, the default record will be preceded by records indicating the failed checks. This design is intended to facilitate easy integration with most enterprise monitoring tools.

Available Health Checks

The stored procedure contains various built-in health checks, and you have the option to add more checks for use-case-specific logic. Below is a table of potential health checks and the corresponding text returned in case of a failure:

Health CheckFailure Message
Service HeartbeatEmpowerID Service <ServiceName> Heartbeat Overdue (5 minutes or more elapsed)
Server Role HeartbeatEmpowerID Server Role <RoleName> Heartbeat Overdue (5 minutes or more elapsed)
Job TimingJob Overdue: <JobName> (10 minutes or more elapsed)
Job StatusJob Not Succeeding: <JobName>
Inventory ProgressInventory Progress Stalled: <SystemName>
Enforcement ProgressEnforcement Progress Stalled: <SystemName>
Membership ProgressMembership Progress Stalled: <SystemName>
Projection ProgressProjection Progress Stalled: <SystemName>
Inventory TimingInventory Overdue: <SystemName>
Enforcement TimingEnforcement Overdue: <SystemName>
Membership TimingMembership Overdue: <SystemName>
Projection TimingProjection Overdue: <SystemName>
Inventory StatusInventory Not Succeeding: <SystemName>
Enforcement StatusEnforcement Not Succeeding: <SystemName>
Membership StatusMembership Not Succeeding: <SystemName>
Projection StatusProjection Not Succeeding: <SystemName>
Account Store Job FailuresJob <JobName> on AccountStore <SystemName> failed <#Failures> times consecutively from <EarliestFailureDateTime> to <RecentFailureDateTime>
Permanent Workflow StatusPermanent Workflow <PermamentWorkflowName> is marked Active but overdue
Compiled Set StatusCompiled Set <SetName> is marked Enabled but overdue
Cloud Gateway StatusCloud Gateway Server <ServerName> has not contacted EmpowerID in more than 5 minutes