You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: fleet-server.reference.yml
+13-3
Original file line number
Diff line number
Diff line change
@@ -145,14 +145,14 @@ fleet:
145
145
# # If specified a set of other limits is automatically loaded.
146
146
# max_agents: 0
147
147
# # policy_throttle is the duration that the fleet-server will wait in between attempts to dispatch policy updates to polling agents
148
-
# # deprecated: replaced by action_limit settings
149
-
# policy_throttle: 5ms
148
+
# # deprecated: replaced by policy_limit settings
149
+
# policy_throttle: 5ms # 1ms min is forced
150
150
# # max_header_byte_size is the request header size limit
151
151
# max_header_byte_size: 8192 # 8Kib
152
152
# # max_connections is the maximum number of connnections per API endpoint
153
153
# max_connections: 0
154
154
#
155
-
# # action_limit is a limiter for checkin responses that contain actions
155
+
# # action_limit is a limiter for the action dispatcher, it is added to control how fast the checkin endpoint writes responses when an action effecting multiple agents is detected.
156
156
# # This is done in order to be able to reuse gzip writers if gzip is requested as allocating new writers is expensive (around 1.2MB for a new allocation).
157
157
# # If the interval is too high it may negativly effect assumtions around server write timeouts and poll poll durations, if used we expect the value to be around 5ms.
158
158
# # An interval value of 0 disables the limiter by using an infinite rate limit (default behavior).
@@ -161,6 +161,16 @@ fleet:
161
161
# interval: 0
162
162
# burst: 5
163
163
#
164
+
# # policy_limit is a limiter used to control how fast fleet-server sends POLICY_CHANGE actions to agents.
165
+
# # As with the action_limit settings this is done to avoid allocating a lot of gzip writers.
166
+
# # The default settings are to have the interval of 5ms with a burst of 1.
167
+
# # A min burst value of 1 is always enforced.
168
+
# # If no interval is specified, the policy_throttle may be used as the interval instead.
169
+
# # if both interval and policy_throttle are 0, a value of 1ns is used instead.
Copy file name to clipboardexpand all lines: internal/pkg/api/handleCheckin.go
+1-21
Original file line number
Diff line number
Diff line change
@@ -34,7 +34,6 @@ import (
34
34
"github.com/hashicorp/go-version"
35
35
"github.com/miolini/datacounter"
36
36
"github.com/rs/zerolog"
37
-
"golang.org/x/time/rate"
38
37
39
38
"go.elastic.co/apm/module/apmhttp/v2"
40
39
"go.elastic.co/apm/v2"
@@ -77,7 +76,6 @@ type CheckinT struct {
77
76
// gwPool is a gzip.Writer pool intended to lower the amount of writers created when responding to checkin requests.
78
77
// gzip.Writer allocations are expensive (~1.2MB each) and can exhaust an instance's memory if a lot of concurrent responses are sent (this occurs when a mass-action such as an upgrade is detected).
79
78
// effectiveness of the pool is controlled by rate limiter configured through the limit.action_limit attribute.
0 commit comments