xrpld
Loading...
Searching...
No Matches
xrpl::PeerImp::Metrics Class Reference
Collaboration diagram for xrpl::PeerImp::Metrics:

Public Member Functions

 Metrics ()=default
 Metrics (Metrics const &)=delete
Metricsoperator= (Metrics const &)=delete
 Metrics (Metrics &&)=delete
Metricsoperator= (Metrics &&)=delete
void addMessage (std::uint64_t bytes)
std::uint64_t averageBytes () const
std::uint64_t totalBytes () const

Private Attributes

std::shared_mutex mutex_
boost::circular_buffer< std::uint64_trollingAvg_ {30, 0ull}
clock_type::time_point intervalStart_ {clock_type::now()}
std::uint64_t totalBytes_ {0}
std::uint64_t accumBytes_ {0}
std::uint64_t rollingAvgBytes_ {0}

Detailed Description

Definition at line 183 of file PeerImp.h.

Constructor & Destructor Documentation

◆ Metrics() [1/3]

xrpl::PeerImp::Metrics::Metrics ( )
default

◆ Metrics() [2/3]

xrpl::PeerImp::Metrics::Metrics ( Metrics const & )
delete

◆ Metrics() [3/3]

xrpl::PeerImp::Metrics::Metrics ( Metrics && )
delete

Member Function Documentation

◆ operator=() [1/2]

Metrics & xrpl::PeerImp::Metrics::operator= ( Metrics const & )
delete

◆ operator=() [2/2]

Metrics & xrpl::PeerImp::Metrics::operator= ( Metrics && )
delete

◆ addMessage()

void xrpl::PeerImp::Metrics::addMessage ( std::uint64_t bytes)

Definition at line 3556 of file PeerImp.cpp.

◆ averageBytes()

std::uint64_t xrpl::PeerImp::Metrics::averageBytes ( ) const

Definition at line 3580 of file PeerImp.cpp.

◆ totalBytes()

std::uint64_t xrpl::PeerImp::Metrics::totalBytes ( ) const

Definition at line 3587 of file PeerImp.cpp.

Member Data Documentation

◆ mutex_

std::shared_mutex xrpl::PeerImp::Metrics::mutex_
mutableprivate

Definition at line 202 of file PeerImp.h.

◆ rollingAvg_

boost::circular_buffer<std::uint64_t> xrpl::PeerImp::Metrics::rollingAvg_ {30, 0ull}
private

Definition at line 203 of file PeerImp.h.

◆ intervalStart_

clock_type::time_point xrpl::PeerImp::Metrics::intervalStart_ {clock_type::now()}
private

Definition at line 204 of file PeerImp.h.

◆ totalBytes_

std::uint64_t xrpl::PeerImp::Metrics::totalBytes_ {0}
private

Definition at line 205 of file PeerImp.h.

◆ accumBytes_

std::uint64_t xrpl::PeerImp::Metrics::accumBytes_ {0}
private

Definition at line 206 of file PeerImp.h.

◆ rollingAvgBytes_

std::uint64_t xrpl::PeerImp::Metrics::rollingAvgBytes_ {0}
private

Definition at line 207 of file PeerImp.h.