Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Admission Control Filter #10985

Closed
wants to merge 90 commits into from
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
90 commits
Select commit Hold shift + click to select a range
991d39f
wip
Jan 10, 2020
84c1b51
wip
Jan 11, 2020
d3e80e0
wip
tonya11en Jan 13, 2020
668040d
wip
tonya11en Jan 13, 2020
3727a6d
still broken
tonya11en Jan 13, 2020
b91335f
builds wip
Jan 14, 2020
871fe70
stats
tonya11en Jan 14, 2020
cd1d879
thread local
tonya11en Jan 14, 2020
b768ad1
format
tonya11en Jan 14, 2020
7a4678e
tests
tonya11en Jan 15, 2020
d5278b8
Fix bugs and more tests.
tonya11en Jan 16, 2020
34144fd
runtime double
tonya11en Jan 16, 2020
f3ec7f7
runtime double
tonya11en Jan 16, 2020
5e3d1ed
filter config test
tonya11en Jan 17, 2020
5654fa2
wip
tonya11en Jan 17, 2020
10472c0
compiles, wip, test fails
tonya11en Jan 21, 2020
a15ad6e
tests pass
tonya11en Jan 22, 2020
7f30f79
filter disable test
tonya11en Jan 22, 2020
fa3cd1c
Merge remote-tracking branch 'upstream/master' into admctl
tonya11en Jan 22, 2020
29478b0
format and fix merge stuff
tonya11en Jan 22, 2020
6b69513
more filter tests
tonya11en Jan 22, 2020
48043b6
more filter tests
tonya11en Jan 22, 2020
d0b8c50
test stats
tonya11en Jan 22, 2020
5358a78
wip
tonya11en Jan 24, 2020
6bf90d1
Merge remote-tracking branch 'upstream/master' into admctl
tonya11en Mar 2, 2020
fbecc7f
format
tonya11en Mar 2, 2020
c31da84
wip
tonya11en Mar 2, 2020
a9b9f8b
doc: fix SNI FAQ link (#10227)
lizan Mar 2, 2020
e01eda5
builds
Mar 3, 2020
5e97619
wip
tonya11en Mar 3, 2020
fc666b7
wip
tonya11en Mar 3, 2020
d639d37
builds
tonya11en Mar 3, 2020
167133d
progress
tonya11en Mar 3, 2020
598fc5f
passes
tonya11en Mar 3, 2020
bafb45e
format
tonya11en Mar 3, 2020
17fa361
Merge remote-tracking branch 'upstream/master' into admctl
tonya11en Mar 3, 2020
3bde611
format
tonya11en Mar 3, 2020
0d6dc11
Revert "format"
tonya11en Mar 3, 2020
e416db7
grpc status proto
tonya11en Mar 5, 2020
2748f16
wip
tonya11en Mar 6, 2020
0fa0905
wip
tonya11en Mar 6, 2020
72cd42d
Merge remote-tracking branch 'upstream/master' into admctl
tonya11en Mar 6, 2020
8340a73
wip
tonya11en Mar 6, 2020
65c9773
protobuf fixes
tonya11en Mar 6, 2020
dde5ea2
tests pass
tonya11en Mar 6, 2020
74a35a3
small addition to tests. still need to test new behaviors.
tonya11en Mar 6, 2020
dbd2d88
more grpc tests
tonya11en Mar 11, 2020
0359eb4
wip
tonya11en Mar 11, 2020
5bb2747
Merge remote-tracking branch 'upstream/master' into admctl
tonya11en Mar 11, 2020
762b131
format
tonya11en Mar 11, 2020
a29c9eb
tests pass
tonya11en Mar 12, 2020
c83b8fd
more tests and proto stuff
tonya11en Mar 12, 2020
c562c65
fix spelling
tonya11en Mar 12, 2020
b420460
fix api build
tonya11en Mar 12, 2020
935e672
missing protos
tonya11en Mar 12, 2020
cddd71e
http integration test. still need grpc test.
tonya11en Mar 13, 2020
eab6c0f
rm half-baked grpc test
tonya11en Mar 13, 2020
6b893f6
error bars
tonya11en Mar 13, 2020
1379ac5
make test less flaky
tonya11en Mar 13, 2020
9921663
minor test changes
tonya11en Mar 13, 2020
9cb2499
wip
tonya11en Mar 26, 2020
80c219a
Fix the grpc integration test.
tonya11en Mar 26, 2020
43d479b
fix format
tonya11en Mar 26, 2020
20f6036
Kick CI
tonya11en Mar 31, 2020
8f1428e
Merge remote-tracking branch 'upstream/master' into admctl
tonya11en Apr 6, 2020
4dab945
more
tonya11en Apr 7, 2020
cb2e4d8
Merge remote-tracking branch 'upstream/master' into admctl
tonya11en Apr 7, 2020
0bd08e0
wip
tonya11en Apr 7, 2020
c266d3a
response evals
tonya11en Apr 7, 2020
343b75b
wip
tonya11en Apr 28, 2020
d27fbe7
fix tests
tonya11en Apr 28, 2020
6be3d03
add to dictionary
tonya11en Apr 28, 2020
594bd23
Merge remote-tracking branch 'upstream/master' into admctl02
tonya11en May 6, 2020
b6591d3
fix doc build
tonya11en May 8, 2020
ae1ca6e
fix simulated time
tonya11en May 8, 2020
1a5b3ba
proto format
tonya11en May 8, 2020
08ab835
clang tidy..
tonya11en May 8, 2020
40dc2ec
clang tidy forever
tonya11en May 8, 2020
1d516aa
Kick CI
tonya11en May 9, 2020
0baddea
Merge remote-tracking branch 'upstream/master' into admctl02
tonya11en May 11, 2020
59fe97c
safer vector array pointer
tonya11en May 11, 2020
7e7844c
format
tonya11en May 11, 2020
53e3476
shorten file names
tonya11en May 12, 2020
648a936
guessing to fix windows build
tonya11en May 13, 2020
1976891
stats integration test
tonya11en May 13, 2020
70cf114
Revert "stats integration test"
tonya11en May 13, 2020
c557fe7
fix windows CI
tonya11en May 14, 2020
0f25dbb
format
tonya11en May 14, 2020
6681bc0
Merge remote-tracking branch 'upstream/master' into admctl02
tonya11en May 19, 2020
6846ce8
matt's first wave
tonya11en May 19, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
still broken
Signed-off-by: Tony Allen <tony@allen.gg>
  • Loading branch information
tonya11en committed Jan 13, 2020
commit 3727a6d503ed3059125e5e41cc0daf68bef9bf44
14 changes: 14 additions & 0 deletions api/envoy/config/filter/http/admission_control/v3alpha/BUILD
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# DO NOT EDIT. This file is generated by tools/proto_sync.py.

load("@envoy_api//bazel:api_build_system.bzl", "api_proto_package")

licenses(["notice"]) # Apache 2

api_proto_package(
deps = [
"//envoy/api/v3alpha/core:pkg",
"//envoy/config/filter/admission_control/v2alpha:pkg",
"//envoy/type/v3alpha:pkg",
"@com_github_cncf_udpa//udpa/annotations:pkg",
],
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
syntax = "proto3";

package envoy.config.filter.http.admission_control.v3alpha;

import "envoy/config/core/v3alpha/base.proto";
import "envoy/type/percent.proto";

import "google/api/annotations.proto";
import "google/protobuf/duration.proto";
import "google/protobuf/wrappers.proto";

import "udpa/annotations/migrate.proto";
import "validate/validate.proto";

option java_package = "io.envoyproxy.envoy.config.filter.http.admission_control.v3alpha";
option java_outer_classname = "AdmissionControlProto";
option java_multiple_files = true;
option (udpa.annotations.file_migrate).move_to_package =
"envoy.extensions.filters.http.admission_control.v3alpha";

// [#protodoc-title: Admission Control]
// Admission Control :ref:`configuration overview
// <config_http_filters_admission_control>`.
// [#extension: envoy.filters.http.admission_control]

message AdmissionControl {
option (udpa.annotations.versioning).previous_message_type =
"envoy.config.filter.http.adaptive_concurrency.v2alpha.AdmissionControl";

// If set to false, the admission control filter will operate as a pass-through filter. If the
// message is unspecified, the filter will be enabled.
config.core.v3alpha.RuntimeFeatureFlag enabled = 1;

// The time window over which the success rate is calculated. The window is rounded to the nearest
// second. Defaults to 120s.
google.protobuf.Duration sampling_window = 2;

// Rejection probability is defined by the formula::
//
// max(0, (rq_count - aggression_coefficient * rq_success_count) / (rq_count + 1))
//
// The coefficient dictates how aggressively the admission controller will throttle requests as
// the success rate drops. Lower values will cause throttling to kick in at higher success rates
// and result in more aggressive throttling. Defaults to 2.0.
type.protobuf.Double aggression_coefficient = 3 [(validate.rules).double = {gte: 1.0}];

// The minimum number of requests to sample for a valid success rate calculation. If the request
// count over the sampling window is any lower, admission control will not be enforced. Defaults
// to 100.
google.protobuf.UInt32Value min_request_samples = 4 [(validate.rules).uint32 = {gt: 0}];
}