rippled
Public Member Functions | Private Attributes | List of all members
ripple::PeerImp::Metrics Class Reference
Collaboration diagram for ripple::PeerImp::Metrics:
Collaboration graph
[legend]

Public Member Functions

 Metrics ()=default
 
 Metrics (Metrics const &)=delete
 
Metricsoperator= (Metrics const &)=delete
 
 Metrics (Metrics &&)=delete
 
Metricsoperator= (Metrics &&)=delete
 
void add_message (std::uint64_t bytes)
 
std::uint64_t average_bytes () const
 
std::uint64_t total_bytes () const
 

Private Attributes

boost::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 186 of file PeerImp.h.

Constructor & Destructor Documentation

◆ Metrics() [1/3]

ripple::PeerImp::Metrics::Metrics ( )
default

◆ Metrics() [2/3]

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

◆ Metrics() [3/3]

ripple::PeerImp::Metrics::Metrics ( Metrics &&  )
delete

Member Function Documentation

◆ operator=() [1/2]

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

◆ operator=() [2/2]

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

◆ add_message()

void ripple::PeerImp::Metrics::add_message ( std::uint64_t  bytes)

Definition at line 3675 of file PeerImp.cpp.

◆ average_bytes()

std::uint64_t ripple::PeerImp::Metrics::average_bytes ( ) const

Definition at line 3701 of file PeerImp.cpp.

◆ total_bytes()

std::uint64_t ripple::PeerImp::Metrics::total_bytes ( ) const

Definition at line 3708 of file PeerImp.cpp.

Member Data Documentation

◆ mutex_

boost::shared_mutex ripple::PeerImp::Metrics::mutex_
mutableprivate

Definition at line 205 of file PeerImp.h.

◆ rollingAvg_

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

Definition at line 206 of file PeerImp.h.

◆ intervalStart_

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

Definition at line 207 of file PeerImp.h.

◆ totalBytes_

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

Definition at line 208 of file PeerImp.h.

◆ accumBytes_

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

Definition at line 209 of file PeerImp.h.

◆ rollingAvgBytes_

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

Definition at line 210 of file PeerImp.h.