diff --git a/envoy/api/v2/core/health_check.proto b/envoy/api/v2/core/health_check.proto index 2ad6ed31..b2633d89 100644 --- a/envoy/api/v2/core/health_check.proto +++ b/envoy/api/v2/core/health_check.proto @@ -218,6 +218,11 @@ message HealthCheck { // Specifies the path to the :ref:`health check event log `. // If empty, no event log will be written. string event_log_path = 17; + + // If set to true, health check failure events will always be logged. If set to false, only the + // initial health check failure event will be logged. + // The default value is false. + bool always_log_health_check_failures = 19; } // Endpoint health status. diff --git a/envoy/data/core/v2alpha/health_check_event.proto b/envoy/data/core/v2alpha/health_check_event.proto index e9442cfb..dfb016e8 100644 --- a/envoy/data/core/v2alpha/health_check_event.proto +++ b/envoy/data/core/v2alpha/health_check_event.proto @@ -27,6 +27,9 @@ message HealthCheckEvent { // Host addition. HealthCheckAddHealthy add_healthy_event = 5; + + // Host failure. + HealthCheckFailure health_check_failure_event = 7; } // Timestamp for event. @@ -57,3 +60,10 @@ message HealthCheckAddHealthy { // is bypassed and the host is immediately added. bool first_check = 1; } + +message HealthCheckFailure { + // The type of failure that caused this event. + HealthCheckFailureType failure_type = 1 [(validate.rules).enum.defined_only = true]; + // Whether this event is the result of the first ever health check on a host. + bool first_check = 2; +}