improve printSnapshotTeamsInfo (#10999)

This commit is contained in:
Zhe Wang 2023-10-23 08:54:07 -07:00 committed by GitHub
parent 991a02579a
commit 4695bdfbbf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 34 additions and 1 deletions

View File

@ -3287,12 +3287,25 @@ public:
state int i;
state std::map<UID, Reference<TCServerInfo>>::iterator server = server_info.begin();
for (i = 0; i < server_info.size(); i++) {
auto serverStats = server->second->getStorageStats();
TraceEvent("ServerInfo", self->getDistributorId())
.detail("ServerInfoIndex", i)
.detail("ServerID", server->first.toString())
.detail("ServerTeamOwned", server->second->getTeams().size())
.detail("MachineID", server->second->machine->machineID.contents().toString())
.detail("Primary", self->isPrimary());
.detail("Primary", self->isPrimary())
.detail("IsInDesiredDC", server->second->isInDesiredDC())
.detail("DataInFlightToServer", server->second->getDataInFlightToServer())
.detail("ReadInFlightToServer", server->second->getReadInFlightToServer())
.detail("IsWigglePausedServer", server->second->isWigglePausedServer())
.detail("SpaceBytesAvailable",
server->second->metricsPresent() ? server->second->spaceBytes().first : -1)
.detail("SpaceBytesCapacity",
server->second->metricsPresent() ? server->second->spaceBytes().second : -1)
.detail("LoadBytes", server->second->metricsPresent() ? server->second->loadBytes() : -1)
.detail("CpuUsage", serverStats.present() ? serverStats.get().cpuUsage : 100.0);
// If storage server hasn't gotten the health metrics updated, we assume it's too busy to respond so
// return 100.0;
server++;
if (++traceEventsPrinted % SERVER_KNOBS->DD_TEAMS_INFO_PRINT_YIELD_COUNT == 0) {
wait(yield());
@ -3317,6 +3330,14 @@ public:
auto it = server_status.find(uid);
if (it != server_status.end()) {
e.detail("Healthy", !it->second.isUnhealthy());
e.detail("IsWiggling", it->second.isWiggling);
e.detail("IsFailed", it->second.isFailed);
e.detail("IsUndesired", it->second.isUndesired);
e.detail("IsWrongConfiguration", it->second.isWrongConfiguration);
e.detail("Initialized", it->second.initialized);
e.detail("ExcludeOnRecruit", it->second.excludeOnRecruit());
e.detail("IsUnhealthy", it->second.isUnhealthy());
e.detail("Locality", it->second.locality.toString());
}
server++;
@ -3339,6 +3360,18 @@ public:
.detail("MemberIDs", team->getServerIDsStr())
.detail("Primary", self->isPrimary())
.detail("TeamID", team->getTeamID())
.detail("InflightDataToTeam", team->getDataInFlightToTeam())
.detail("LoadBytes", team->getLoadBytes())
.detail("ReadLoad", team->getReadLoad())
.detail("AverageCPU", team->getAverageCPU())
.detail("ReadInFlightToTeam", team->getReadInFlightToTeam())
.detail("MinAvailableSpace", team->getMinAvailableSpace())
.detail("MinAvailableSpaceRatio", team->getMinAvailableSpaceRatio())
.detail("IsOptimal", team->isOptimal())
.detail("IsWrongConfiguration", team->isWrongConfiguration())
.detail("IsHealthy", team->isHealthy())
.detail("Priority", team->getPriority())
.detail("HasWigglePausedServer", team->hasWigglePausedServer())
.detail("Shards",
self->shardsAffectedByTeamFailure
->getShardsFor(ShardsAffectedByTeamFailure::Team(team->getServerIDs(), self->primary))