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
@@ -116,10 +116,6 @@ The following table illustrates the {fleet} user actions available to different
116
116
|{y}
117
117
|{n}
118
118
119
-
|<<agent-policy-http-monitoring>>
120
-
|{y}
121
-
|{n}
122
-
123
119
|<<agent-policy-log-level>>
124
120
|{y}
125
121
|{n}
@@ -310,19 +306,63 @@ Note that adding custom tags is not supported for a small set of inputs:
310
306
311
307
[discrete]
312
308
[[change-policy-enable-agent-monitoring]]
313
-
== Enable agent monitoring
309
+
== Configure agent monitoring
314
310
315
-
Use this setting to collect monitoring logs and metrics from {agent}. All monitoring data will be written to the specified **Default namespace**.
311
+
Use these settings to collect monitoring logs and metrics from {agent}. All monitoring data will be written to the specified **Default namespace**.
316
312
317
313
. In {fleet}, click **Agent policies**.
318
314
Select the name of the policy you want to edit.
319
315
320
-
. Click the **Settings** tab and scroll to **Enable agent monitorings**.
316
+
. Click the **Settings** tab and scroll to **Agent monitoring**.
321
317
322
318
. Select whether to collect agent logs, agent metrics, or both, from the {agents} that use the policy.
323
-
319
+
+
324
320
When this setting is enabled an {agent} integration is created automatically.
325
321
322
+
. Expand the **Advanced monitoring options** section to access <<advanced-agent-monitoring-settings,advanced settings>>.
323
+
324
+
. Save your changes for the updated monitoring settings to take effect.
325
+
326
+
[discrete]
327
+
[[advanced-agent-monitoring-settings]]
328
+
=== Advanced agent monitoring settings
329
+
330
+
**HTTP monitoring endpoint**
331
+
332
+
Enabling this setting exposes a `/liveness` API endpoint that you can use to monitor {agent} health according to the following HTTP codes:
333
+
334
+
* `200`: {agent} is healthy. The endpoint returns a `200` OK status as long as {agent} is responsive and can process configuration changes.
335
+
* `500`: A component or unit is in a failed state.
336
+
* `503`: The agent coordinator is unresponsive.
337
+
338
+
You can pass a `failon` parameter to the `/liveness` endpoint to determine what component state will result in a `500` status. For example, `curl 'localhost:6792/liveness?failon=degraded'` will return `500` if a component is in a degraded state.
339
+
340
+
The possible values for `failon` are:
341
+
342
+
* `degraded`: Return an error if a component is in a degraded state or failed state, or if the agent coordinator is unresponsive.
343
+
* `failed`: Return an error if a unit is in a failed state, or if the agent coordinator is unresponsive.
344
+
* `heartbeat`: Return an error only if the agent coordinator is unresponsive.
345
+
346
+
If no `failon` parameter is provided, the default `failon` behavior is `heartbeat`.
347
+
348
+
The HTTP monitoring endpoint can also be link:https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#define-a-liveness-http-request[used with Kubernetes], to restart the container for example.
349
+
350
+
When you enable this setting, you need to provide the host URL and port where the endpoint can be accessed. Using the default `localhost` is recommended.
351
+
352
+
When the HTTP monitoring endpoint is enabled you can also select to **Enable profiling at `/debug/pprof`**. This controls whether the {agent} exposes the `/debug/pprof/` endpoints together with the monitoring endpoints.
353
+
354
+
The heap profiles available from `/debug/pprof/` are included in <<elastic-agent-diagnostics-command,{agent} diagnostics>> by default. CPU profiles are also included when the `--cpu-profile` option is included. For full details about the profiles exposed by `/debug/pprof/` refer to the link:https://pkg.go.dev/net/http/pprof[pprof package documentation].
355
+
356
+
Profiling at `/debug/pprof` is disabled by default. Data produced by these endpoints can be useful for debugging but present a security risk. It's recommended to leave this option disabled if the monitoring endpoint is accessible over a network.
357
+
358
+
**Diagnostics rate limiting**
359
+
360
+
You can set a rate limit for the action handler for diagnostics requests coming from {fleet}. The setting affects only {fleet}-managed {agents}. By default, requests are limited to an interval of `1m` and a burst value of `1`. This setting does not affect diagnostics collected through the CLI.
361
+
362
+
**Diagnostics file upload**
363
+
364
+
This setting configures retries for the file upload client handling diagnostics requests coming from {fleet}. The setting affects only {fleet}-managed {agents}. By default, a maximum of `10` retries are allowed with an initial duration of `1s` and a backoff duration of `1m`. The client may retry failed requests with exponential backoff.
365
+
326
366
[discrete]
327
367
[[change-policy-output]]
328
368
== Change the output of a policy
@@ -414,22 +454,6 @@ Select the name of the policy you want to edit.
414
454
415
455
. Set **Limit CPU usage** as needed. For example, to limit Go processes supervised by {agent} to two operating system threads each, set this value to `2`.
416
456
417
-
[discrete]
418
-
[[agent-policy-http-monitoring]]
419
-
== Override the default monitoring port
420
-
421
-
You can override the default port that {agent} uses to send monitoring data. It's useful to be able to adjust this setting if you have an application running on the machine on which the agent is deployed, and that is using the same port.
422
-
423
-
. In {fleet}, click **Agent policies**.
424
-
Select the name of the policy you want to edit.
425
-
426
-
. Click the **Settings** tab and scroll to **Advanced settings**.
427
-
428
-
//. Set **Agent HTTP monitoring** setting to enabled, and then specify a host and port for the monitoring data output.
429
-
. Specify a host and port for the monitoring data output.
430
-
431
-
//. Enable **buffer.enabled** if you'd like {agent} and {beats} to collect metrics into an in-memory buffer and expose these through a `/buffer` endpoint. This data can be useful for debugging or if the {agent} has issues communicating with {es}. Enabling this option may slightly increase process memory usage.
Copy file name to clipboardExpand all lines: docs/en/ingest-management/fleet/monitor-elastic-agent.asciidoc
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -226,6 +226,8 @@ monitoring settings for all agents enrolled in a specific agent policy:
226
226
. Under **Agent monitoring**, deselect (or select) one or both of these
227
227
settings: **Collect agent logs** and **Collect agent metrics**.
228
228
229
+
. Under **Advanced monitoring options** you can configure additional settings including an HTTP monitoring endpoint, diagnostics rate limiting, and diagnostics file upload limits. Refer to <<change-policy-enable-agent-monitoring,configure agent monitoring>> for details.
230
+
229
231
. Save your changes.
230
232
231
233
To turn off agent monitoring when creating a new agent policy:
0 commit comments