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: reference/fleet/providers.md
+6-7Lines changed: 6 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,10 +11,9 @@ products:
11
11
12
12
# {{agent}} providers [providers]
13
13
14
-
Providers supply key-value pairs for variable substitution and conditional logic. In other words, they define dynamic values {{agent}} can use when building configurations.
14
+
Providers supply key-value pairs for variable substitution and conditional logic. They define dynamic values that {{agent}} uses when building configurations.
15
15
16
-
Each provider’s keys are automatically grouped under the provider name within the {{agent}} context. For example, if the `foo` provider supplies `{"key1": "value1", "key2": "value2"}`, {{agent}} stores these key-value pairs as `{"foo": {"key1": "value1", "key2": "value2"}}`.
17
-
You can then reference the values using the `${foo.key1}` and `${foo.key2}` variables.
16
+
{{agent}} uses two kinds of providers: [context providers](#context-providers) and [dynamic providers](#dynamic-providers). Each provider’s keys are automatically grouped under the provider name in the {{agent}} context. For example, if the `foo` provider supplies `{"key1": "value1", "key2": "value2"}`, {{agent}} stores these key-value pairs as `{"foo": {"key1": "value1", "key2": "value2"}}`. You can then reference the values using the `${foo.key1}` and `${foo.key2}` variables.
18
17
19
18
How you can configure and use {{agent}} providers depends on whether you're running a standalone or a {{fleet}}-managed {{agent}}. For more information, refer to:
20
19
@@ -24,14 +23,14 @@ How you can configure and use {{agent}} providers depends on whether you're runn
24
23
25
24
## Provider types
26
25
27
-
{{agent}} supports two types of providers: [context](#context-providers) and [dynamic](#dynamic-providers).
26
+
{{agent}} supports two types of providers: [context providers](#context-providers) and [dynamic providers](#dynamic-providers).
28
27
29
28
30
29
### Context providers [context-providers]
31
30
32
31
Context providers supply the current context of the running {{agent}} such as agent information (ID, version), host information (hostname, IP addresses), and environment information (environment variables).
33
32
34
-
These providers supply only a single key-value mapping. They are generally static, although this is not required. If the key's value changes, the entire configuration is re-evaluated.
33
+
These providers expose a single key-value mapping per {{agent}} instance, and {{agent}} updates this mapping when the underlying context changes. When a context value changes, {{agent}} re-evaluates the configuration.
35
34
36
35
To ensure consistency and clarity across documentation and projects, context providers use the {{product.ecs}} naming conventions.
37
36
@@ -47,7 +46,7 @@ To ensure consistency and clarity across documentation and projects, context pro
47
46
48
47
### Dynamic providers [dynamic-providers]
49
48
50
-
Dynamic providers supply an array of multiple key-value mappings. Each key-value mapping is combined with the previous context provider’s key and value mapping which provides a new unique mapping that is used to generate a configuration.
49
+
Dynamic providers supply multiple key-value mappings where each mapping represents a separate item or resource (such as a container or pod). When rendering configurations, {{agent}} combines each mapping with the values from context providers, and for every mapping that matches a configuration template or condition, it creates a separate configuration instance and substitutes any dynamic variables (for example, `${docker.container.id}` or `${kubernetes.pod.ip}`) with values from that mapping. This allows {{agent}} to automatically add, update, or remove inputs as your environment changes.
51
50
52
51
{{agent}} supports the following dynamic providers:
53
52
@@ -58,7 +57,7 @@ Dynamic providers supply an array of multiple key-value mappings. Each key-value
58
57
59
58
## Configure providers on standalone {{agent}} [configure-providers-standalone-agent]
60
59
61
-
On standalone {{agent}}, providers can be configured through the top-level `providers` key in the `elastic-agent.yml` configuration file. By default, all providers are enabled, but {{agent}} runs them only if they are referenced in the configuration file or in an {{agent}} policy. Disabled providers are not run even if they are referenced. If a provider cannot connect, no mappings are produced.
60
+
On standalone {{agent}}, providers can be configured through the top-level `providers` key in the `elastic-agent.yml` configuration file. All registered providers are enabled by default, but {{agent}} runs them only if they are referenced in the configuration file or in an {{agent}} policy. Disabled providers are not run even if they are referenced. If a provider cannot connect, no mappings are produced.
62
61
63
62
You can enable, disable, and configure provider settings as needed. All providers are prefixed without name collisions. In the configuration, the name of the provider is in the key.
0 commit comments