userver: Components
Loading...
Searching...
No Matches
Components

Components that could be used with utils::DaemonMain like functions; see Component system for an intro. More...

+ Collaboration diagram for Components:

Nested Groups

 HTTP Handlers
 Handlers are components that could be used by components::Server to process the incoming requests.
 
 Component Default Names
 Default names of components that are used in static config files.
 

Classes

class  baggage::BaggageManagerComponent
 Component for relationship with header baggage. More...
 
class  components::CachingComponentBase< T >
 Base class for caching components. More...
 
class  cache::LruCacheComponent< Key, Value, Hash, Equal >
 Base class for LRU-cache components. More...
 
class  clients::dns::Component
 Caching DNS resolver component. More...
 
class  components::HttpClient
 Component that manages clients::http::Client. More...
 
class  components::DumpConfigurator
 Helper component that manages common configuration for userver dumps. More...
 
class  components::FsCache
 Component for storing files in memory. More...
 
class  components::HeadersPropagatorComponent
 Headers Propagator Component can scrape configured headers and then enrich HttpClient request with them. More...
 
class  components::LoggingConfigurator
 Helper component to configure logging. More...
 
class  components::ManagerControllerComponent
 Component that prepares the engine internals and starts all the other components. More...
 
class  components::ProcessStarter
 Component for getting the engine::subprocess::ProcessStarter. More...
 
class  components::SingleThreadedTaskProcessors
 Component that starts multiple single threaded task processors. More...
 
class  components::StatisticsStorage
 Component that keeps a utils::statistics::Storage storage for metrics. More...
 
class  components::TcpAcceptorBase
 Component for accepting incoming TCP connections. More...
 
class  components::Tracer
 Component that initializes the request tracing facilities. More...
 
class  congestion_control::Component
 Component to limit too active requests, also known as CC. More...
 
class  components::DynamicConfigClient
 Component that starts a clients::dynamic_config::Client client. More...
 
class  components::DynamicConfigFallbacks
 Component that setup runtime configs based on fallbacks from file. More...
 
class  components::DynamicConfig
 Component that stores the runtime config. More...
 
class  components::DynamicConfigClientUpdater
 Component that does a periodic update of runtime configs. More...
 
class  engine::TaskProcessorsLoadMonitor
 Component to monitor CPU usage for every TaskProcessor present in the service, and dump per-thread stats into metrics. More...
 
class  components::Logging
 Logging component More...
 
class  os_signals::ProcessorComponent
 A component for os_signals::Processor. More...
 
class  components::Server
 Component that listens for incoming requests, manages incoming connections and passes the requests to the appropriate handler. More...
 
class  components::AuthCheckerSettings
 Component that loads auth configuration settings from a components::Secdist component if the latter was registered in components::ComponentList. More...
 
class  server::handlers::DnsClientControl
 Handlers that controls the DNS client. More...
 
class  server::handlers::DynamicDebugLog
 Handler for forcing specific lines logging. Feature also known as dynamic debug logging. More...
 
class  server::handlers::HttpHandlerBase
 Base class for all the Userver HTTP Handlers. More...
 
class  server::handlers::HttpHandlerFlatbufBase< InputType, ReturnType >
 Convenient base for handlers that accept requests with body in Flatbuffer format and respond with body in Flatbuffer format. More...
 
class  server::handlers::HttpHandlerJsonBase
 Convenient base for handlers that accept requests with body in JSON format and respond with body in JSON format. More...
 
class  server::handlers::HttpHandlerStatic
 Handler that returns HTTP 200 if file exist and returns file data with mapped content/type. More...
 
class  server::handlers::InspectRequests
 Handler that returns information about all in-flight requests. More...
 
class  server::handlers::Jemalloc
 Handler that controls the jemalloc allocator. More...
 
class  server::handlers::LogLevel
 Handler that controls logging levels of all the loggers. More...
 
class  server::handlers::OnLogRotate
 Handler that controls logging levels of all the loggers. More...
 
class  server::handlers::Ping
 Handler that returns HTTP 200 if the service is OK and able to process requests. More...
 
