rippled
Loading...
Searching...
No Matches
Classes | Public Member Functions | Private Member Functions | Private Attributes | List of all members
xrpl::LoadMonitor Class Reference

#include <LoadMonitor.h>

Collaboration diagram for xrpl::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
 
beast::Journal const j_
 

Detailed Description

Definition at line 18 of file LoadMonitor.h.

Constructor & Destructor Documentation

◆ LoadMonitor()

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

Definition at line 25 of file LoadMonitor.cpp.

Member Function Documentation

◆ addLoadSample()

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

Definition at line 82 of file LoadMonitor.cpp.

◆ addSamples()

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

Definition at line 107 of file LoadMonitor.cpp.

◆ setTargetLatency()

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

Definition at line 124 of file LoadMonitor.cpp.

◆ isOverTarget()

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

Definition at line 133 of file LoadMonitor.cpp.

◆ getStats()

LoadMonitor::Stats xrpl::LoadMonitor::getStats ( )

Definition at line 158 of file LoadMonitor.cpp.

◆ isOver()

bool xrpl::LoadMonitor::isOver ( )

Definition at line 143 of file LoadMonitor.cpp.

◆ update()

void xrpl::LoadMonitor::update ( )
private

Definition at line 44 of file LoadMonitor.cpp.

Member Data Documentation

◆ mutex_

std::mutex xrpl::LoadMonitor::mutex_
private

Definition at line 58 of file LoadMonitor.h.

◆ mCounts

std::uint64_t xrpl::LoadMonitor::mCounts
private

Definition at line 60 of file LoadMonitor.h.

◆ mLatencyEvents

int xrpl::LoadMonitor::mLatencyEvents
private

Definition at line 61 of file LoadMonitor.h.

◆ mLatencyMSAvg

std::chrono::milliseconds xrpl::LoadMonitor::mLatencyMSAvg
private

Definition at line 62 of file LoadMonitor.h.

◆ mLatencyMSPeak

std::chrono::milliseconds xrpl::LoadMonitor::mLatencyMSPeak
private

Definition at line 63 of file LoadMonitor.h.

◆ mTargetLatencyAvg

std::chrono::milliseconds xrpl::LoadMonitor::mTargetLatencyAvg
private

Definition at line 64 of file LoadMonitor.h.

◆ mTargetLatencyPk

std::chrono::milliseconds xrpl::LoadMonitor::mTargetLatencyPk
private

Definition at line 65 of file LoadMonitor.h.

◆ mLastUpdate

UptimeClock::time_point xrpl::LoadMonitor::mLastUpdate
private

Definition at line 66 of file LoadMonitor.h.

◆ j_

beast::Journal const xrpl::LoadMonitor::j_
private

Definition at line 67 of file LoadMonitor.h.