Make the rpc timeout configurable

pull/6625/head
Sree Kuchibhotla 9 years ago
parent 0b4d1238b8
commit eaa3072744
  1. 14
      test/cpp/interop/metrics_client.cc

@ -42,13 +42,15 @@
#include "test/cpp/util/metrics_server.h" #include "test/cpp/util/metrics_server.h"
#include "test/cpp/util/test_config.h" #include "test/cpp/util/test_config.h"
int kDeadlineSecs = 10;
DEFINE_string(metrics_server_address, "", DEFINE_string(metrics_server_address, "",
"The metrics server addresses in the fomrat <hostname>:<port>"); "The metrics server addresses in the fomrat <hostname>:<port>");
DEFINE_int32(deadline_secs, kDeadlineSecs,
"The deadline (in seconds) for RCP call");
DEFINE_bool(total_only, false, DEFINE_bool(total_only, false,
"If true, this prints only the total value of all gauges"); "If true, this prints only the total value of all gauges");
int kDeadlineSecs = 10;
using grpc::testing::EmptyMessage; using grpc::testing::EmptyMessage;
using grpc::testing::GaugeResponse; using grpc::testing::GaugeResponse;
using grpc::testing::MetricsService; using grpc::testing::MetricsService;
@ -56,12 +58,13 @@ using grpc::testing::MetricsServiceImpl;
// Prints the values of all Gauges (unless total_only is set to 'true' in which // Prints the values of all Gauges (unless total_only is set to 'true' in which
// case this only prints the sum of all gauge values). // case this only prints the sum of all gauge values).
bool PrintMetrics(std::unique_ptr<MetricsService::Stub> stub, bool total_only) { bool PrintMetrics(std::unique_ptr<MetricsService::Stub> stub, bool total_only,
int deadline_secs) {
grpc::ClientContext context; grpc::ClientContext context;
EmptyMessage message; EmptyMessage message;
std::chrono::system_clock::time_point deadline = std::chrono::system_clock::time_point deadline =
std::chrono::system_clock::now() + std::chrono::seconds(kDeadlineSecs); std::chrono::system_clock::now() + std::chrono::seconds(deadline_secs);
context.set_deadline(deadline); context.set_deadline(deadline);
@ -108,7 +111,8 @@ int main(int argc, char** argv) {
std::shared_ptr<grpc::Channel> channel(grpc::CreateChannel( std::shared_ptr<grpc::Channel> channel(grpc::CreateChannel(
FLAGS_metrics_server_address, grpc::InsecureChannelCredentials())); FLAGS_metrics_server_address, grpc::InsecureChannelCredentials()));
if (!PrintMetrics(MetricsService::NewStub(channel), FLAGS_total_only)) { if (!PrintMetrics(MetricsService::NewStub(channel), FLAGS_total_only,
FLAGS_deadline_secs)) {
return 1; return 1;
} }

Loading…
Cancel
Save