Get desktop application:
View/edit binary Protocol Buffers messages
This message describes the bootstrap configuration that Envoy was started with. This includes any CLI overrides that were merged. Bootstrap configuration information can be used to recreate the static portions of an Envoy configuration by reusing the output as the bootstrap configuration for another Envoy.
The timestamp when the BootstrapConfig was last updated.
Used in:
Details of CA certificate.
Details of Certificate Chain
[#next-free-field: 8]
Used in:
Path of the certificate.
Certificate Serial Number.
List of Subject Alternate names.
Minimum of days until expiration of certificate and it's chain.
Indicates the time from which the certificate is valid.
Indicates the time at which the certificate expires.
Details related to the OCSP response associated with this certificate, if any.
Used in:
Indicates the time from which the OCSP response is valid.
Indicates the time at which the OCSP response expires.
Proto representation of certificate details. Admin endpoint uses this wrapper for ``/certs`` to display certificate information. See :ref:`/certs <operations_admin_interface_certs>` for more information.
List of certificates known to an Envoy.
Resource status from the view of a xDS client, which tells the synchronization status between the xDS client and the xDS server.
Used in:
, , , , , , ,Resource status is not available/unknown.
Client requested this resource but hasn't received any update from management server. The client will not fail requests, but will queue them until update arrives or the client times out waiting for the resource.
This resource has been requested by the client but has either not been delivered by the server or was previously delivered by the server and then subsequently removed from resources provided by the server. For more information, please refer to the :ref:`"Knowing When a Requested Resource Does Not Exist" <xds_protocol_resource_not_existed>` section.
Client received this resource and replied with ACK.
Client received this resource and replied with NACK.
Client received an error from the control plane. The attached config dump is the most recent accepted one. If no config is accepted yet, the attached config dump will be empty.
Client timed out waiting for the resource from the control plane.
Details an individual cluster's current status. [#next-free-field: 9]
Used in:
Name of the cluster.
Denotes whether this cluster was added via API or configured statically.
The success rate threshold used in the last interval. * If :ref:`outlier_detection.split_external_local_origin_errors<envoy_v3_api_field_config.cluster.v3.OutlierDetection.split_external_local_origin_errors>` is ``false``, all errors: externally and locally generated were used to calculate the threshold. * If :ref:`outlier_detection.split_external_local_origin_errors<envoy_v3_api_field_config.cluster.v3.OutlierDetection.split_external_local_origin_errors>` is ``true``, only externally generated errors were used to calculate the threshold. The threshold is used to eject hosts based on their success rate. For more information, see the :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation. .. note:: This field may be omitted in any of the three following cases: 1. There were not enough hosts with enough request volume to proceed with success rate based outlier ejection. 2. The threshold is computed to be < 0 because a negative value implies that there was no threshold for that interval. 3. Outlier detection is not enabled for this cluster.
Mapping from host address to the host's current status.
The success rate threshold used in the last interval when only locally originated failures were taken into account and externally originated errors were treated as success. This field should be interpreted only when :ref:`outlier_detection.split_external_local_origin_errors<envoy_v3_api_field_config.cluster.v3.OutlierDetection.split_external_local_origin_errors>` is ``true``. The threshold is used to eject hosts based on their success rate. For more information, see the :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation. .. note:: This field may be omitted in any of the three following cases: 1. There were not enough hosts with enough request volume to proceed with success rate based outlier ejection. 2. The threshold is computed to be < 0 because a negative value implies that there was no threshold for that interval. 3. Outlier detection is not enabled for this cluster.
:ref:`Circuit breaking <arch_overview_circuit_break>` settings of the cluster.
Observability name of the cluster.
The :ref:`EDS service name <envoy_v3_api_field_config.cluster.v3.Cluster.EdsClusterConfig.service_name>` if the cluster is an EDS cluster.
Admin endpoint uses this wrapper for ``/clusters`` to display cluster status information. See :ref:`/clusters <operations_admin_interface_clusters>` for more information.
Mapping from cluster name to each cluster's status.
Envoy's cluster manager fills this message with all currently known clusters. Cluster configuration information can be used to recreate an Envoy configuration by populating all clusters as static clusters or by returning them in a CDS response.
Used in:
This is the :ref:`version_info <envoy_v3_api_field_service.discovery.v3.DiscoveryResponse.version_info>` in the last processed CDS discovery response. If there are only static bootstrap clusters, this field will be "".
The statically loaded cluster configs.
The dynamically loaded active clusters. These are clusters that are available to service data plane traffic.
The dynamically loaded warming clusters. These are clusters that are currently undergoing warming in preparation to service data plane traffic. Note that if attempting to recreate an Envoy configuration from a configuration dump, the warming clusters should generally be discarded.
Describes a dynamically loaded cluster via the CDS API. [#next-free-field: 6]
Used in:
This is the per-resource version information. This version is currently taken from the :ref:`version_info <envoy_v3_api_field_service.discovery.v3.DiscoveryResponse.version_info>` field at the time that the cluster was loaded. In the future, discrete per-cluster versions may be supported by the API.
The cluster config.
The timestamp when the Cluster was last updated.
Set if the last update failed, cleared after the next successful update. The ``error_state`` field contains the rejected version of this particular resource along with the reason and timestamp. For successfully updated or acknowledged resource, this field should be empty. [#not-implemented-hide:]
The client status of this resource. [#not-implemented-hide:]
Describes a statically loaded cluster.
Used in:
The cluster config.
The timestamp when the Cluster was last updated.
[#next-free-field: 42]
Used in:
See :option:`--base-id` for details.
See :option:`--use-dynamic-base-id` for details.
See :option:`--skip-hot-restart-on-no-parent` for details.
See :option:`--skip-hot-restart-parent-stats` for details.
See :option:`--base-id-path` for details.
See :option:`--concurrency` for details.
See :option:`--config-path` for details.
See :option:`--config-yaml` for details.
See :option:`--allow-unknown-static-fields` for details.
See :option:`--reject-unknown-dynamic-fields` for details.
See :option:`--ignore-unknown-dynamic-fields` for details.
See :option:`--skip-deprecated-logs` for details.
See :option:`--admin-address-path` for details.
See :option:`--local-address-ip-version` for details.
See :option:`--log-level` for details.
See :option:`--component-log-level` for details.
See :option:`--log-format` for details.
See :option:`--log-format-escaped` for details.
See :option:`--log-path` for details.
See :option:`--service-cluster` for details.
See :option:`--service-node` for details.
See :option:`--service-zone` for details.
See :option:`--file-flush-interval-msec` for details.
See :option:`--drain-time-s` for details.
See :option:`--drain-strategy` for details.
See :option:`--parent-shutdown-time-s` for details.
See :option:`--mode` for details.
See :option:`--disable-hot-restart` for details.
See :option:`--enable-mutex-tracing` for details.
See :option:`--restart-epoch` for details.
See :option:`--cpuset-threads` for details.
See :option:`--disable-extensions` for details.
See :option:`--enable-fine-grain-logging` for details.
See :option:`--socket-path` for details.
See :option:`--socket-mode` for details.
See :option:`--enable-core-dump` for details.
See :option:`--stats-tag` for details.
Used in:
Gradually discourage connections over the course of the drain period.
Discourage all connections for the duration of the drain sequence.
Used in:
Used in:
Validate configs and then serve traffic normally.
Validate configs and exit.
Completely load and initialize the config, and then exit without running the listener loop.
The :ref:`/config_dump <operations_admin_interface_config_dump>` admin endpoint uses this wrapper message to maintain and serve arbitrary configuration information from any component in Envoy.
This list is serialized and dumped in its entirety at the :ref:`/config_dump <operations_admin_interface_config_dump>` endpoint. The following configurations are currently supported and will be dumped in the order given below: * ``bootstrap``: :ref:`BootstrapConfigDump <envoy_v3_api_msg_admin.v3.BootstrapConfigDump>` * ``clusters``: :ref:`ClustersConfigDump <envoy_v3_api_msg_admin.v3.ClustersConfigDump>` * ``ecds_filter_http``: :ref:`EcdsConfigDump <envoy_v3_api_msg_admin.v3.EcdsConfigDump>` * ``ecds_filter_quic_listener``: :ref:`EcdsConfigDump <envoy_v3_api_msg_admin.v3.EcdsConfigDump>` * ``ecds_filter_tcp_listener``: :ref:`EcdsConfigDump <envoy_v3_api_msg_admin.v3.EcdsConfigDump>` * ``endpoints``: :ref:`EndpointsConfigDump <envoy_v3_api_msg_admin.v3.EndpointsConfigDump>` * ``listeners``: :ref:`ListenersConfigDump <envoy_v3_api_msg_admin.v3.ListenersConfigDump>` * ``scoped_routes``: :ref:`ScopedRoutesConfigDump <envoy_v3_api_msg_admin.v3.ScopedRoutesConfigDump>` * ``routes``: :ref:`RoutesConfigDump <envoy_v3_api_msg_admin.v3.RoutesConfigDump>` * ``secrets``: :ref:`SecretsConfigDump <envoy_v3_api_msg_admin.v3.SecretsConfigDump>` EDS Configuration will only be dumped by using parameter ``?include_eds`` Currently ECDS is supported in HTTP and listener filters. Note, ECDS configuration for either HTTP or listener filter will only be dumped if it is actually configured. You can filter output with the resource and mask query parameters. See :ref:`/config_dump?resource={} <operations_admin_interface_config_dump_by_resource>`, :ref:`/config_dump?mask={} <operations_admin_interface_config_dump_by_mask>`, or :ref:`/config_dump?resource={},mask={} <operations_admin_interface_config_dump_by_resource_and_mask>` for more information.
Envoy's ECDS service fills this message with all currently extension configuration. Extension configuration information can be used to recreate an Envoy ECDS listener and HTTP filters as static filters or by returning them in ECDS response.
The ECDS filter configs.
[#next-free-field: 6]
Used in:
This is the per-resource version information. This version is currently taken from the :ref:`version_info <envoy_v3_api_field_service.discovery.v3.DiscoveryResponse.version_info>` field at the time that the ECDS filter was loaded.
The ECDS filter config.
The timestamp when the ECDS filter was last updated.
Set if the last update failed, cleared after the next successful update. The ``error_state`` field contains the rejected version of this particular resource along with the reason and timestamp. For successfully updated or acknowledged resource, this field should be empty. [#not-implemented-hide:]
The client status of this resource. [#not-implemented-hide:]
Envoy's admin fill this message with all currently known endpoints. Endpoint configuration information can be used to recreate an Envoy configuration by populating all endpoints as static endpoints or by returning them in an EDS response.
Used in:
The statically loaded endpoint configs.
The dynamically loaded endpoint configs.
[#next-free-field: 6]
Used in:
[#not-implemented-hide:] This is the per-resource version information. This version is currently taken from the :ref:`version_info <envoy_v3_api_field_service.discovery.v3.DiscoveryResponse.version_info>` field at the time that the endpoint configuration was loaded.
The endpoint config.
[#not-implemented-hide:] The timestamp when the Endpoint was last updated.
Set if the last update failed, cleared after the next successful update. The ``error_state`` field contains the rejected version of this particular resource along with the reason and timestamp. For successfully updated or acknowledged resource, this field should be empty. [#not-implemented-hide:]
The client status of this resource. [#not-implemented-hide:]
Used in:
The endpoint config.
[#not-implemented-hide:] The timestamp when the Endpoint was last updated.
Health status for a host. [#next-free-field: 9]
Used in:
The host is currently failing active health checks.
The host is currently considered an outlier and has been ejected.
The host is currently being marked as degraded through active health checking.
The host has been removed from service discovery, but is being stabilized due to active health checking.
The host has not yet been health checked.
The host should be excluded from panic, spillover, etc. calculations because it was explicitly taken out of rotation via protocol signal and is not meant to be routed to.
The host failed active HC due to timeout.
Health status as reported by EDS. Note: only HEALTHY and UNHEALTHY are currently supported here. [#comment:TODO(mrice32): pipe through remaining EDS health status possibilities.]
Current state of a particular host. [#next-free-field: 10]
Used in:
Address of this host.
List of stats specific to this host.
The host's current health status.
The success rate for this host during the last measurement interval. * If :ref:`outlier_detection.split_external_local_origin_errors<envoy_v3_api_field_config.cluster.v3.OutlierDetection.split_external_local_origin_errors>` is ``false``, all errors: externally and locally generated were used in success rate calculation. * If :ref:`outlier_detection.split_external_local_origin_errors<envoy_v3_api_field_config.cluster.v3.OutlierDetection.split_external_local_origin_errors>` is ``true``, only externally generated errors were used in success rate calculation. For more information, see the :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation. .. note:: The message will be missing if the host didn't receive enough traffic to calculate a reliable success rate, or if the cluster had too few hosts to apply outlier ejection based on success rate.
The host's weight. If not configured, the value defaults to 1.
The hostname of the host, if applicable.
The host's priority. If not configured, the value defaults to 0 (highest priority).
The success rate for this host during the last interval, considering only locally generated errors. Externally generated errors are treated as successes. This field is only relevant when :ref:`outlier_detection.split_external_local_origin_errors<envoy_v3_api_field_config.cluster.v3.OutlierDetection.split_external_local_origin_errors>` is set to ``true``. For more information, see the :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation. .. note:: The message will be missing if the host didn’t receive enough traffic to compute a success rate, or if the cluster didn’t have enough hosts to perform outlier ejection based on success rate.
locality of the host.
Details an individual listener's current status.
Used in:
Name of the listener
The actual local address that the listener is listening on. If a listener was configured to listen on port 0, then this address has the port that was allocated by the OS.
The additional addresses the listener is listening on as specified via the :ref:`additional_addresses <envoy_v3_api_field_config.listener.v3.Listener.additional_addresses>` configuration.
Admin endpoint uses this wrapper for ``/listeners`` to display listener status information. See :ref:`/listeners <operations_admin_interface_listeners>` for more information.
List of listener statuses.
Envoy's listener manager fills this message with all currently known listeners. Listener configuration information can be used to recreate an Envoy configuration by populating all listeners as static listeners or by returning them in a LDS response.
Used in:
This is the :ref:`version_info <envoy_v3_api_field_service.discovery.v3.DiscoveryResponse.version_info>` in the last processed LDS discovery response. If there are only static bootstrap listeners, this field will be "".
The statically loaded listener configs.
State for any warming, active, or draining listeners.
Describes a dynamically loaded listener via the LDS API. [#next-free-field: 7]
Used in:
The name or unique id of this listener, pulled from the DynamicListenerState config.
The listener state for any active listener by this name. These are listeners that are available to service data plane traffic.
The listener state for any warming listener by this name. These are listeners that are currently undergoing warming in preparation to service data plane traffic. Note that if attempting to recreate an Envoy configuration from a configuration dump, the warming listeners should generally be discarded.
The listener state for any draining listener by this name. These are listeners that are currently undergoing draining in preparation to stop servicing data plane traffic. Note that if attempting to recreate an Envoy configuration from a configuration dump, the draining listeners should generally be discarded.
Set if the last update failed, cleared after the next successful update. The ``error_state`` field contains the rejected version of this particular resource along with the reason and timestamp. For successfully updated or acknowledged resource, this field should be empty.
The client status of this resource. [#not-implemented-hide:]
Used in:
This is the per-resource version information. This version is currently taken from the :ref:`version_info <envoy_v3_api_field_service.discovery.v3.DiscoveryResponse.version_info>` field at the time that the listener was loaded. In the future, discrete per-listener versions may be supported by the API.
The listener config.
The timestamp when the Listener was last successfully updated.
Describes a statically loaded listener.
Used in:
The listener config.
The timestamp when the Listener was last successfully updated.
Proto representation of the internal memory consumption of an Envoy instance. These represent values extracted from an internal TCMalloc instance. For more information, see the section of the docs entitled ["Generic Tcmalloc Status"](https://gperftools.github.io/gperftools/tcmalloc.html). [#next-free-field: 7]
The number of bytes allocated by the heap for Envoy. This is an alias for ``generic.current_allocated_bytes``.
The number of bytes reserved by the heap but not necessarily allocated. This is an alias for ``generic.heap_size``.
The number of bytes in free, unmapped pages in the page heap. These bytes always count towards virtual memory usage, and depending on the OS, typically do not count towards physical memory usage. This is an alias for ``tcmalloc.pageheap_unmapped_bytes``.
The number of bytes in free, mapped pages in the page heap. These bytes always count towards virtual memory usage, and unless the underlying memory is swapped out by the OS, they also count towards physical memory usage. This is an alias for ``tcmalloc.pageheap_free_bytes``.
The amount of memory used by the TCMalloc thread caches (for small objects). This is an alias for ``tcmalloc.current_total_thread_cache_bytes``.
The number of bytes of the physical memory usage by the allocator. This is an alias for ``generic.total_physical_bytes``.
Proto representation of the statistics collected upon absl::Mutex contention, if Envoy is run under :option:`--enable-mutex-tracing`. For more information, see the ``absl::Mutex`` [docs](https://abseil.io/about/design/mutex#extra-features). *NB*: The wait cycles below are measured by ``absl::base_internal::CycleClock``, and may not correspond to core clock frequency. For more information, see the ``CycleClock`` [docs](https://github.com/abseil/abseil-cpp/blob/master/absl/base/internal/cycleclock.h).
The number of individual mutex contentions which have occurred since startup.
The length of the current contention wait cycle.
The lifetime total of all contention wait cycles.
Envoy's RDS implementation fills this message with all currently loaded routes, as described by their RouteConfiguration objects. Static routes that are either defined in the bootstrap configuration or defined inline while configuring listeners are separated from those configured dynamically via RDS. Route configuration information can be used to recreate an Envoy configuration by populating all routes as static routes or by returning them in RDS responses.
Used in:
The statically loaded route configs.
The dynamically loaded route configs.
[#next-free-field: 6]
Used in:
This is the per-resource version information. This version is currently taken from the :ref:`version_info <envoy_v3_api_field_service.discovery.v3.DiscoveryResponse.version_info>` field at the time that the route configuration was loaded.
The route config.
The timestamp when the Route was last updated.
Set if the last update failed, cleared after the next successful update. The ``error_state`` field contains the rejected version of this particular resource along with the reason and timestamp. For successfully updated or acknowledged resource, this field should be empty. [#not-implemented-hide:]
The client status of this resource. [#not-implemented-hide:]
Used in:
The route config.
The timestamp when the Route was last updated.
Envoy's scoped RDS implementation fills this message with all currently loaded route configuration scopes (defined via ScopedRouteConfigurationsSet protos). This message lists both the scopes defined inline with the higher order object (i.e., the HttpConnectionManager) and the dynamically obtained scopes via the SRDS API.
Used in:
The statically loaded scoped route configs.
The dynamically loaded scoped route configs.
[#next-free-field: 7]
Used in:
The name assigned to the scoped route configurations.
This is the per-resource version information. This version is currently taken from the :ref:`version_info <envoy_v3_api_field_service.discovery.v3.DiscoveryResponse.version_info>` field at the time that the scoped routes configuration was loaded.
The scoped route configurations.
The timestamp when the scoped route config set was last updated.
Set if the last update failed, cleared after the next successful update. The ``error_state`` field contains the rejected version of this particular resource along with the reason and timestamp. For successfully updated or acknowledged resource, this field should be empty. [#not-implemented-hide:]
The client status of this resource. [#not-implemented-hide:]
Used in:
The name assigned to the scoped route configurations.
The scoped route configurations.
The timestamp when the scoped route config set was last updated.
Envoys SDS implementation fills this message with all secrets fetched dynamically via SDS.
The statically loaded secrets.
The dynamically loaded active secrets. These are secrets that are available to service clusters or listeners.
The dynamically loaded warming secrets. These are secrets that are currently undergoing warming in preparation to service clusters or listeners.
DynamicSecret contains secret information fetched via SDS. [#next-free-field: 7]
Used in:
The name assigned to the secret.
This is the per-resource version information.
The timestamp when the secret was last updated.
The actual secret information. Security sensitive information is redacted (replaced with "[redacted]") for private keys and passwords in TLS certificates.
Set if the last update failed, cleared after the next successful update. The *error_state* field contains the rejected version of this particular resource along with the reason and timestamp. For successfully updated or acknowledged resource, this field should be empty. [#not-implemented-hide:]
The client status of this resource. [#not-implemented-hide:]
StaticSecret specifies statically loaded secret in bootstrap.
Used in:
The name assigned to the secret.
The timestamp when the secret was last updated.
The actual secret information. Security sensitive information is redacted (replaced with "[redacted]") for private keys and passwords in TLS certificates.
Proto representation of the value returned by /server_info, containing server version/server status information. [#next-free-field: 8]
Server version.
State of the server.
Uptime since current epoch was started.
Uptime since the start of the first epoch.
Hot restart version.
Command line options the server is currently running with.
Populated node identity of this server.
Used in:
Server is live and serving traffic.
Server is draining listeners in response to external health checks failing.
Server has not yet completed cluster manager initialization.
Server is running the cluster manager initialization callbacks (e.g., RDS).
Proto representation of an Envoy Counter or Gauge value.
Used in:
Type of the metric represented.
Current metric value.
Name of the metric.
Used in:
Used in:
Subject Alternate Name.
The /tap admin request body that is used to configure an active tap session.
The opaque configuration ID used to match the configuration to a loaded extension. A tap extension configures a similar opaque ID that is used to match.
The tap configuration to load.
Dumps of unready targets of envoy init managers. Envoy's admin fills this message with init managers, which provides the information of their unready targets. The :ref:`/init_dump <operations_admin_interface_init_dump>` will dump all unready targets information.
You can choose specific component to dump unready targets with mask query parameter. See :ref:`/init_dump?mask={} <operations_admin_interface_init_dump_by_mask>` for more information. The dumps of unready targets of all init managers.
Message of unready targets information of an init manager.
Used in:
Name of the init manager. Example: "init_manager_xxx".
Names of unready targets of the init manager. Example: "target_xxx".
Used in:
, , , , , , ,What the component configuration would have been if the update had succeeded. This field may not be populated by xDS clients due to storage overhead.
Time of the latest failed update attempt.
Details about the last failed update attempt.
This is the version of the rejected resource. [#not-implemented-hide:]