1#include <xrpld/app/main/CollectorManager.h>
3#include <xrpl/beast/insight/Collector.h>
4#include <xrpl/beast/insight/Group.h>
5#include <xrpl/beast/insight/Groups.h>
6#include <xrpl/beast/insight/NullCollector.h>
7#include <xrpl/beast/insight/StatsDCollector.h>
8#include <xrpl/beast/net/IPEndpoint.h>
9#include <xrpl/beast/utility/Journal.h>
10#include <xrpl/config/BasicConfig.h>
11#include <xrpl/config/Constants.h>
31 if (server ==
"statsd")
A version-independent IP address and port combination.
static Endpoint fromString(std::string const &s)
A generic endpoint for log messages.
std::shared_ptr< Collector > ptr
std::shared_ptr< Group > ptr
static std::shared_ptr< Collector > make()
static std::shared_ptr< StatsDCollector > make(IP::Endpoint const &address, std::string const &prefix, Journal journal)
Create a StatsD collector.
CollectorManagerImp(Section const ¶ms, beast::Journal journal)
beast::insight::Collector::ptr const & collector() override
beast::insight::Group::ptr const & group(std::string const &name) override
beast::insight::Collector::ptr collector_
~CollectorManagerImp() override=default
std::unique_ptr< beast::insight::Groups > groups_
Provides the beast::insight::Collector service.
Holds a collection of configuration values.
std::unique_ptr< Groups > makeGroups(Collector::ptr const &collector)
Create a group container that uses the specified collector.
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
std::unique_ptr< CollectorManager > makeCollectorManager(Section const ¶ms, beast::Journal journal)
T get(Section const §ion, std::string const &name, T const &defaultValue=T{})
Retrieve a key/value pair from a section.
static constexpr auto kAddress
static constexpr auto kPrefix
static constexpr auto kServer