LogRouterStats did not need to be a separate struct
This commit is contained in:
parent
8590b710bf
commit
c91ac03ec6
|
@ -33,21 +33,6 @@
|
|||
#include "flow/Stats.h"
|
||||
#include "flow/actorcompiler.h" // This must be the last #include.
|
||||
|
||||
struct LogRouterStats {
|
||||
CounterCollection cc;
|
||||
Future<Void> logger;
|
||||
|
||||
explicit LogRouterStats(UID id, NotifiedVersion* pVersion, NotifiedVersion* pMinPopped, Version* pMinKnownCommittedVersion, Version* pPoppedVersion)
|
||||
: cc("LogRouterStats", id.toString())
|
||||
{
|
||||
specialCounter(cc, "Version", [pVersion](){return pVersion->get(); });
|
||||
specialCounter(cc, "MinPopped", [pMinPopped](){return pMinPopped->get(); });
|
||||
specialCounter(cc, "MinKnownCommittedVersion", [pMinKnownCommittedVersion](){ return *pMinKnownCommittedVersion; });
|
||||
specialCounter(cc, "PoppedVersion", [pPoppedVersion](){ return *pPoppedVersion; });
|
||||
logger = traceCounters("LogRouterMetrics", id, SERVER_KNOBS->WORKER_LOGGING_INTERVAL, &cc, "LogRouterMetrics");
|
||||
}
|
||||
};
|
||||
|
||||
struct LogRouterData {
|
||||
struct TagData : NonCopyable, public ReferenceCounted<TagData> {
|
||||
std::deque<std::pair<Version, LengthPrefixedStringRef>> version_messages;
|
||||
|
@ -90,7 +75,6 @@ struct LogRouterData {
|
|||
};
|
||||
|
||||
UID dbgid;
|
||||
LogRouterStats stats;
|
||||
Reference<AsyncVar<Reference<ILogSystem>>> logSystem;
|
||||
NotifiedVersion version;
|
||||
NotifiedVersion minPopped;
|
||||
|
@ -103,6 +87,9 @@ struct LogRouterData {
|
|||
LogSet logSet;
|
||||
bool foundEpochEnd;
|
||||
|
||||
CounterCollection cc;
|
||||
Future<Void> logger;
|
||||
|
||||
std::vector<Reference<TagData>> tag_data; //we only store data for the remote tag locality
|
||||
|
||||
Reference<TagData> getTagData(Tag tag) {
|
||||
|
@ -122,7 +109,7 @@ struct LogRouterData {
|
|||
|
||||
LogRouterData(UID dbgid, InitializeLogRouterRequest req) : dbgid(dbgid), routerTag(req.routerTag), logSystem(new AsyncVar<Reference<ILogSystem>>()),
|
||||
version(req.startVersion-1), minPopped(0), startVersion(req.startVersion), allowPops(false), minKnownCommittedVersion(0), poppedVersion(0), foundEpochEnd(false),
|
||||
stats(dbgid, &version, &minPopped, &minKnownCommittedVersion, &poppedVersion) {
|
||||
cc("LogRouter", dbgid.toString()) {
|
||||
//setup just enough of a logSet to be able to call getPushLocations
|
||||
logSet.logServers.resize(req.tLogLocalities.size());
|
||||
logSet.tLogPolicy = req.tLogPolicy;
|
||||
|
@ -136,6 +123,12 @@ struct LogRouterData {
|
|||
tagData = createTagData(tag, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
specialCounter(cc, "Version", [this](){return this->version.get(); });
|
||||
specialCounter(cc, "MinPopped", [this](){return this->minPopped.get(); });
|
||||
specialCounter(cc, "MinKnownCommittedVersion", [this](){ return this->minKnownCommittedVersion; });
|
||||
specialCounter(cc, "PoppedVersion", [this](){ return this->poppedVersion; });
|
||||
logger = traceCounters("LogRouterMetrics", dbgid, SERVER_KNOBS->WORKER_LOGGING_INTERVAL, &cc, "LogRouterMetrics");
|
||||
}
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue