userver: userver/server/handlers/dump_coroutines.hpp Source File
Loading...
Searching...
No Matches
dump_coroutines.hpp
Go to the documentation of this file.
1#pragma once
2
3/// @file userver/server/handlers/dump_coroutines.hpp
4/// @brief @copybrief server::handlers::DumpCoroutines
5
6#include <userver/server/handlers/http_handler_json_base.hpp>
7#include <userver/utils/fast_pimpl.hpp>
8
9USERVER_NAMESPACE_BEGIN
10
11namespace server::handlers {
12
13/// @ingroup userver_components userver_http_handlers
14///
15/// @brief Handler that returns detailed alive coroutines information.
16class DumpCoroutines final : public HttpHandlerJsonBase {
17public:
18 DumpCoroutines(const components::ComponentConfig& config, const components::ComponentContext& component_context);
19
20 ~DumpCoroutines() override;
21
22 /// @ingroup userver_component_names
23 /// @brief The default name of server::handlers::DumpCoroutines
24 static constexpr std::string_view kName = "handler-dump-coroutines";
25
26 formats::json::Value HandleRequestJsonThrow(
27 const http::HttpRequest& request,
28 const formats::json::Value& request_json,
29 request::RequestContext& context
30 ) const override;
31
32private:
33 struct Impl;
34 utils::FastPimpl<Impl, 8, 8> impl_;
35};
36
37} // namespace server::handlers
38
39USERVER_NAMESPACE_END