diff --git a/source/extensions/filters/http/grpc_stats/grpc_stats_filter.h b/source/extensions/filters/http/grpc_stats/grpc_stats_filter.h index 6afb1861aecea..0734d10e8d3d0 100644 --- a/source/extensions/filters/http/grpc_stats/grpc_stats_filter.h +++ b/source/extensions/filters/http/grpc_stats/grpc_stats_filter.h @@ -24,6 +24,10 @@ struct GrpcStatsObject : public StreamInfo::FilterState::Object { msg->set_response_message_count(response_message_count); return msg; } + + absl::optional serializeAsString() const override { + return absl::StrCat(request_message_count, ",", response_message_count); + } }; class GrpcStatsFilterConfigFactory diff --git a/test/extensions/filters/http/grpc_stats/config_test.cc b/test/extensions/filters/http/grpc_stats/config_test.cc index 68bf0bde27f0c..5a405dbfe8470 100644 --- a/test/extensions/filters/http/grpc_stats/config_test.cc +++ b/test/extensions/filters/http/grpc_stats/config_test.cc @@ -415,6 +415,7 @@ TEST_F(GrpcStatsFilterConfigTest, MessageCounts) { data.serializeAsProto().get()); EXPECT_EQ(2U, filter_object.request_message_count()); EXPECT_EQ(3U, filter_object.response_message_count()); + EXPECT_EQ("2,3", data.serializeAsString().value()); } TEST_F(GrpcStatsFilterConfigTest, UpstreamStats) {