mirror of
https://github.com/XRPLF/rippled.git
synced 2026-07-23 15:10:34 +00:00
33 lines
813 B
C++
33 lines
813 B
C++
#pragma once
|
|
|
|
#include <xrpl/beast/insight/Collector.h>
|
|
#include <xrpl/beast/net/IPEndpoint.h>
|
|
#include <xrpl/beast/utility/Journal.h>
|
|
|
|
#include <memory>
|
|
#include <string>
|
|
|
|
namespace beast::insight {
|
|
|
|
/**
|
|
* A Collector that reports metrics to a StatsD server.
|
|
* Reference:
|
|
* https://github.com/b/statsd_spec
|
|
*/
|
|
class StatsDCollector : public Collector
|
|
{
|
|
public:
|
|
explicit StatsDCollector() = default;
|
|
|
|
/**
|
|
* Create a StatsD collector.
|
|
* @param address The IP address and port of the StatsD server.
|
|
* @param prefix A string pre-pended before each metric name.
|
|
* @param journal Destination for logging output.
|
|
*/
|
|
static std::shared_ptr<StatsDCollector>
|
|
make(IP::Endpoint const& address, std::string const& prefix, Journal journal);
|
|
};
|
|
|
|
} // namespace beast::insight
|