class  server::handlers::ServerMonitor
 Handler that returns statistics data. More...
 
class  server::handlers::TestsControl
 Handler that allows to control the behavior of server from tests, and functional tests with testsuite in particular. More...
 
class  server::websocket::WebsocketHandlerBase
 Base class for WebSocket handler. More...
 
class  components::Secdist
 Component that stores security related data (keys, passwords, ...). More...
 
class  components::DefaultSecdistProvider
 Component that stores security related data (keys, passwords, ...). More...
 
class  components::TestsuiteSupport
 Testsuite support component. More...
 
class  tracing::DefaultTracingManagerLocator
 Locator component that provides access to the actual TracingManager that will be used in handlers and clients unless specified otherwise. More...
 
class  components::SystemStatisticsCollector
 Component for system resource usage statistics collection. More...
 
class  components::MongoCache< MongoCacheTraits >
 Base class for all caches polling mongo collection More...
 
class  components::Mongo
 MongoDB client component. More...
 
class  components::MultiMongo
 Dynamically configurable MongoDB client component. More...
 
class  storages::mongo::DistLockComponentBase
 Base class for mongo-based distlock worker components. More...
 
class  components::PostgreCache< PostgreCachePolicy >
 Caching component for PostgreSQL. See Caching Component for PostgreSQL. More...
 
class  components::Postgres
 PosgreSQL client component. More...
 
class  storages::postgres::DistLockComponentBase
 Base class for postgres-based distlock worker components. More...
 
class  components::Redis
 Redis client component. More...
 
class  components::ClickHouse
 ClickHouse client component. More...
 
class  ugrpc::client::ClientFactoryComponent
 Provides a ClientFactory in the component system. More...
 
class  ugrpc::client::middlewares::baggage::Component
 Component for gRPC client baggage. More...
 
class  ugrpc::client::middlewares::deadline_propagation::Component
 Component for gRPC client deadline_propagation. Update deadline from TaskInheritedData if it exists and more strict than context deadline. More...
 
class  ugrpc::client::middlewares::log::Component
 Component for gRPC client logging. More...
 
class  ugrpc::client::SimpleClientComponent< Client >
 Template class for a simple gRPC client. More...
 
class  ugrpc::server::middlewares::baggage::Component
 Component for gRPC server baggage. More...
 
class  ugrpc::server::middlewares::congestion_control::Component
 Component for gRPC server logging. More...
 
class  ugrpc::server::middlewares::deadline_propagation::Component
 Component for gRPC server deadline propagation. More...
 
class  ugrpc::server::middlewares::log::Component
 Component for gRPC server logging. More...
 
class  ugrpc::server::ServerComponent
 Component that configures and manages the gRPC server. More...
 
class  ugrpc::server::ServiceComponentBase
 Base class for all the gRPC service components. More...
 
class  components::RabbitMQ
 RabbitMQ (AMQP 0.9.1) client component. More...
 
class  storages::mysql::Component
 MySQL/MariaDB client component. More...
 

Functions

ComponentList components::CommonComponentList ()
 Returns the most common list of components with runtime config updates and HTTP client.
 
ComponentList components::CommonServerComponentList ()
 Returns the most common list of components to start a fully functional server.
 
ComponentList components::MinimalComponentList ()
 Returns a list of components to do basic logging, component initialization and configuration.
 
ComponentList components::MinimalServerComponentList ()
 Returns a list of components to start a basic HTTP server.
 

Detailed Description

Components that could be used with utils::DaemonMain like functions; see Component system for an intro.


Function Documentation

◆ CommonComponentList()

◆ CommonServerComponentList()

ComponentList components::CommonServerComponentList ( )

Returns the most common list of components to start a fully functional server.

The list contains:

Examples
samples/production_service/production_service.cpp.

◆ MinimalComponentList()

ComponentList components::MinimalComponentList ( )

Returns a list of components to do basic logging, component initialization and configuration.

The list contains:

Examples
samples/tcp_service/tcp_service.cpp.

◆ MinimalServerComponentList()