@@ -2,9 +2,9 @@ syntax = "proto3";
22
33package envoy.admin.v2alpha ;
44
5+ option java_package = "io.envoyproxy.envoy.admin.v2alpha" ;
56option java_outer_classname = "ConfigDumpProto" ;
67option java_multiple_files = true ;
7- option java_package = "io.envoyproxy.envoy.admin.v2alpha" ;
88
99import "envoy/api/v2/auth/cert.proto" ;
1010import "envoy/api/v2/cds.proto" ;
@@ -34,6 +34,17 @@ message ConfigDump {
3434 repeated google.protobuf.Any configs = 1 ;
3535}
3636
37+ message UpdateFailureState {
38+ // What the component configuration would have been if the update had succeeded.
39+ google.protobuf.Any failed_configuration = 1 ;
40+
41+ // Time of the latest failed update attempt.
42+ google.protobuf.Timestamp last_update_attempt = 2 ;
43+
44+ // Details about the last failed update attempt.
45+ string details = 3 ;
46+ }
47+
3748// This message describes the bootstrap configuration that Envoy was started with. This includes
3849// any CLI overrides that were merged. Bootstrap configuration information can be used to recreate
3950// the static portions of an Envoy configuration by reusing the output as the bootstrap
@@ -48,19 +59,17 @@ message BootstrapConfigDump {
4859// Envoy's listener manager fills this message with all currently known listeners. Listener
4960// configuration information can be used to recreate an Envoy configuration by populating all
5061// listeners as static listeners or by returning them in a LDS response.
51- // [#next-free-field: 6]
5262message ListenersConfigDump {
5363 // Describes a statically loaded listener.
5464 message StaticListener {
5565 // The listener config.
5666 api.v2.Listener listener = 1 ;
5767
58- // The timestamp when the Listener was last updated.
68+ // The timestamp when the Listener was last successfully updated.
5969 google.protobuf.Timestamp last_updated = 2 ;
6070 }
6171
62- // Describes a dynamically loaded cluster via the LDS API.
63- message DynamicListener {
72+ message DynamicListenerState {
6473 // This is the per-resource version information. This version is currently taken from the
6574 // :ref:`version_info <envoy_api_field_DiscoveryResponse.version_info>` field at the time
6675 // that the listener was loaded. In the future, discrete per-listener versions may be supported
@@ -70,10 +79,36 @@ message ListenersConfigDump {
7079 // The listener config.
7180 api.v2.Listener listener = 2 ;
7281
73- // The timestamp when the Listener was last updated.
82+ // The timestamp when the Listener was last successfully updated.
7483 google.protobuf.Timestamp last_updated = 3 ;
7584 }
7685
86+ // Describes a dynamically loaded listener via the LDS API.
87+ // [#next-free-field: 6]
88+ message DynamicListener {
89+ // The name or unique id of this listener, pulled from the DynamicListenerState config.
90+ string name = 1 ;
91+
92+ // The listener state for any active listener by this name.
93+ // These are listeners that are available to service data plane traffic.
94+ DynamicListenerState active_state = 2 ;
95+
96+ // The listener state for any warming listener by this name.
97+ // These are listeners that are currently undergoing warming in preparation to service data
98+ // plane traffic. Note that if attempting to recreate an Envoy configuration from a
99+ // configuration dump, the warming listeners should generally be discarded.
100+ DynamicListenerState warming_state = 3 ;
101+
102+ // The listener state for any draining listener by this name.
103+ // These are listeners that are currently undergoing draining in preparation to stop servicing
104+ // data plane traffic. Note that if attempting to recreate an Envoy configuration from a
105+ // configuration dump, the draining listeners should generally be discarded.
106+ DynamicListenerState draining_state = 4 ;
107+
108+ // Set if the last update failed, cleared after the next successful update.
109+ UpdateFailureState error_state = 5 ;
110+ }
111+
77112 // This is the :ref:`version_info <envoy_api_field_DiscoveryResponse.version_info>` in the
78113 // last processed LDS discovery response. If there are only static bootstrap listeners, this field
79114 // will be "".
@@ -82,21 +117,8 @@ message ListenersConfigDump {
82117 // The statically loaded listener configs.
83118 repeated StaticListener static_listeners = 2 ;
84119
85- // The dynamically loaded active listeners. These are listeners that are available to service
86- // data plane traffic.
87- repeated DynamicListener dynamic_active_listeners = 3 ;
88-
89- // The dynamically loaded warming listeners. These are listeners that are currently undergoing
90- // warming in preparation to service data plane traffic. Note that if attempting to recreate an
91- // Envoy configuration from a configuration dump, the warming listeners should generally be
92- // discarded.
93- repeated DynamicListener dynamic_warming_listeners = 4 ;
94-
95- // The dynamically loaded draining listeners. These are listeners that are currently undergoing
96- // draining in preparation to stop servicing data plane traffic. Note that if attempting to
97- // recreate an Envoy configuration from a configuration dump, the draining listeners should
98- // generally be discarded.
99- repeated DynamicListener dynamic_draining_listeners = 5 ;
120+ // State for any warming, active, or draining listeners.
121+ repeated DynamicListener dynamic_listeners = 3 ;
100122}
101123
102124// Envoy's cluster manager fills this message with all currently known clusters. Cluster
0 commit comments