日志记录代理
您可以配置 日志记录代理 以直接收集基础架构和应用程序日志并将其发送到 IBM Cloud Logs 实例。
日志记录代理 基于 Fluent Bit 开源代理,用于收集和处理日志数据。 您可以在支持的环境中部署 日志记录代理 并管理来自不同来源和格式的数据。
下图显示了目的地为 IBM Cloud Logs 实例时的高级视图:
{: caption="的日志流来自代理的日志流来自" caption-side="bottom"}的日志流
关于 日志记录代理
使用“日志记录代理向”IBM Cloud Logs服务发送日志时,发送的日志必须包含“applicationName 和”subsystemName 元数据字段的值。 默认情况下,配置 日志记录代理 时,代理会为这些字段设置默认值。 您可以配置自己的自定义值来替换默认值。
- 有关默认值的更多信息,请参阅 元数据字段。
- 有关如何配置代理的详细信息,请参阅 配置代理以设置 applicationName 和 subsystemName 元数据字段的自定义值。
- 有关 日志记录代理 如何解析严重性的更多信息,请参阅 了解 日志记录代理 如何解析严重性。
日志记录代理 用于协调环境
您可以将 日志记录代理 部署到 Red Hat OpenShift on IBM Cloud 或 IBM Cloud Kubernetes Service 集群上。
您可以在内部、IBM Cloud或其他云中运行的群集上部署代理。
日志记录代理是一个守护进程集,设计用于在群集的每个节点上运行一个 pod。 每个 pod 将为其运行的节点收集相关日志。 日志记录代理 将把这些日志转发到 IBM Cloud Logs 服务。
默认情况下,日志记录代理会监控和收集与 "/var/log/containers/ 中指定路径模式匹配的文件的日志数据,并排除与排除模式匹配的文件的日志。 刷新间隔设置为 10 秒。 您可以在配置地图 logger-agent-config 中更改这些值以及更多。 有关更多信息,请参阅过滤日志。
您可以在以下平台部署代理:
-
Kubernetes 集群
有关更多信息,请参阅 使用 Helm 图表在 Kubernetes 集群上部署 日志记录代理。
-
OpenShift 集群
有关详细信息,请参阅 在 OpenShift 上使用 Helm 图表部署 日志记录代理。
下图显示了日志源为 Kubernetes 或 OpenShift 群集时的高级视图:
{: caption="的日志流来自群集的日志流来自" caption-side="bottom"}的日志流
日志记录代理 非编排环境
您可以在Linux和 Windows 环境中部署日志记录代理。
您必须配置“日志记录代理监控的日志文件,并将其数据转发给”IBM Cloud Logs实例。
该代理使用 "systemd 作为Linux守护进程运行。 您可以使用 "systemctl 来管理代理。
支持下列平台:
- RHEL 8
- RHEL 9
- Ubuntu 20
- Ubuntu 22
- Debian 11
- Debian 12
- Windows Server 2016
- Windows Server 2019
- Windows Server 2022
- Windows 10 企业版
- Windows 11 企业版
更多信息,请参阅 在Linux环境中管理代理 或 在 Windows 环境中管理代理。
授权方法
您可以使用服务 ID 或受信任配置文件作为代理与IBM® Cloud Logs服务进行身份验证时使用的身份。
为计划部署代理的环境选择支持的授权方法:
| 环境 | 服务标识 API 密钥 | 可信概要文件 |
|---|---|---|
| IBM Cloud Kubernetes集群 | 支持 | 支持 |
| IBM Cloud OpenShift集群 | 支持 | 支持 |
| IBM Cloud LinuxVSI | 支持 | 支持 |
| IBM CloudWindows VSI | 支持 | 支持 |
| 内部Kubernetes集群 | 支持 | 不支持 |
| 内部OpenShift集群 | 支持 | 不支持 |
| 内部Linux服务器 | 支持 | 不支持 |
| 其他云Kubernetes集群 | 支持 | 不支持 |
| 其他云OpenShift集群 | 支持 | 不支持 |
| 其他云Linux服务器 | 支持 | 不支持 |
只有当计算资源和实例位于同一账户中时,您才能使用受托配置文件对 IBM Cloud 资源和 IBM Cloud Logs 实例进行身份验证。
如果要从 "Kubernetes群集发送日志,而该群集是在与 "IBM Cloud Logs实例不同的 "IBM Cloud账户中配置的,则只能使用服务 ID API 密钥作为代理的授权方法。
有关如何生成 API 密钥的更多信息,请参阅 通过使用服务 ID 进行身份验证生成用于摄取的 API 密钥。
有关如何创建受信任配置文件的更多信息,请参阅 生成用于摄取的受信任配置文件。
支持的格式
代理支持以下输入格式
- JSON
- apache
- apache2
- apache_error
- nginx
- docker(JSON,带有 docker 特有的时间戳格式)
- CRI
- 系统日志