diff --git a/BUILD b/BUILD index ed8743b7..34573212 100644 --- a/BUILD +++ b/BUILD @@ -248,7 +248,6 @@ proto_library( "//envoy/extensions/upstreams/http/http/v3:pkg", "//envoy/extensions/upstreams/http/tcp/v3:pkg", "//envoy/extensions/wasm/v3:pkg", - "//envoy/extensions/watchdog/abort_action/v3alpha:pkg", "//envoy/extensions/watchdog/profile_action/v3alpha:pkg", "//envoy/service/accesslog/v3:pkg", "//envoy/service/auth/v3:pkg", @@ -272,6 +271,7 @@ proto_library( "//envoy/type/metadata/v3:pkg", "//envoy/type/tracing/v3:pkg", "//envoy/type/v3:pkg", + "//envoy/watchdog/v3alpha:pkg", ], ) diff --git a/envoy/extensions/watchdog/abort_action/v3alpha/abort_action.proto b/envoy/extensions/watchdog/abort_action/v3alpha/abort_action.proto deleted file mode 100644 index 7d793be8..00000000 --- a/envoy/extensions/watchdog/abort_action/v3alpha/abort_action.proto +++ /dev/null @@ -1,32 +0,0 @@ -syntax = "proto3"; - -package envoy.extensions.watchdog.abort_action.v3alpha; - -import "google/protobuf/duration.proto"; - -import "udpa/annotations/status.proto"; -import "udpa/annotations/versioning.proto"; -import "validate/validate.proto"; - -option java_package = "io.envoyproxy.envoy.extensions.watchdog.abort_action.v3alpha"; -option java_outer_classname = "AbortActionProto"; -option java_multiple_files = true; -option (udpa.annotations.file_status).work_in_progress = true; -option (udpa.annotations.file_status).package_version_status = ACTIVE; - -// [#protodoc-title: Watchdog Action that sends a SIGABRT to kill the process.] -// [#extension: envoy.watchdog.abort_action] - -// A GuardDogAction that will terminate the process by sending SIGABRT to the -// stuck thread. This would allow easier access to the call stack of the stuck -// thread since we would run signal handlers on that thread. This would be -// more useful than the default watchdog kill behaviors since those PANIC -// from the watchdog's thread. - -// This is currently only implemented for systems that support kill to send -// signals. -message AbortActionConfig { - // How long to wait for the thread to respond to the SIGABRT before killing the - // process from this action. This is a blocking action. - google.protobuf.Duration wait_duration = 1; -} diff --git a/envoy/extensions/watchdog/abort_action/v3alpha/BUILD b/envoy/watchdog/v3alpha/BUILD similarity index 100% rename from envoy/extensions/watchdog/abort_action/v3alpha/BUILD rename to envoy/watchdog/v3alpha/BUILD diff --git a/envoy/watchdog/v3alpha/README.md b/envoy/watchdog/v3alpha/README.md new file mode 100644 index 00000000..c8433b9c --- /dev/null +++ b/envoy/watchdog/v3alpha/README.md @@ -0,0 +1,2 @@ +This contains watchdog actions that are part of core Envoy, and therefore cannot +be in the extensions directory. diff --git a/envoy/watchdog/v3alpha/abort_action.proto b/envoy/watchdog/v3alpha/abort_action.proto new file mode 100644 index 00000000..3f47fdda --- /dev/null +++ b/envoy/watchdog/v3alpha/abort_action.proto @@ -0,0 +1,29 @@ +syntax = "proto3"; + +package envoy.watchdog.v3alpha; + +import "google/protobuf/duration.proto"; + +import "udpa/annotations/status.proto"; +import "udpa/annotations/versioning.proto"; +import "validate/validate.proto"; + +option java_package = "io.envoyproxy.envoy.watchdog.v3alpha"; +option java_outer_classname = "AbortActionProto"; +option java_multiple_files = true; +option (udpa.annotations.file_status).work_in_progress = true; +option (udpa.annotations.file_status).package_version_status = ACTIVE; + +// [#protodoc-title: Watchdog Action that kills a stuck thread to kill the process.] + +// A GuardDogAction that will terminate the process by killing the +// stuck thread. This would allow easier access to the call stack of the stuck +// thread since we would run signal handlers on that thread. By default +// this will be registered to run as the last watchdog action on KILL and +// MULTIKILL events if those are enabled. +message AbortActionConfig { + // How long to wait for the thread to respond to the thread kill function + // before killing the process from this action. This is a blocking action. + // By default this is 5 seconds. + google.protobuf.Duration wait_duration = 1; +} diff --git a/versioning/BUILD b/versioning/BUILD index d44a5464..2e0a1cd4 100644 --- a/versioning/BUILD +++ b/versioning/BUILD @@ -131,7 +131,6 @@ proto_library( "//envoy/extensions/upstreams/http/http/v3:pkg", "//envoy/extensions/upstreams/http/tcp/v3:pkg", "//envoy/extensions/wasm/v3:pkg", - "//envoy/extensions/watchdog/abort_action/v3alpha:pkg", "//envoy/extensions/watchdog/profile_action/v3alpha:pkg", "//envoy/service/accesslog/v3:pkg", "//envoy/service/auth/v3:pkg", @@ -155,6 +154,7 @@ proto_library( "//envoy/type/metadata/v3:pkg", "//envoy/type/tracing/v3:pkg", "//envoy/type/v3:pkg", + "//envoy/watchdog/v3alpha:pkg", ], )