20 #include <ripple/basics/Log.h>
21 #include <ripple/basics/UptimeClock.h>
22 #include <ripple/core/LoadMonitor.h>
24 #include <date/date.h>
40 : count(0), latencyAvg(0), latencyPeak(0), isOverloaded(false)
67 using namespace std::chrono_literals;
109 auto const latency = total < 2ms ? 0ms : date::round<milliseconds>(total);
114 JLOG(mj) <<
"Job: " << s.
name()
115 <<
" run: " << date::round<milliseconds>(s.
runTime()).count()
117 <<
" wait: " << date::round<milliseconds>(s.
waitTime()).count()
159 using namespace std::chrono_literals;
182 using namespace std::chrono_literals;
Tracks program uptime to seconds precision.
void addSamples(int count, std::chrono::milliseconds latency)
std::chrono::milliseconds mTargetLatencyAvg
UptimeClock::time_point mLastUpdate
bool isOverTarget(std::chrono::milliseconds avg, std::chrono::milliseconds peak)
std::chrono::steady_clock::duration waitTime() const
A generic endpoint for log messages.
std::string const & name() const
std::chrono::steady_clock::duration runTime() const
LoadMonitor(beast::Journal j)
void setTargetLatency(std::chrono::milliseconds avg, std::chrono::milliseconds pk)
std::chrono::milliseconds mLatencyMSAvg
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
std::chrono::milliseconds mLatencyMSPeak
std::chrono::milliseconds mTargetLatencyPk
std::chrono::milliseconds latencyAvg
std::chrono::milliseconds latencyPeak
void addLoadSample(LoadEvent const &sample)