Service Health
Setting up Service Health
An environment admin sets up Service Health by connecting where requests are measured, choosing the initial strictness and starting the first pull. This guide covers both supported sources and the checks to make before trusting the numbers.
Before you start
Open Service Health from the portal's Apps area, then Admin → Setup. You need an Azure Log Analytics workspace containing your Application Insights request data, or OpenObserve containing your OpenTelemetry traces. Connecting or completing a data source also requires permission to manage Data Sources.
The app works from the measurements you send. If a service is not instrumented or its requests are missing from the source, its absence here does not mean it is healthy.
Connect Azure Log Analytics
The connection form explains how to prepare access:
- Register an application in Microsoft Entra ID. Keep its Directory (tenant) ID and Application (client) ID.
- Create a client secret. Copy its Value, rather than its ID, and note its expiry date.
- On the Log Analytics workspace receiving Application Insights data, give that application the Log Analytics Reader role.
- In Setup, choose Connect Azure Log Analytics or Connect another workspace. Enter the two IDs, secret and Workspace ID from the workspace's Overview.
- Save the connection and select it.
If an Azure source is already connected, Setup can reuse its service principal. Enter the workspace ID if asked, and make sure that principal can read that workspace. Finish connecting means a source is missing required credentials.
Connect OpenObserve
Choose Connect OpenObserve and supply:
| Field | What to enter |
|---|---|
| Address | Your OpenObserve HTTPS address, with no path or embedded credentials |
| The user the app should search as | |
| Password | That user's password |
| Organisation | The organisation holding your traces; leave empty for default |
| Traces stream | The traces stream; leave empty for default |
Use a dedicated user with permission to search the required traces. Save and select the source. Both source types feed the same health measures, so the SLO and budget guides apply to both.
Choose strictness and start
Choose Relaxed, Standard or Strict. Standard is selected initially. Each preset supplies targets for the three tiers, and the screen shows what those choices mean. You can change them later in Admin → SLOs.
Press Start Service Health. Setup reads recent history, approximately the last month, and shows progress. The screen suggests allowing around ten minutes for initial statuses; the time depends on your source and how much data it holds.
Check what it found
- Open Admin → Services. Confirm the suggested display names, owning teams and tiers.
- Assign a team wherever one is missing. Services without a team cannot raise Jira tickets.
- Open Admin → Endpoints. Check that paths with IDs form useful API groups rather than thousands of separate names.
- Review Admin → Exclusions. Decide whether health checks and test endpoints should count.
- Check the objectives against what your users need.
- If you use Jira, configure project mappings and tickets.
- Grant the right people access.
How much detail is kept?
Admin → Connector lets you choose which APIs retain five-minute detail for the last 14 days. The default selects active APIs from recent traffic, slow calls and server errors. Selection uses fixed thresholds, so it does not guarantee detail for every API with an at-risk objective. You can choose every API for broader coverage.
Daily totals and detailed points serve different purposes. A day may have totals even when no five-minute detail was retained, so opening it cannot always identify the time the slowdown began.
When setup does not look right
| What you see | What to check |
|---|---|
| A source cannot be selected | Finish its missing connection fields and check source permissions |
| No services after the first pull | Confirm requests or traces reach the selected workspace, organisation and stream; check Setup's pipeline status |
| No health status on a quiet API | Fewer than 100 calls in the objective window is insufficient for a judgement |
| Numbers stopped moving | Check the data timestamp, pipeline status and source credentials; Azure secrets can expire |
| No team | Assign an owner in Admin → Services |
| A status seems too good | Check the tier, target, endpoint grouping and exclusions |
Last-known statuses can remain visible when a pull stops. Read freshness alongside health, and do not treat an old healthy status as a current check.
Continue with Reading the health screens.
