in src/Diagnostics.HealthChecks/Internal/OmexHealthCheckPublisher.cs [49:94]
protected string BuildHealthSummaryDescription(HealthReport report)
{
int entriesCount = report.Entries.Count;
int healthyEntries = 0;
int degradedEntries = 0;
int unhealthyEntries = 0;
foreach (KeyValuePair<string, HealthReportEntry> entryPair in report.Entries)
{
switch (entryPair.Value.Status)
{
case HealthStatus.Healthy:
healthyEntries++;
break;
case HealthStatus.Degraded:
degradedEntries++;
break;
case HealthStatus.Unhealthy:
default:
unhealthyEntries++;
break;
}
}
StringBuilder descriptionBuilder = StringBuilderPool.Get();
string description;
try
{
descriptionBuilder
.AppendFormat("Health checks executed: {0}. ", entriesCount)
.AppendFormat("Healthy: {0}/{1}. ", healthyEntries, entriesCount)
.AppendFormat("Degraded: {0}/{1}. ", degradedEntries, entriesCount)
.AppendFormat("Unhealthy: {0}/{1}.", unhealthyEntries, entriesCount)
.AppendLine()
.AppendFormat("Total duration: {0}.", report.TotalDuration)
.AppendLine();
description = descriptionBuilder.ToString();
}
finally
{
StringBuilderPool.Return(descriptionBuilder);
}
return description;
}