Go to the documentation of this file.
29 #include "absl/strings/str_cat.h"
30 #include "absl/strings/strip.h"
65 #ifdef GRPC_XDS_USER_AGENT_NAME_SUFFIX
66 #define GRPC_XDS_USER_AGENT_NAME_SUFFIX_STRING \
67 " " GRPC_XDS_USER_AGENT_NAME_SUFFIX
69 #define GRPC_XDS_USER_AGENT_NAME_SUFFIX_STRING ""
74 #ifdef GRPC_XDS_USER_AGENT_VERSION_SUFFIX
75 #define GRPC_XDS_USER_AGENT_VERSION_SUFFIX_STRING \
76 " " GRPC_XDS_USER_AGENT_VERSION_SUFFIX
78 #define GRPC_XDS_USER_AGENT_VERSION_SUFFIX_STRING ""
84 certificate_provider_definition_map,
89 certificate_provider_definition_map_(certificate_provider_definition_map),
117 void PopulateMetadata(
const XdsEncodingContext&
context,
128 void PopulateMetadataValue(
const XdsEncodingContext&
context,
130 switch (
value.type()) {
136 value_pb, strtod(
value.string_value().c_str(),
nullptr));
151 PopulateMetadata(
context, struct_value,
value.object_value());
157 PopulateListValue(
context, list_value,
value.array_value());
170 if (val)
byte |= 0x80U;
179 static const uint8_t kDelimitedWireType = 2;
180 return EncodeTag(field_number, kDelimitedWireType) +
184 void PopulateBuildVersion(
const XdsEncodingContext&
context,
187 std::string encoded_build_version = EncodeStringField(5, build_version);
193 encoded_build_version.size(),
context.arena);
196 void PopulateNode(
const XdsEncodingContext&
context,
202 if (node !=
nullptr) {
203 if (!node->id.empty()) {
207 if (!node->cluster.empty()) {
211 if (!node->metadata.object_value().empty()) {
216 if (!node->locality_region.empty() || !node->locality_zone.empty() ||
217 !node->locality_sub_zone.empty()) {
220 if (!node->locality_region.empty()) {
224 if (!node->locality_zone.empty()) {
228 if (!node->locality_sub_zone.empty()) {
235 PopulateBuildVersion(
context, node_msg, build_version);
247 void MaybeLogDiscoveryRequest(
248 const XdsEncodingContext&
context,
262 const XdsEncodingContext&
context,
264 size_t output_length;
276 bool populate_node) {
298 if (!nonce.
empty()) {
332 for (
const std::string& resource_name : resource_names) {
342 void MaybeLogDiscoveryResponse(
384 "type.googleapis.com/"));
389 size_t num_resources;
393 fields.num_resources = num_resources;
397 for (
size_t i = 0;
i < num_resources; ++
i) {
400 "type.googleapis.com/");
404 if (
type_url ==
"envoy.api.v2.Resource" ||
405 type_url ==
"envoy.service.discovery.v3.Resource") {
407 serialized_resource.
data(), serialized_resource.
size(),
arena.ptr());
408 if (resource_wrapper ==
nullptr) {
410 "Can't decode Resource proto wrapper");
412 const auto* resource =
416 "type.googleapis.com/");
417 serialized_resource =
427 void MaybeLogLrsRequest(
442 const XdsEncodingContext&
context,
444 size_t output_length;
481 void LocalityStatsPopulate(
490 if (!locality_name.
region().empty()) {
494 if (!locality_name.
zone().empty()) {
498 if (!locality_name.
sub_zone().empty()) {
514 const XdsClusterLocalityStats::BackendMetric& metric_value =
p.second;
521 load_metric, metric_value.num_requests_finished_with_metric);
523 load_metric, metric_value.total_metric_value);
545 for (
auto& p : cluster_load_report_map) {
564 const auto& snapshot = p.second;
567 cluster_stats,
arena.ptr());
568 LocalityStatsPopulate(
context, locality_stats, locality_name, snapshot);
571 uint64_t total_dropped_requests = 0;
577 cluster_stats,
arena.ptr());
581 dropped_requests,
count);
582 total_dropped_requests +=
count;
587 cluster_stats, total_dropped_requests);
592 cluster_stats,
arena.ptr());
601 bool* send_all_clusters,
602 std::set<std::string>* cluster_names,
603 Duration* load_reporting_interval) {
611 if (decoded_response ==
nullptr) {
617 *send_all_clusters =
true;
624 for (
size_t i = 0;
i <
size; ++
i) {
673 std::vector<std::string> type_url_storage;
674 for (
const auto& p : resource_type_metadata_map) {
677 type_url_storage.emplace_back(
679 for (
const auto& q : resource_metadata_map) {
691 if (!
metadata.serialized_proto.empty()) {
705 auto* update_failure_state =
708 update_failure_state,
711 update_failure_state,
714 update_failure_state,
717 entry, update_failure_state);
722 size_t output_length;
724 client_config,
arena.ptr(), &output_length);
struct google_rpc_Status google_rpc_Status
std::vector< Json > Array
UPB_INLINE struct envoy_config_endpoint_v3_EndpointLoadMetricStats * envoy_config_endpoint_v3_UpstreamLocalityStats_add_load_metric_stats(envoy_config_endpoint_v3_UpstreamLocalityStats *msg, upb_Arena *arena)
const std::string & sub_zone() const
Status InvalidArgumentError(absl::string_view message)
UPB_INLINE upb_StringView const * envoy_service_load_stats_v3_LoadStatsResponse_clusters(const envoy_service_load_stats_v3_LoadStatsResponse *msg, size_t *len)
UPB_INLINE struct google_rpc_Status * envoy_service_discovery_v3_DiscoveryRequest_mutable_error_detail(envoy_service_discovery_v3_DiscoveryRequest *msg, upb_Arena *arena)
UPB_INLINE bool envoy_service_discovery_v3_DiscoveryRequest_add_resource_names(envoy_service_discovery_v3_DiscoveryRequest *msg, upb_StringView val, upb_Arena *arena)
UPB_INLINE void envoy_config_endpoint_v3_EndpointLoadMetricStats_set_total_metric_value(envoy_config_endpoint_v3_EndpointLoadMetricStats *msg, double value)
UPB_INLINE void envoy_service_status_v3_ClientConfig_GenericXdsConfig_set_error_state(envoy_service_status_v3_ClientConfig_GenericXdsConfig *msg, struct envoy_admin_v3_UpdateFailureState *value)
XdsClusterDropStats::Snapshot dropped_requests
struct envoy_service_discovery_v3_DiscoveryResponse envoy_service_discovery_v3_DiscoveryResponse
UPB_INLINE void google_protobuf_Timestamp_set_seconds(google_protobuf_Timestamp *msg, int64_t value)
UPB_INLINE void google_protobuf_Value_set_number_value(google_protobuf_Value *msg, double value)
std::string StrCat(const AlphaNum &a, const AlphaNum &b)
const std::string & region() const
UPB_INLINE struct google_protobuf_Struct * google_protobuf_Value_mutable_struct_value(google_protobuf_Value *msg, upb_Arena *arena)
GPRAPI void GPRAPI int gpr_should_log(gpr_log_severity severity)
grpc_slice CreateLrsRequest(ClusterLoadReportMap cluster_load_report_map)
UPB_INLINE envoy_service_status_v3_ClientConfig * envoy_service_status_v3_ClientConfig_new(upb_Arena *arena)
UPB_INLINE upb_StringView envoy_service_discovery_v3_DiscoveryResponse_version_info(const envoy_service_discovery_v3_DiscoveryResponse *msg)
UPB_INLINE void envoy_config_core_v3_Node_set_user_agent_version(envoy_config_core_v3_Node *msg, upb_StringView value)
UPB_INLINE const struct google_protobuf_Any * envoy_service_discovery_v3_Resource_resource(const envoy_service_discovery_v3_Resource *msg)
UPB_INLINE void envoy_service_status_v3_ClientConfig_GenericXdsConfig_set_client_status(envoy_service_status_v3_ClientConfig_GenericXdsConfig *msg, int32_t value)
UPB_INLINE void envoy_config_core_v3_Node_set_cluster(envoy_config_core_v3_Node *msg, upb_StringView value)
UPB_INLINE envoy_service_load_stats_v3_LoadStatsRequest * envoy_service_load_stats_v3_LoadStatsRequest_new(upb_Arena *arena)
UPB_INLINE void envoy_admin_v3_UpdateFailureState_set_details(envoy_admin_v3_UpdateFailureState *msg, upb_StringView value)
const std::string & zone() const
const std::string user_agent_name_
uint64_t total_error_requests
UPB_INLINE struct google_protobuf_ListValue * google_protobuf_Value_mutable_list_value(google_protobuf_Value *msg, upb_Arena *arena)
upb_StringView StdStringToUpbString(const T &str)
UPB_INLINE struct envoy_service_status_v3_ClientConfig_GenericXdsConfig * envoy_service_status_v3_ClientConfig_add_generic_xds_configs(envoy_service_status_v3_ClientConfig *msg, upb_Arena *arena)
UPB_INLINE void envoy_config_endpoint_v3_EndpointLoadMetricStats_set_metric_name(envoy_config_endpoint_v3_EndpointLoadMetricStats *msg, upb_StringView value)
std::unique_ptr< SubProcess > client_
UPB_INLINE void envoy_config_endpoint_v3_ClusterStats_DroppedRequests_set_dropped_count(envoy_config_endpoint_v3_ClusterStats_DroppedRequests *msg, uint64_t value)
UPB_INLINE void envoy_config_endpoint_v3_ClusterStats_set_cluster_service_name(envoy_config_endpoint_v3_ClusterStats *msg, upb_StringView value)
ABSL_MUST_USE_RESULT absl::string_view StripPrefix(absl::string_view str, absl::string_view prefix)
UPB_INLINE void google_protobuf_Any_set_type_url(google_protobuf_Any *msg, upb_StringView value)
@ GRPC_STATUS_INVALID_ARGUMENT
uint64_t uncategorized_drops
#define GRPC_TRACE_FLAG_ENABLED(f)
CategorizedDropsMap categorized_drops
struct envoy_config_endpoint_v3_UpstreamLocalityStats envoy_config_endpoint_v3_UpstreamLocalityStats
UPB_INLINE struct google_protobuf_Value * google_protobuf_ListValue_add_values(google_protobuf_ListValue *msg, upb_Arena *arena)
#define GRPC_XDS_USER_AGENT_VERSION_SUFFIX_STRING
grpc_core::ScopedArenaPtr arena
std::map< std::string, PluginDefinition > PluginDefinitionMap
UPB_INLINE void envoy_config_endpoint_v3_ClusterStats_set_cluster_name(envoy_config_endpoint_v3_ClusterStats *msg, upb_StringView value)
UPB_INLINE const struct google_protobuf_Any *const * envoy_service_discovery_v3_DiscoveryResponse_resources(const envoy_service_discovery_v3_DiscoveryResponse *msg, size_t *len)
std::string UpbStringToStdString(const upb_StringView &str)
struct google_protobuf_Any google_protobuf_Any
UPB_INLINE envoy_service_load_stats_v3_LoadStatsResponse * envoy_service_load_stats_v3_LoadStatsResponse_parse(const char *buf, size_t size, upb_Arena *arena)
XdsApi(XdsClient *client, TraceFlag *tracer, const XdsBootstrap::Node *node, const CertificateProviderStore::PluginDefinitionMap *map, upb::SymbolTable *symtab)
std::map< absl::string_view, ResourceMetadataMap > ResourceTypeMetadataMap
UPB_INLINE char * envoy_service_load_stats_v3_LoadStatsRequest_serialize(const envoy_service_load_stats_v3_LoadStatsRequest *msg, upb_Arena *arena, size_t *len)
UPB_INLINE void envoy_config_endpoint_v3_ClusterStats_DroppedRequests_set_category(envoy_config_endpoint_v3_ClusterStats_DroppedRequests *msg, upb_StringView value)
uint64_t total_successful_requests
std::unique_ptr< Server > server
UPB_INLINE void envoy_config_core_v3_Node_set_user_agent_name(envoy_config_core_v3_Node *msg, upb_StringView value)
const GRPCAPI char * grpc_version_string(void)
std::string AssembleClientConfig(const ResourceTypeMetadataMap &resource_type_metadata_map)
struct envoy_config_endpoint_v3_EndpointLoadMetricStats envoy_config_endpoint_v3_EndpointLoadMetricStats
UPB_INLINE void envoy_service_status_v3_ClientConfig_GenericXdsConfig_set_type_url(envoy_service_status_v3_ClientConfig_GenericXdsConfig *msg, upb_StringView value)
UPB_INLINE void envoy_service_status_v3_ClientConfig_GenericXdsConfig_set_last_updated(envoy_service_status_v3_ClientConfig_GenericXdsConfig *msg, struct google_protobuf_Timestamp *value)
UPB_INLINE envoy_service_discovery_v3_Resource * envoy_service_discovery_v3_Resource_parse(const char *buf, size_t size, upb_Arena *arena)
constexpr absl::remove_reference_t< T > && move(T &&t) noexcept
UPB_INLINE void envoy_config_endpoint_v3_ClusterStats_set_total_dropped_requests(envoy_config_endpoint_v3_ClusterStats *msg, uint64_t value)
constexpr size_type size() const noexcept
UPB_INLINE google_protobuf_Timestamp * google_protobuf_Timestamp_new(upb_Arena *arena)
JSON (JavaScript Object Notation).
grpc_slice CreateAdsRequest(const XdsBootstrap::XdsServer &server, absl::string_view type_url, absl::string_view version, absl::string_view nonce, const std::vector< std::string > &resource_names, grpc_error_handle error, bool populate_node)
UPB_INLINE char * envoy_service_discovery_v3_DiscoveryRequest_serialize(const envoy_service_discovery_v3_DiscoveryRequest *msg, upb_Arena *arena, size_t *len)
UPB_INLINE void google_protobuf_Duration_set_nanos(google_protobuf_Duration *msg, int32_t value)
GPRAPI void gpr_log(const char *file, int line, gpr_log_severity severity, const char *format,...) GPR_PRINT_FORMAT_CHECK(4
void EncodeVarint(uint64_t val, std::string *str)
grpc_slice CreateLrsInitialRequest(const XdsBootstrap::XdsServer &server)
UPB_INLINE google_protobuf_Value * google_protobuf_Value_new(upb_Arena *arena)
const UPB_INLINE upb_MessageDef * envoy_service_load_stats_v3_LoadStatsRequest_getmsgdef(upb_DefPool *s)
static Duration FromSecondsAndNanoseconds(int64_t seconds, int32_t nanos)
unsigned __int64 uint64_t
UPB_INLINE int32_t google_protobuf_Duration_nanos(const google_protobuf_Duration *msg)
upb::SymbolTable * symtab_
#define GRPC_SLICE_START_PTR(slice)
const UPB_INLINE upb_MessageDef * envoy_service_discovery_v3_DiscoveryRequest_getmsgdef(upb_DefPool *s)
UPB_INLINE bool envoy_config_core_v3_Node_add_client_features(envoy_config_core_v3_Node *msg, upb_StringView val, upb_Arena *arena)
UPB_INLINE void google_protobuf_Value_set_string_value(google_protobuf_Value *msg, upb_StringView value)
struct google_protobuf_Struct google_protobuf_Struct
const upb_DefPool * ptr() const
bool _upb_Message_AddUnknown(upb_Message *msg, const char *data, size_t len, upb_Arena *arena)
UPB_INLINE void envoy_config_endpoint_v3_UpstreamLocalityStats_set_total_requests_in_progress(envoy_config_endpoint_v3_UpstreamLocalityStats *msg, uint64_t value)
uint64_t total_requests_in_progress
std::map< std::string, BackendMetric > backend_metrics
UPB_INLINE bool google_protobuf_Struct_fields_set(google_protobuf_Struct *msg, upb_StringView key, google_protobuf_Value *val, upb_Arena *a)
UPB_INLINE envoy_admin_v3_UpdateFailureState * envoy_admin_v3_UpdateFailureState_new(upb_Arena *arena)
UPB_INLINE void google_protobuf_Timestamp_set_nanos(google_protobuf_Timestamp *msg, int32_t value)
UPB_INLINE int64_t google_protobuf_Duration_seconds(const google_protobuf_Duration *msg)
UPB_INLINE void envoy_config_endpoint_v3_UpstreamLocalityStats_set_total_error_requests(envoy_config_endpoint_v3_UpstreamLocalityStats *msg, uint64_t value)
UPB_INLINE struct envoy_config_core_v3_Locality * envoy_config_core_v3_Node_mutable_locality(envoy_config_core_v3_Node *msg, upb_Arena *arena)
UPB_INLINE upb_StringView envoy_service_discovery_v3_DiscoveryResponse_type_url(const envoy_service_discovery_v3_DiscoveryResponse *msg)
UPB_INLINE struct google_protobuf_Duration * envoy_config_endpoint_v3_ClusterStats_mutable_load_report_interval(envoy_config_endpoint_v3_ClusterStats *msg, upb_Arena *arena)
UPB_INLINE struct envoy_config_core_v3_Node * envoy_service_load_stats_v3_LoadStatsRequest_mutable_node(envoy_service_load_stats_v3_LoadStatsRequest *msg, upb_Arena *arena)
struct google_protobuf_Timestamp google_protobuf_Timestamp
#define GRPC_ERROR_CREATE_FROM_STATIC_STRING(desc)
#define GRPC_SLICE_LENGTH(slice)
UPB_INLINE void google_rpc_Status_set_message(google_rpc_Status *msg, upb_StringView value)
size_t upb_TextEncode(const upb_Message *msg, const upb_MessageDef *m, const upb_DefPool *ext_pool, int options, char *buf, size_t size)
std::map< std::string, Json > Object
#define GRPC_XDS_USER_AGENT_NAME_SUFFIX_STRING
UPB_INLINE void envoy_config_core_v3_Node_set_id(envoy_config_core_v3_Node *msg, upb_StringView value)
const std::string build_version_
struct google_protobuf_ListValue google_protobuf_ListValue
GPRAPI grpc_slice grpc_slice_from_copied_buffer(const char *source, size_t len)
UPB_INLINE envoy_service_discovery_v3_DiscoveryRequest * envoy_service_discovery_v3_DiscoveryRequest_new(upb_Arena *arena)
UPB_INLINE void envoy_config_endpoint_v3_EndpointLoadMetricStats_set_num_requests_finished_with_metric(envoy_config_endpoint_v3_EndpointLoadMetricStats *msg, uint64_t value)
UPB_INLINE void google_protobuf_Value_set_null_value(google_protobuf_Value *msg, int32_t value)
struct envoy_config_core_v3_Node envoy_config_core_v3_Node
struct envoy_config_endpoint_v3_ClusterStats envoy_config_endpoint_v3_ClusterStats
struct envoy_config_endpoint_v3_ClusterStats_DroppedRequests envoy_config_endpoint_v3_ClusterStats_DroppedRequests
struct envoy_config_core_v3_Locality envoy_config_core_v3_Locality
std::string eds_service_name
UPB_INLINE const struct google_protobuf_Duration * envoy_service_load_stats_v3_LoadStatsResponse_load_reporting_interval(const envoy_service_load_stats_v3_LoadStatsResponse *msg)
UPB_INLINE void google_protobuf_Any_set_value(google_protobuf_Any *msg, upb_StringView value)
const CertificateProviderStore::PluginDefinitionMap * certificate_provider_definition_map_
std::string grpc_error_std_string(grpc_error_handle error)
uint64_t total_issued_requests
grpc_error_handle ParseLrsResponse(const grpc_slice &encoded_response, bool *send_all_clusters, std::set< std::string > *cluster_names, Duration *load_reporting_interval)
std::map< std::string, const ResourceMetadata * > ResourceMetadataMap
UPB_INLINE struct google_protobuf_Any * envoy_service_status_v3_ClientConfig_GenericXdsConfig_mutable_xds_config(envoy_service_status_v3_ClientConfig_GenericXdsConfig *msg, upb_Arena *arena)
gpr_timespec as_timespec() const
UPB_INLINE bool envoy_service_load_stats_v3_LoadStatsResponse_send_all_clusters(const envoy_service_load_stats_v3_LoadStatsResponse *msg)
struct google_protobuf_Value google_protobuf_Value
UPB_INLINE void envoy_service_discovery_v3_DiscoveryRequest_set_version_info(envoy_service_discovery_v3_DiscoveryRequest *msg, upb_StringView value)
UPB_INLINE void envoy_config_core_v3_Locality_set_region(envoy_config_core_v3_Locality *msg, upb_StringView value)
UPB_INLINE void envoy_config_endpoint_v3_UpstreamLocalityStats_set_total_issued_requests(envoy_config_endpoint_v3_UpstreamLocalityStats *msg, uint64_t value)
UPB_INLINE struct envoy_config_endpoint_v3_UpstreamLocalityStats * envoy_config_endpoint_v3_ClusterStats_add_upstream_locality_stats(envoy_config_endpoint_v3_ClusterStats *msg, upb_Arena *arena)
UPB_INLINE upb_StringView google_protobuf_Any_type_url(const google_protobuf_Any *msg)
UPB_INLINE void envoy_service_discovery_v3_DiscoveryRequest_set_type_url(envoy_service_discovery_v3_DiscoveryRequest *msg, upb_StringView value)
std::array< int64_t, Size > values
Duration load_report_interval
struct google_protobuf_Duration google_protobuf_Duration
UPB_INLINE void envoy_config_core_v3_Locality_set_zone(envoy_config_core_v3_Locality *msg, upb_StringView value)
ABSL_MUST_USE_RESULT bool ok() const
UPB_INLINE void envoy_admin_v3_UpdateFailureState_set_version_info(envoy_admin_v3_UpdateFailureState *msg, upb_StringView value)
#define GRPC_ERROR_UNREF(err)
UPB_INLINE void envoy_service_status_v3_ClientConfig_GenericXdsConfig_set_version_info(envoy_service_status_v3_ClientConfig_GenericXdsConfig *msg, upb_StringView value)
UPB_INLINE upb_StringView upb_StringView_FromString(const char *data)
UPB_INLINE envoy_service_discovery_v3_DiscoveryResponse * envoy_service_discovery_v3_DiscoveryResponse_parse(const char *buf, size_t size, upb_Arena *arena)
struct envoy_service_discovery_v3_DiscoveryRequest envoy_service_discovery_v3_DiscoveryRequest
struct envoy_service_load_stats_v3_LoadStatsRequest envoy_service_load_stats_v3_LoadStatsRequest
absl::Status ParseAdsResponse(const XdsBootstrap::XdsServer &server, const grpc_slice &encoded_response, AdsResponseParserInterface *parser)
constexpr bool empty() const noexcept
UPB_INLINE struct google_protobuf_Struct * envoy_config_core_v3_Node_mutable_metadata(envoy_config_core_v3_Node *msg, upb_Arena *arena)
grpc::ClientContext context
UPB_INLINE struct envoy_config_endpoint_v3_ClusterStats_DroppedRequests * envoy_config_endpoint_v3_ClusterStats_add_dropped_requests(envoy_config_endpoint_v3_ClusterStats *msg, upb_Arena *arena)
UPB_INLINE void envoy_config_core_v3_Locality_set_sub_zone(envoy_config_core_v3_Locality *msg, upb_StringView value)
UPB_INLINE struct envoy_config_core_v3_Node * envoy_service_discovery_v3_DiscoveryRequest_mutable_node(envoy_service_discovery_v3_DiscoveryRequest *msg, upb_Arena *arena)
const UPB_INLINE upb_MessageDef * envoy_service_discovery_v3_DiscoveryResponse_getmsgdef(upb_DefPool *s)
const std::string user_agent_version_
UPB_INLINE void google_protobuf_Value_set_bool_value(google_protobuf_Value *msg, bool value)
UPB_INLINE struct envoy_config_core_v3_Node * envoy_service_status_v3_ClientConfig_mutable_node(envoy_service_status_v3_ClientConfig *msg, upb_Arena *arena)
constexpr const_pointer data() const noexcept
UPB_INLINE void envoy_admin_v3_UpdateFailureState_set_last_update_attempt(envoy_admin_v3_UpdateFailureState *msg, struct google_protobuf_Timestamp *value)
const XdsBootstrap::Node * node_
std::map< RefCountedPtr< XdsLocalityName >, XdsClusterLocalityStats::Snapshot, XdsLocalityName::Less > locality_stats
absl::string_view UpbStringToAbsl(const upb_StringView &str)
UPB_INLINE char * envoy_service_status_v3_ClientConfig_serialize(const envoy_service_status_v3_ClientConfig *msg, upb_Arena *arena, size_t *len)
UPB_INLINE void google_rpc_Status_set_code(google_rpc_Status *msg, int32_t value)
UPB_INLINE void google_protobuf_Duration_set_seconds(google_protobuf_Duration *msg, int64_t value)
struct envoy_service_load_stats_v3_LoadStatsResponse envoy_service_load_stats_v3_LoadStatsResponse
UPB_INLINE struct envoy_config_endpoint_v3_ClusterStats * envoy_service_load_stats_v3_LoadStatsRequest_add_cluster_stats(envoy_service_load_stats_v3_LoadStatsRequest *msg, upb_Arena *arena)
std::map< std::pair< std::string, std::string >, ClusterLoadReport > ClusterLoadReportMap
UPB_INLINE void envoy_service_status_v3_ClientConfig_GenericXdsConfig_set_name(envoy_service_status_v3_ClientConfig_GenericXdsConfig *msg, upb_StringView value)
UPB_INLINE upb_StringView google_protobuf_Any_value(const google_protobuf_Any *msg)
UPB_INLINE void envoy_service_discovery_v3_DiscoveryRequest_set_response_nonce(envoy_service_discovery_v3_DiscoveryRequest *msg, upb_StringView value)
#define GRPC_ERROR_IS_NONE(err)
UPB_INLINE upb_StringView envoy_service_discovery_v3_DiscoveryResponse_nonce(const envoy_service_discovery_v3_DiscoveryResponse *msg)
UPB_INLINE struct envoy_config_core_v3_Locality * envoy_config_endpoint_v3_UpstreamLocalityStats_mutable_locality(envoy_config_endpoint_v3_UpstreamLocalityStats *msg, upb_Arena *arena)
UPB_INLINE void envoy_config_endpoint_v3_UpstreamLocalityStats_set_total_successful_requests(envoy_config_endpoint_v3_UpstreamLocalityStats *msg, uint64_t value)
grpc
Author(s):
autogenerated on Thu Mar 13 2025 03:01:55