diff options
Diffstat (limited to 'test/cpp/qps/report.h')
-rw-r--r-- | test/cpp/qps/report.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/test/cpp/qps/report.h b/test/cpp/qps/report.h index faf87ff060..1749be98c6 100644 --- a/test/cpp/qps/report.h +++ b/test/cpp/qps/report.h @@ -42,6 +42,9 @@ #include "test/cpp/qps/driver.h" +#include <grpc++/channel.h> +#include "src/proto/grpc/testing/services.grpc.pb.h" + namespace grpc { namespace testing { @@ -124,6 +127,21 @@ class JsonReporter : public Reporter { const string report_file_; }; +class RpcReporter : public Reporter { + public: + RpcReporter(const string& name, std::shared_ptr<grpc::Channel> channel) + : Reporter(name), stub_(ReportQpsScenarioService::NewStub(channel)) {} + + private: + void ReportQPS(const ScenarioResult& result) override; + void ReportQPSPerCore(const ScenarioResult& result) override; + void ReportLatency(const ScenarioResult& result) override; + void ReportTimes(const ScenarioResult& result) override; + void ReportCpuUsage(const ScenarioResult& result) override; + + std::unique_ptr<ReportQpsScenarioService::Stub> stub_; +}; + } // namespace testing } // namespace grpc |