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

Classes

struct  Stats
 

Public Member Functions

 LoadMonitor (beast::Journal j)
 
void addLoadSample (LoadEvent const &sample)
 
void addSamples (int count, std::chrono::milliseconds latency)
 
void setTargetLatency (std::chrono::milliseconds avg, std::chrono::milliseconds pk)
 
bool isOverTarget (std::chrono::milliseconds avg, std::chrono::milliseconds peak)
 
Stats getStats ()
 
bool isOver ()
 

Private Member Functions

void update ()
 

Private Attributes

std::mutex mutex_
 
std::uint64_t mCounts
 
int mLatencyEvents
 
std::chrono::milliseconds mLatencyMSAvg
 
std::chrono::milliseconds mLatencyMSPeak
 
std::chrono::milliseconds mTargetLatencyAvg
 
std::chrono::milliseconds mTargetLatencyPk
 
UptimeClock::time_point mLastUpdate
 
const beast::Journal j_
 

Detailed Description

Definition at line 36 of file LoadMonitor.h.

Constructor & Destructor Documentation

◆ LoadMonitor()

ripple::LoadMonitor::LoadMonitor ( beast::Journal  j)
explicit

Definition at line 44 of file LoadMonitor.cpp.

Member Function Documentation

◆ addLoadSample()

void ripple::LoadMonitor::addLoadSample ( LoadEvent const &  sample)

Definition at line 101 of file LoadMonitor.cpp.

◆ addSamples()

void ripple::LoadMonitor::addSamples ( int  count,
std::chrono::milliseconds  latency 
)

Definition at line 126 of file LoadMonitor.cpp.

◆ setTargetLatency()

void ripple::LoadMonitor::setTargetLatency ( std::chrono::milliseconds  avg,
std::chrono::milliseconds  pk 
)

Definition at line 143 of file LoadMonitor.cpp.

◆ isOverTarget()

bool ripple::LoadMonitor::isOverTarget ( std::chrono::milliseconds  avg,
std::chrono::milliseconds  peak 
)

Definition at line 152 of file LoadMonitor.cpp.

◆ getStats()

LoadMonitor::Stats ripple::LoadMonitor::getStats ( )

Definition at line 177 of file LoadMonitor.cpp.

◆ isOver()

bool ripple::LoadMonitor::isOver ( )

Definition at line 162 of file LoadMonitor.cpp.

◆ update()

void ripple::LoadMonitor::update ( )
private

Definition at line 63 of file LoadMonitor.cpp.

Member Data Documentation

◆ mutex_

std::mutex ripple::LoadMonitor::mutex_
private

Definition at line 76 of file LoadMonitor.h.

◆ mCounts

std::uint64_t ripple::LoadMonitor::mCounts
private

Definition at line 78 of file LoadMonitor.h.

◆ mLatencyEvents

int ripple::LoadMonitor::mLatencyEvents
private

Definition at line 79 of file LoadMonitor.h.

◆ mLatencyMSAvg

std::chrono::milliseconds ripple::LoadMonitor::mLatencyMSAvg
private

Definition at line 80 of file LoadMonitor.h.

◆ mLatencyMSPeak

std::chrono::milliseconds ripple::LoadMonitor::mLatencyMSPeak
private

Definition at line 81 of file LoadMonitor.h.

◆ mTargetLatencyAvg

std::chrono::milliseconds ripple::LoadMonitor::mTargetLatencyAvg
private

Definition at line 82 of file LoadMonitor.h.

◆ mTargetLatencyPk

std::chrono::milliseconds ripple::LoadMonitor::mTargetLatencyPk
private

Definition at line 83 of file LoadMonitor.h.

◆ mLastUpdate

UptimeClock::time_point ripple::LoadMonitor::mLastUpdate
private

Definition at line 84 of file LoadMonitor.h.

◆ j_

const beast::Journal ripple::LoadMonitor::j_
private

Definition at line 85 of file LoadMonitor.h.