mirror of
https://github.com/SantaSpeen/BeamMP-Server.git
synced 2026-04-05 20:06:02 +00:00
add openapi specification for http server
This commit is contained in:
@@ -160,6 +160,8 @@ void Http::Server::THttpServerInstance::operator()() try {
|
||||
HttpLibServerInstance->Get(API_V1 "/health", [](const httplib::Request&, httplib::Response& res) {
|
||||
size_t SystemsGood = 0;
|
||||
size_t SystemsBad = 0;
|
||||
json Good = json::array();
|
||||
json Bad = json::array();
|
||||
auto Statuses = Application::GetSubsystemStatuses();
|
||||
for (const auto& NameStatusPair : Statuses) {
|
||||
switch (NameStatusPair.second) {
|
||||
@@ -167,16 +169,20 @@ void Http::Server::THttpServerInstance::operator()() try {
|
||||
case Application::Status::ShuttingDown:
|
||||
case Application::Status::Shutdown:
|
||||
case Application::Status::Good:
|
||||
Good.push_back(NameStatusPair.first);
|
||||
SystemsGood++;
|
||||
break;
|
||||
case Application::Status::Bad:
|
||||
Bad.push_back(NameStatusPair.first);
|
||||
SystemsBad++;
|
||||
break;
|
||||
}
|
||||
}
|
||||
res.set_content(
|
||||
json {
|
||||
{ "ok", SystemsBad == 0 },
|
||||
{ "healthy", SystemsBad == 0 },
|
||||
{ "good", Good },
|
||||
{ "bad", Bad },
|
||||
}
|
||||
.dump(),
|
||||
"application/json");
|
||||
|
||||
Reference in New Issue
Block a user