xrpld
Loading...
Searching...
No Matches
LoadMonitor.h
1#pragma once
2
3#include <xrpl/basics/UptimeClock.h>
4#include <xrpl/beast/utility/Journal.h>
5#include <xrpl/core/LoadEvent.h>
6
7#include <chrono>
8#include <mutex>
9
10namespace xrpl {
11
12// Monitors load levels and response times
13
14// VFALCO TODO Rename this. Having both LoadManager and LoadMonitor is
15// confusing.
16//
66
67} // namespace xrpl
A generic endpoint for log messages.
Definition Journal.h:38
std::chrono::milliseconds latencyMSPeak_
Definition LoadMonitor.h:60
void addLoadSample(LoadEvent const &sample)
std::uint64_t counts_
Definition LoadMonitor.h:57
void setTargetLatency(std::chrono::milliseconds avg, std::chrono::milliseconds pk)
std::chrono::milliseconds targetLatencyAvg_
Definition LoadMonitor.h:61
bool isOverTarget(std::chrono::milliseconds avg, std::chrono::milliseconds peak)
void addSamples(int count, std::chrono::milliseconds latency)
std::mutex mutex_
Definition LoadMonitor.h:55
LoadMonitor(beast::Journal j)
std::chrono::milliseconds latencyMSAvg_
Definition LoadMonitor.h:59
UptimeClock::time_point lastUpdate_
Definition LoadMonitor.h:63
beast::Journal const j_
Definition LoadMonitor.h:64
std::chrono::milliseconds targetLatencyPk_
Definition LoadMonitor.h:62
std::chrono::time_point< UptimeClock > time_point
Definition UptimeClock.h:23
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
Definition algorithm.h:5
std::chrono::milliseconds latencyPeak
Definition LoadMonitor.h:41
std::chrono::milliseconds latencyAvg
Definition LoadMonitor.h:40