6#include <userver/components/component_fwd.hpp>
7#include <userver/components/raw_component_base.hpp>
8#include <userver/concurrent/async_event_source.hpp>
9#include <userver/utils/statistics/fwd.hpp>
11#include <dynamic_config/variables/USERVER_LOG_DYNAMIC_DEBUG.hpp>
13USERVER_NAMESPACE_BEGIN
16struct DynamicDebugConfig;
45class LoggingConfigurator
final :
public RawComponentBase {
49 static constexpr std::string_view
kName =
"logging-configurator";
51 LoggingConfigurator(
const ComponentConfig& config,
const ComponentContext& context);
53 ~LoggingConfigurator()
override;
55 static yaml_config::Schema GetStaticConfigSchema();
58 void OnConfigUpdate(
const dynamic_config::Snapshot& config);
60 utils::statistics::MetricsStoragePtr metrics_storage_;
62 concurrent::AsyncEventSubscriberScope config_subscription_;