- Fleet 和 Elastic Agent 指南其他版本
- Fleet 和 Elastic Agent 概述
- Beats 和 Elastic Agent 功能
- 快速入门
- 从 Beats 迁移到 Elastic Agent
- 部署模型
- 安装 Elastic Agent
- 安装 Fleet 管理的 Elastic Agent
- 安装独立的 Elastic Agent
- 在容器化环境中安装 Elastic Agent
- 在容器中运行 Elastic Agent
- 在 Fleet 管理的 Kubernetes 上运行 Elastic Agent
- 使用 Helm 在 Kubernetes 上安装 Elastic Agent
- 示例:使用 Helm 在 Kubernetes 上安装独立的 Elastic Agent
- 示例:使用 Helm 在 Kubernetes 上安装 Fleet 管理的 Elastic Agent
- Fleet 管理的高级 Elastic Agent 配置
- 在 Elastic Agent 上配置 Kubernetes 元数据增强
- 在 Fleet 管理的 GKE 上运行 Elastic Agent
- 在 Fleet 管理的 Amazon EKS 上运行 Elastic Agent
- 在 Fleet 管理的 Azure AKS 上运行 Elastic Agent
- 在 Kubernetes 上运行独立的 Elastic Agent
- 在 Kubernetes 上扩展 Elastic Agent
- 在 Kubernetes 集成中使用自定义摄取管道
- 环境变量
- 将 Elastic Agent 作为 OTel 收集器运行
- 在没有管理权限的情况下运行 Elastic Agent
- 从 MSI 包安装 Elastic Agent
- 安装布局
- 气隙环境
- 将代理服务器与 Elastic Agent 和 Fleet 一起使用
- 从边缘主机卸载 Elastic Agent
- 在边缘主机上启动和停止 Elastic Agent
- Elastic Agent 配置加密
- 安全连接
- 在 Fleet 中管理 Elastic Agent
- 配置独立的 Elastic Agent
- 创建独立的 Elastic Agent 策略
- 配置文件结构
- 输入
- 提供程序
- 输出
- SSL/TLS
- 日志记录
- 功能标志
- Agent 下载
- 配置文件示例
- 授予独立的 Elastic Agent 对 Elasticsearch 的访问权限
- 示例:将独立的 Elastic Agent 与 Elastic Cloud Serverless 一起使用来监控 nginx
- 示例:将独立的 Elastic Agent 与 Elasticsearch Service 一起使用来监控 nginx
- 调试独立的 Elastic Agent
- 使用 Elastic Agent 进行 Kubernetes 自动发现
- 监控
- 参考 YAML
- 管理集成
- 定义处理器
- 处理器语法
- add_cloud_metadata
- add_cloudfoundry_metadata
- add_docker_metadata
- add_fields
- add_host_metadata
- add_id
- add_kubernetes_metadata
- add_labels
- add_locale
- add_network_direction
- add_nomad_metadata
- add_observer_metadata
- add_process_metadata
- add_tags
- community_id
- convert
- copy_fields
- decode_base64_field
- decode_cef
- decode_csv_fields
- decode_duration
- decode_json_fields
- decode_xml
- decode_xml_wineventlog
- decompress_gzip_field
- detect_mime_type
- dissect
- dns
- drop_event
- drop_fields
- extract_array
- fingerprint
- include_fields
- move_fields
- parse_aws_vpc_flow_log
- rate_limit
- registered_domain
- rename
- replace
- script
- syslog
- timestamp
- translate_sid
- truncate_fields
- urldecode
- 命令参考
- 故障排除
- 发行说明
添加 Nomad 元数据
编辑添加 Nomad 元数据
编辑此功能为技术预览版,可能会在未来的版本中更改或删除。Elastic 将努力修复任何问题,但技术预览版的功能不受官方 GA 功能的支持 SLA 的约束。
add_nomad_metadata
处理器添加包含在 Nomad 中部署的应用程序的相关元数据的字段。
每个事件都会使用以下信息进行注释
- 分配名称、标识符和状态
- 作业名称和类型
- 部署作业的命名空间
- 运行分配的代理所在的数据中心和区域。
示例
编辑- add_nomad_metadata: ~
配置设置
编辑Elastic Agent 处理器在摄取管道之前执行,这意味着它们处理原始事件数据,而不是发送到 Elasticsearch 的最终事件。有关相关限制,请参阅使用处理器的限制有哪些?
名称 | 必需 | 默认值 | 描述 |
---|---|---|---|
|
否 |
|
用于请求元数据的代理 API 的 URL。 |
|
否 |
要监视的命名空间。如果设置,则只会注释此命名空间中分配的事件。 |
|
|
否 |
要监视的区域。如果设置,则只会注释此区域中分配的事件。 |
|
|
否 |
与代理 API 连接时要使用的 SecretID。这是一个应用于令牌的示例 ACL 策略。 namespace "*" { policy = "read" } node { policy = "read" } agent { policy = "read" } |
|
|
否 |
|
用于更新缓存元数据的间隔。 |
|
否 |
|
在删除分配后清理分配的相关资源之前等待的时间。如果您希望在删除分配后收到事件(在收集日志时会发生这种情况),则此操作很有用。 |
|
否 |
|
要监视的资源的范围。指定 |
|
否 |
使用 例如,当 Elastic Agent 从群集中的所有分配收集事件时,可以使用以下配置 - add_nomad_metadata: scope: global |
索引器和匹配器
编辑索引器和匹配器用于将事件中的字段与实际元数据相关联。Elastic Agent 使用此信息来了解要在每个事件中包含哪些元数据。
索引器
编辑索引器使用分配元数据为每个 Pod 创建唯一标识符。
可用的索引器有
-
allocation_name
- 按其名称和命名空间(如
<命名空间>/<名称>
)标识分配 -
allocation_uuid
- 按其唯一标识符标识分配。
匹配器
编辑匹配器用于构造与索引创建的标识符匹配的查找键。
field_format
编辑使用使用可以包含事件字段的字符串格式创建的键查找分配元数据。
此匹配器有一个选项 format
来定义字符串格式。此字符串格式可以包含事件中任何字段的占位符。
例如,以下配置使用 allocation_name
索引器按其名称和命名空间标识分配元数据,并使用事件中存在的自定义字段作为匹配键
- add_nomad_metadata: ... default_indexers.enabled: false default_matchers.enabled: false indexers: - allocation_name: matchers: - field_format: format: '%{[labels.nomad_namespace]}/%{[fields.nomad_alloc_name]}'
fields
编辑使用某些特定字段的值作为键查找分配元数据。定义多个字段时,将使用事件中包含的第一个字段。
此匹配器有一个选项 lookup_fields
来定义将用于查找的字段值。
例如,以下配置使用 allocation_uuid
索引器标识分配,并定义一个匹配器,该匹配器使用可以在其中找到分配 UUID 的一些字段进行查找,这是它在事件中找到的第一个字段
- add_nomad_metadata: ... default_indexers.enabled: false default_matchers.enabled: false indexers: - allocation_uuid: matchers: - fields: lookup_fields: ['host.name', 'fields.nomad_alloc_uuid']
logs_path
编辑使用从存储在 log.file.path
字段中的日志路径提取的标识符查找分配元数据。
此匹配器具有一个可选的 logs_path
选项,其中包含包含本地代理日志的目录的基路径。
当日志收集在 /var/lib/nomad
下时,默认配置能够使用分配 UUID 查找元数据。
例如,当从 /var/lib/NomadClient001/alloc/<分配 UUID>/alloc/logs/...
收集日志时,以下配置将使用分配 UUID。
- add_nomad_metadata: ... default_indexers.enabled: false default_matchers.enabled: false indexers: - allocation_uuid: matchers: - logs_path: logs_path: '/var/lib/NomadClient001'