/
vshmidt
/
masstransit
Обзор
Документация
Войти
/
vshmidt
/
masstransit
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
src/MassTransit/HealthReportExtensions.cs
35 строк
1 KB
Chris Patterson
Changed Endpoint properties to public, so they should be properly serialized as a health result #3402
02 июн 2022, 15:54
02 июн 2022, 15:54
3b329fa
Код
Авторство
О чём код?
namespace MassTransit { using System.Collections.Generic; using System.Linq; using System.Text.Json; using System.Text.Json.Nodes; using Microsoft.Extensions.Diagnostics.HealthChecks; using Serialization; public static class HealthReportExtensions { public static string ToJsonString(this HealthReport result) { var healthResult = new JsonObject { ["status"] = result.Status.ToString(), ["results"] = new JsonObject(result.Entries.Select(entry => new KeyValuePair<string, JsonNode>(entry.Key, new JsonObject { ["status"] = entry.Value.Status.ToString(), ["description"] = entry.Value.Description, ["data"] = JsonSerializer.SerializeToNode(entry.Value.Data, SystemTextJsonMessageSerializer.Options) }))) }; var options = new JsonSerializerOptions(SystemTextJsonMessageSerializer.Options) { WriteIndented = true, }; return healthResult.ToJsonString(options); } } }