![]() |
VOOZH | about |
dotnet add package Toggly.FeatureManagement.HealthChecks --version 3.2.4
NuGet\Install-Package Toggly.FeatureManagement.HealthChecks -Version 3.2.4
<PackageReference Include="Toggly.FeatureManagement.HealthChecks" Version="3.2.4" />
<PackageVersion Include="Toggly.FeatureManagement.HealthChecks" Version="3.2.4" />Directory.Packages.props
<PackageReference Include="Toggly.FeatureManagement.HealthChecks" />Project file
paket add Toggly.FeatureManagement.HealthChecks --version 3.2.4
#r "nuget: Toggly.FeatureManagement.HealthChecks, 3.2.4"
#:package Toggly.FeatureManagement.HealthChecks@3.2.4
#addin nuget:?package=Toggly.FeatureManagement.HealthChecks&version=3.2.4Install as a Cake Addin
#tool nuget:?package=Toggly.FeatureManagement.HealthChecks&version=3.2.4Install as a Cake Tool
ASP.NET Core Health Checks for the Toggly Feature Management SDK. Monitor SDK connection status, definition freshness, WebSocket connectivity, and required feature availability.
dotnet add package Toggly.FeatureManagement.HealthChecks
builder.Services.AddHealthChecks()
.AddTogglyHealthCheck();
builder.Services.AddHealthChecks()
.AddTogglyHealthCheck("Toggly", HealthStatus.Degraded, [], options =>
{
// Maximum age of definitions before considered stale (default: 10 minutes)
options.StalenessThreshold = TimeSpan.FromMinutes(15);
// Features that must be enabled for the service to be healthy
options.RequiredFeatures = new[] { "critical-feature", "payment-gateway" };
// If true, disabled required features = Unhealthy instead of Degraded
options.TreatRequiredFeaturesAsUnhealthy = false;
// Include detailed diagnostic data in health check response
options.IncludeDiagnosticData = true;
});
builder.Services.AddHealthChecks()
.AddTogglyHealthCheck(
requiredFeatures: new[] { "critical-feature", "payment-gateway" },
name: "toggly-features");
builder.Services.AddHealthChecks()
.AddTogglyHealthCheck(
name: "toggly-sdk",
tags: new[] { "ready", "live" },
failureStatus: HealthStatus.Degraded);
The health check reports three possible states:
TreatRequiredFeaturesAsUnhealthy is false)TreatRequiredFeaturesAsUnhealthy is true)When IncludeDiagnosticData is enabled (default), the health check includes:
| Field | Description |
|---|---|
appKey |
The configured Toggly app key |
environment |
The configured environment name |
definitionCount |
Number of loaded feature definitions |
websocketConnected |
Whether the WebSocket for live updates is connected |
loaded |
Whether the SDK has completed initial load |
lastRefresh |
Timestamp of last successful definition refresh |
lastError |
Most recent error message (if any) |
lastErrorTime |
Timestamp of most recent error (if any) |
definitionsAge |
Age of definitions (when stale) |
disabledRequiredFeatures |
List of required features that are disabled |
{
"status": "Healthy",
"results": {
"toggly": {
"status": "Healthy",
"description": "Toggly SDK is healthy",
"data": {
"appKey": "my-app-key",
"environment": "Production",
"definitionCount": 15,
"websocketConnected": true,
"loaded": true,
"lastRefresh": "2024-01-15T10:30:00.0000000Z"
}
}
}
}
Use the health check for Kubernetes probes:
app.MapHealthChecks("/health/ready", new HealthCheckOptions
{
Predicate = check => check.Tags.Contains("ready")
});
app.MapHealthChecks("/health/live", new HealthCheckOptions
{
Predicate = check => check.Tags.Contains("live")
});
builder.Services.AddHealthChecks()
.AddTogglyHealthCheck(
name: "toggly",
tags: new[] { "ready" });
MIT License - see for details.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 net5.0 is compatible. net5.0-windows net5.0-windows was computed. net6.0 net6.0 is compatible. net6.0-android net6.0-android was computed. net6.0-ios net6.0-ios was computed. net6.0-maccatalyst net6.0-maccatalyst was computed. net6.0-macos net6.0-macos was computed. net6.0-tvos net6.0-tvos was computed. net6.0-windows net6.0-windows was computed. net7.0 net7.0 is compatible. net7.0-android net7.0-android was computed. net7.0-ios net7.0-ios was computed. net7.0-maccatalyst net7.0-maccatalyst was computed. net7.0-macos net7.0-macos was computed. net7.0-tvos net7.0-tvos was computed. net7.0-windows net7.0-windows was computed. net8.0 net8.0 is compatible. net8.0-android net8.0-android was computed. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 is compatible. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 was computed. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
| .NET Core | netcoreapp3.0 netcoreapp3.0 was computed. netcoreapp3.1 netcoreapp3.1 is compatible. |
| .NET Standard | netstandard2.1 netstandard2.1 is compatible. |
| MonoAndroid | monoandroid monoandroid was computed. |
| MonoMac | monomac monomac was computed. |
| MonoTouch | monotouch monotouch was computed. |
| Tizen | tizen60 tizen60 was computed. |
| Xamarin.iOS | xamarinios xamarinios was computed. |
| Xamarin.Mac | xamarinmac xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos xamarinwatchos was computed. |
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.