diff options
author | Yash Tibrewal <yashkt@google.com> | 2024-02-09 09:25:20 -0800 |
---|---|---|
committer | Copybara-Service <copybara-worker@google.com> | 2024-02-09 09:28:18 -0800 |
commit | 2999332d64c68181bb7196b576b01cf7fd5d1a9a (patch) | |
tree | d6ffec2c76d19e65cbcb3e08420eb351f8a572a1 | |
parent | f27fb07c842639f62ee2a8540783b8d2083d6951 (diff) | |
download | grpc-grpc-2999332d64c68181bb7196b576b01cf7fd5d1a9a.tar.gz |
[CSM] De-experimentalize CsmObservability API (#35836)
Closes #35836
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35836 from yashykt:DeexperimentalizeCsmObs 1711e6d9b08199f92c45e0b5fdd69372051eb632
PiperOrigin-RevId: 605650394
-rw-r--r-- | examples/cpp/csm/csm_greeter_client.cc | 4 | ||||
-rw-r--r-- | examples/cpp/csm/csm_greeter_server.cc | 2 | ||||
-rw-r--r-- | include/grpcpp/ext/csm_observability.h | 10 | ||||
-rw-r--r-- | src/cpp/ext/csm/csm_observability.cc | 3 | ||||
-rw-r--r-- | test/cpp/ext/csm/csm_observability_test.cc | 18 | ||||
-rw-r--r-- | test/cpp/interop/xds_interop_client.cc | 6 | ||||
-rw-r--r-- | test/cpp/interop/xds_interop_server.cc | 6 |
7 files changed, 26 insertions, 23 deletions
diff --git a/examples/cpp/csm/csm_greeter_client.cc b/examples/cpp/csm/csm_greeter_client.cc index 3aba705856..a689fdfa0d 100644 --- a/examples/cpp/csm/csm_greeter_client.cc +++ b/examples/cpp/csm/csm_greeter_client.cc @@ -158,7 +158,7 @@ class GreeterClient { absl::optional<Cookie> cookie_from_server_; }; -absl::StatusOr<grpc::experimental::CsmObservability> InitializeObservability() { +absl::StatusOr<grpc::CsmObservability> InitializeObservability() { opentelemetry::exporter::metrics::PrometheusExporterOptions opts; // default was "localhost:9464" which causes connection issue across GKE pods opts.url = "0.0.0.0:9464"; @@ -167,7 +167,7 @@ absl::StatusOr<grpc::experimental::CsmObservability> InitializeObservability() { auto meter_provider = std::make_shared<opentelemetry::sdk::metrics::MeterProvider>(); meter_provider->AddMetricReader(std::move(prometheus_exporter)); - return grpc::experimental::CsmObservabilityBuilder() + return grpc::CsmObservabilityBuilder() .SetMeterProvider(std::move(meter_provider)) .BuildAndRegister(); } diff --git a/examples/cpp/csm/csm_greeter_server.cc b/examples/cpp/csm/csm_greeter_server.cc index 0e6d24bfd1..c5d7857e7f 100644 --- a/examples/cpp/csm/csm_greeter_server.cc +++ b/examples/cpp/csm/csm_greeter_server.cc @@ -108,7 +108,7 @@ int main(int argc, char** argv) { auto meter_provider = std::make_shared<opentelemetry::sdk::metrics::MeterProvider>(); meter_provider->AddMetricReader(std::move(prometheus_exporter)); - auto observability = grpc::experimental::CsmObservabilityBuilder() + auto observability = grpc::CsmObservabilityBuilder() .SetMeterProvider(std::move(meter_provider)) .BuildAndRegister(); if (!observability.ok()) { diff --git a/include/grpcpp/ext/csm_observability.h b/include/grpcpp/ext/csm_observability.h index 86463acf5f..dcb7bd8c29 100644 --- a/include/grpcpp/ext/csm_observability.h +++ b/include/grpcpp/ext/csm_observability.h @@ -36,8 +36,6 @@ namespace internal { class OpenTelemetryPluginBuilderImpl; } // namespace internal -namespace experimental { - // This object maintains state around the registered CsmObservability plugin. // The application is responsible for retaining this object until it has closed // all channels and servers that are recording metrics. @@ -102,7 +100,15 @@ class CsmObservabilityBuilder { std::unique_ptr<grpc::internal::OpenTelemetryPluginBuilderImpl> builder_; }; +namespace experimental { +// TODO(yashykt): Remove this once no longer needed. +using CsmObservability GRPC_DEPRECATED("Use grpc::CsmObservability instead.") = + grpc::CsmObservability; +using CsmObservabilityBuilder GRPC_DEPRECATED( + "Use grpc::CsmObservabilityBuilder instead.") = + grpc::CsmObservabilityBuilder; } // namespace experimental + } // namespace grpc #endif // GRPCPP_EXT_CSM_OBSERVABILITY_H diff --git a/src/cpp/ext/csm/csm_observability.cc b/src/cpp/ext/csm/csm_observability.cc index 0b503455ef..f400a91922 100644 --- a/src/cpp/ext/csm/csm_observability.cc +++ b/src/cpp/ext/csm/csm_observability.cc @@ -100,8 +100,6 @@ class CsmOpenTelemetryPluginOption } // namespace internal -namespace experimental { - // // CsmObservability // @@ -164,5 +162,4 @@ absl::StatusOr<CsmObservability> CsmObservabilityBuilder::BuildAndRegister() { return CsmObservability(); } -} // namespace experimental } // namespace grpc diff --git a/test/cpp/ext/csm/csm_observability_test.cc b/test/cpp/ext/csm/csm_observability_test.cc index 34af9edd58..63c2af641c 100644 --- a/test/cpp/ext/csm/csm_observability_test.cc +++ b/test/cpp/ext/csm/csm_observability_test.cc @@ -32,7 +32,7 @@ namespace testing { namespace { TEST(CsmObservabilityBuilderTest, Basic) { - EXPECT_EQ(experimental::CsmObservabilityBuilder().BuildAndRegister().status(), + EXPECT_EQ(CsmObservabilityBuilder().BuildAndRegister().status(), absl::OkStatus()); } @@ -41,7 +41,7 @@ TEST(GsmDependencyTest, GoogleCloudOpenTelemetryDependency) { } TEST(CsmChannelTargetSelectorTest, NonXdsTargets) { - auto obs = experimental::CsmObservabilityBuilder().BuildAndRegister(); + auto obs = CsmObservabilityBuilder().BuildAndRegister(); EXPECT_FALSE(internal::CsmChannelTargetSelector("foo.bar.google.com")); EXPECT_FALSE(internal::CsmChannelTargetSelector("dns:///foo.bar.google.com")); EXPECT_FALSE( @@ -51,24 +51,24 @@ TEST(CsmChannelTargetSelectorTest, NonXdsTargets) { } TEST(CsmChannelTargetSelectorTest, XdsTargets) { - auto obs = experimental::CsmObservabilityBuilder().BuildAndRegister(); + auto obs = CsmObservabilityBuilder().BuildAndRegister(); EXPECT_TRUE(internal::CsmChannelTargetSelector("xds:///foo")); EXPECT_TRUE(internal::CsmChannelTargetSelector("xds:///foo.bar")); } TEST(CsmChannelTargetSelectorTest, XdsTargetsWithNonTDAuthority) { - auto obs = experimental::CsmObservabilityBuilder().BuildAndRegister(); + auto obs = CsmObservabilityBuilder().BuildAndRegister(); EXPECT_FALSE(internal::CsmChannelTargetSelector("xds://authority/foo")); } TEST(CsmChannelTargetSelectorTest, XdsTargetsWithTDAuthority) { - auto obs = experimental::CsmObservabilityBuilder().BuildAndRegister(); + auto obs = CsmObservabilityBuilder().BuildAndRegister(); EXPECT_TRUE(internal::CsmChannelTargetSelector( "xds://traffic-director-global.xds.googleapis.com/foo")); } TEST(CsmChannelTargetSelectorTest, CsmObservabilityOutOfScope) { - { auto obs = experimental::CsmObservabilityBuilder().BuildAndRegister(); } + { auto obs = CsmObservabilityBuilder().BuildAndRegister(); } // When CsmObservability goes out of scope, the target selector should return // false as well. EXPECT_FALSE(internal::CsmChannelTargetSelector("foo.bar.google.com")); @@ -78,18 +78,18 @@ TEST(CsmChannelTargetSelectorTest, CsmObservabilityOutOfScope) { } TEST(CsmServerSelectorTest, ChannelArgsWithoutXdsServerArg) { - auto obs = experimental::CsmObservabilityBuilder().BuildAndRegister(); + auto obs = CsmObservabilityBuilder().BuildAndRegister(); EXPECT_FALSE(internal::CsmServerSelector(grpc_core::ChannelArgs())); } TEST(CsmServerSelectorTest, ChannelArgsWithXdsServerArg) { - auto obs = experimental::CsmObservabilityBuilder().BuildAndRegister(); + auto obs = CsmObservabilityBuilder().BuildAndRegister(); EXPECT_TRUE(internal::CsmServerSelector( grpc_core::ChannelArgs().Set(GRPC_ARG_XDS_ENABLED_SERVER, true))); } TEST(CsmServerSelectorTest, CsmObservabilityOutOfScope) { - { auto obs = experimental::CsmObservabilityBuilder().BuildAndRegister(); } + { auto obs = CsmObservabilityBuilder().BuildAndRegister(); } // When CsmObservability goes out of scope, the server selector should return // false as well. EXPECT_FALSE(internal::CsmServerSelector(grpc_core::ChannelArgs())); diff --git a/test/cpp/interop/xds_interop_client.cc b/test/cpp/interop/xds_interop_client.cc index 76dab581fa..d5c97c2ddc 100644 --- a/test/cpp/interop/xds_interop_client.cc +++ b/test/cpp/interop/xds_interop_client.cc @@ -427,7 +427,7 @@ void RunTestLoop(std::chrono::duration<double> duration_per_query, GPR_UNREACHABLE_CODE(thread.join()); } -grpc::experimental::CsmObservability EnableCsmObservability() { +grpc::CsmObservability EnableCsmObservability() { gpr_log(GPR_DEBUG, "Registering Prometheus exporter"); opentelemetry::exporter::metrics::PrometheusExporterOptions opts; // default was "localhost:9464" which causes connection issue across GKE @@ -438,7 +438,7 @@ grpc::experimental::CsmObservability EnableCsmObservability() { auto meter_provider = std::make_shared<opentelemetry::sdk::metrics::MeterProvider>(); meter_provider->AddMetricReader(std::move(prometheus_exporter)); - auto observability = grpc::experimental::CsmObservabilityBuilder() + auto observability = grpc::CsmObservabilityBuilder() .SetMeterProvider(std::move(meter_provider)) .BuildAndRegister(); assert(observability.ok()); @@ -553,7 +553,7 @@ int main(int argc, char** argv) { } BuildRpcConfigsFromFlags(&rpc_config_queue); - grpc::experimental::CsmObservability observability; + grpc::CsmObservability observability; if (absl::GetFlag(FLAGS_enable_csm_observability)) { observability = EnableCsmObservability(); } diff --git a/test/cpp/interop/xds_interop_server.cc b/test/cpp/interop/xds_interop_server.cc index 80637dfa05..6de9c18042 100644 --- a/test/cpp/interop/xds_interop_server.cc +++ b/test/cpp/interop/xds_interop_server.cc @@ -43,7 +43,7 @@ ABSL_FLAG(bool, secure_mode, false, ABSL_FLAG(bool, enable_csm_observability, false, "Whether to enable CSM Observability"); -grpc::experimental::CsmObservability EnableCsmObservability() { +grpc::CsmObservability EnableCsmObservability() { gpr_log(GPR_DEBUG, "Registering Prometheus exporter"); opentelemetry::exporter::metrics::PrometheusExporterOptions opts; // default was "localhost:9464" which causes connection issue across GKE @@ -54,7 +54,7 @@ grpc::experimental::CsmObservability EnableCsmObservability() { auto meter_provider = std::make_shared<opentelemetry::sdk::metrics::MeterProvider>(); meter_provider->AddMetricReader(std::move(prometheus_exporter)); - auto observability = grpc::experimental::CsmObservabilityBuilder() + auto observability = grpc::CsmObservabilityBuilder() .SetMeterProvider(std::move(meter_provider)) .BuildAndRegister(); assert(observability.ok()); @@ -81,7 +81,7 @@ int main(int argc, char** argv) { } grpc::EnableDefaultHealthCheckService(false); bool enable_csm_observability = absl::GetFlag(FLAGS_enable_csm_observability); - grpc::experimental::CsmObservability observability; + grpc::CsmObservability observability; if (enable_csm_observability) { observability = EnableCsmObservability(); } |