fix unitest crash

Former-commit-id: cf6b44ec306f20ab56aa7fecf7b3e9efcb291563
pull/191/head
starlord 2019-08-31 16:52:49 +08:00
parent 08ea0c35ff
commit 03bcdfe4f4
1 changed files with 24 additions and 21 deletions
cpp/src/metrics

View File

@ -37,21 +37,22 @@ public:
} }
~CollectInsertMetrics() { ~CollectInsertMetrics() {
auto end_time = METRICS_NOW_TIME; if(n_ > 0) {
auto total_time = METRICS_MICROSECONDS(start_time_, end_time); auto end_time = METRICS_NOW_TIME;
double avg_time = total_time / n_; auto total_time = METRICS_MICROSECONDS(start_time_, end_time);
for (int i = 0; i < n_; ++i) { double avg_time = total_time / n_;
Metrics::GetInstance().AddVectorsDurationHistogramOberve(avg_time); for (int i = 0; i < n_; ++i) {
} Metrics::GetInstance().AddVectorsDurationHistogramOberve(avg_time);
}
// server::Metrics::GetInstance().add_vector_duration_seconds_quantiles().Observe((average_time)); // server::Metrics::GetInstance().add_vector_duration_seconds_quantiles().Observe((average_time));
if (status_.ok()) { if (status_.ok()) {
server::Metrics::GetInstance().AddVectorsSuccessTotalIncrement(n_); server::Metrics::GetInstance().AddVectorsSuccessTotalIncrement(n_);
server::Metrics::GetInstance().AddVectorsSuccessGaugeSet(n_); server::Metrics::GetInstance().AddVectorsSuccessGaugeSet(n_);
} } else {
else { server::Metrics::GetInstance().AddVectorsFailTotalIncrement(n_);
server::Metrics::GetInstance().AddVectorsFailTotalIncrement(n_); server::Metrics::GetInstance().AddVectorsFailGaugeSet(n_);
server::Metrics::GetInstance().AddVectorsFailGaugeSet(n_); }
} }
} }
@ -69,14 +70,16 @@ public:
} }
~CollectQueryMetrics() { ~CollectQueryMetrics() {
auto end_time = METRICS_NOW_TIME; if(nq_ > 0) {
auto total_time = METRICS_MICROSECONDS(start_time_, end_time); auto end_time = METRICS_NOW_TIME;
for (int i = 0; i < nq_; ++i) { auto total_time = METRICS_MICROSECONDS(start_time_, end_time);
server::Metrics::GetInstance().QueryResponseSummaryObserve(total_time); for (int i = 0; i < nq_; ++i) {
server::Metrics::GetInstance().QueryResponseSummaryObserve(total_time);
}
auto average_time = total_time / nq_;
server::Metrics::GetInstance().QueryVectorResponseSummaryObserve(average_time, nq_);
server::Metrics::GetInstance().QueryVectorResponsePerSecondGaugeSet(double(nq_) / total_time);
} }
auto average_time = total_time / nq_;
server::Metrics::GetInstance().QueryVectorResponseSummaryObserve(average_time, nq_);
server::Metrics::GetInstance().QueryVectorResponsePerSecondGaugeSet(double (nq_) / total_time);
} }
private: private: