Health Checks Aggregator Template — Features¶
This page summarizes scaffolding parameters, runtime configuration, and HTTP surface for ConnectSoft.HealthChecksAggregatorTemplate. For architecture, Docker, Kubernetes, and troubleshooting, use the template README.
See also: Overview.
Template parameters (dotnet new)¶
| Parameter | Alias | Description | Default |
|---|---|---|---|
--name |
-n |
Solution and project name | Required |
--httpPort |
--http |
HTTP port | Auto |
--httpsPort |
--https |
HTTPS port | Auto |
--docker |
-d |
Enable Docker | true |
--healthcheck-path |
-hp |
Health check path | /health |
--healthcheck-ui |
-hck-ui |
Enable Health Checks UI | true |
--healthcheck-ui-path |
-hck-uip |
UI path segment | health-ui |
--healthcheck-ui-storage |
-hp-s |
SqlServer or InMemory |
SqlServer |
--swagger |
-sw |
Swagger | true |
--scalar |
-sc |
Scalar docs | true |
--cors |
CORS | true |
|
--rate-limiting |
-rl |
Rate limiting | true |
--open-telemetry |
-o-t |
OpenTelemetry | true |
--resource-monitoring |
-rm |
Resource monitoring | true |
--feature-flags |
-f-f |
Feature flags | true |
--distributed-cache |
--cache |
Redis, InMemory, or None |
Redis |
--build-definition-number |
-bdn |
Build metadata | Optional |
Core configuration (HealthCheckAggregator)¶
Typical Application appsettings.json section (names may vary slightly per generated solution; verify against generated files):
| Setting | Meaning | Example default |
|---|---|---|
PollingInterval |
How often to poll downstream | 00:00:30 |
Timeout |
Per-request timeout | 00:00:05 |
RetryCount |
Retries | 3 |
RetryDelay |
Initial backoff | 00:00:01 |
CacheDuration |
Cache results | 00:00:30 |
Services |
Array of downstream definitions | See README |
Webhooks |
Alert destinations | See below |
ReadinessGate |
Gate strategy + options | See below |
Service entry (per README): Name, HealthCheckUrl, IsCritical, Tags (optional metadata).
Environment overrides: HealthCheckAggregator__PollingInterval, HealthCheckAggregator__ReadinessGate__Strategy, etc.
Connection strings: UI storage (ConnectionStrings:HealthCheckUI or aligned name), Redis when used — follow Configuration alignment.
Readiness gate strategies¶
| Strategy | Behavior |
|---|---|
AllHealthy |
Every configured service must be healthy. |
CriticalOnly |
Only IsCritical services must be healthy. |
PercentageThreshold |
Requires property Threshold (e.g. 0.8 = 80% healthy). |
TagBased |
Requires RequiredTags; those tagged services must be healthy. |
Kubernetes: expose gate via GET /api/health/readiness when orchestration should follow aggregator logic (see README probe examples).
Webhooks¶
| Field | Purpose |
|---|---|
Name, Url |
Identity and target |
Events |
Healthy, Unhealthy, Degraded |
Services |
Filter by service name; * for all |
Tags |
Optional tag filter |
Headers |
Custom headers (do not set Content-Type for Teams/Slack bodies per README note) |
MaxRetries, RetryDelay |
Delivery resilience |
PayloadTemplate, RestoredPayloadTemplate |
JSON templates with placeholders |
Placeholders: [[LIVENESS]], [[FAILURE]], [[STATUS]], [[TIMESTAMP]].
REST API (aggregator)¶
Base path: /api/health (see generated OpenAPI for exact casing and auth).
| Method | Path | Purpose |
|---|---|---|
| GET | /api/health/aggregated |
Overall roll-up |
| GET | /api/health/services |
All services |
| GET | /api/health/services/{serviceName} |
One service |
| GET | /api/health/tags/{tag} |
Filter by tag |
| GET | /api/health/dependencies |
Graph JSON |
| GET | /api/health/dependencies/dot |
Graphviz DOT |
| GET | /api/health/readiness |
Readiness gate evaluation |
Standard host endpoints¶
| Path | Typical use |
|---|---|
/health |
ASP.NET health / readiness |
/alive |
Liveness |
/startup |
Startup probe |
Health Checks UI¶
- Default UI path segment:
health-ui(with leading slash in URL, e.g./health-ui). - Storage: SQL Server (historical) or InMemory (dev); chosen by template parameter and
HealthChecksUI/ connection config — confirm generatedappsettings.
Observability (built-in options)¶
When enabled via template flags and base wiring: Serilog, OpenTelemetry, Prometheus-compatible metrics, resource monitoring. Details: template README and base-template observability docs.