输出插件参数以将数据发送到IBM Cloud Logs实例
您可以使用配置输出插件的参数列表,以将数据发送到IBM Cloud Logs中的日志记录代理实例。
FluentBit参数
| 键 | 描述 | 缺省值 | 价值选择 | 必需 |
|---|---|---|---|---|
Name |
插件的名称。 必须设置为 logger-icl-output-plugin |
不适用 | logger-icl-output-plugin |
是 |
Id |
插件的唯一标识。 | 不适用 | 任何字符串 | 是 |
Match |
用于指定如何匹配事件。 | 不适用 | 任何字符串 | 是 |
Retry_Limit |
如果插件无法将数据发送到 Cloud Logs,则重试处理。‘code1 如果要永远重试,请设置 False ,否则设置为整数值。有关如何配置重试的更多信息,请参阅 此处 |
1 | False 或 N >= 1 |
是 |
Workers |
发送到IBM Cloud Logs的并发工作线程数 为了增加发送到IBM Cloud Logs的日志的吞吐量,您可以增加从每个代理发送的并发线程数。'code1 更多信息 |
1 | 一个或多个 | 否 |
连接参数
| 键 | 描述 | 缺省值 | 价值选择 | 必需 |
|---|---|---|---|---|
Target_Host |
用于连接的接收主机名 | 不适用 | 任何 URL 端点 | 是 |
Target_Port |
用于连接的接收端口 | 443 |
任意端口号 | 否 |
Target_Path |
用于连接URL 路径 | /logs/v1/singles |
任何字符串 | 否 |
日志记录参数
| 键 | 描述 | 缺省值 | 价值选择 | 必需 |
|---|---|---|---|---|
Logging_Level |
指定插件中使用的日志级别 | info |
debuginfoerror |
否 |
Package_Size |
指定包大小(以 KB 或 MB 为单位) | 2 |
任意数字后跟单位,例如 2MB, 10KB。必须小于 2MB |
否 |
认证参数
| 键 | 描述 | 缺省值 | 价值选择 | 必需 |
|---|---|---|---|---|
Authentication_Mode |
指定认证模式 | TrustedProfile |
TrustedProfileIAMAPIKey |
否 |
IAM_Environment |
指定用于身份验证的 IAM 环境 | Production |
Production指定公共端点 "iam.cloud.ibm.com"
"" "" |
否 |
IAM_Host |
自定义 IAM 环境的 IAM 主机名 | 不适用 | 完全合格的 IAM 主机名,例如:"private.eu-de.iam.cloud.ibm.com |
仅当“IAM_Environment 设置为”Custom 时使用 |
CR_Token_Mount_Path |
CRToken 所在的路径 | /var/run/secrets/tokens/vault-token |
任何字符串 | false - 仅当 Authentication_Mode 设置为TrustedProfile时使用 |
Trusted_Profile_ID |
要使用的受信任配置文件的 ID | 不适用 | 任何字符串 | true - 仅当 Authentication_Mode 设置为TrustedProfile时使用 |
当 Authentication_Mode 设置为 IAMAPIKey 时,请考虑以下信息:
- 必须在名为
IAM_API_KEY的环境变量中指定 API 密钥。 - 如果
IAM_API_KEY变量中没有提供值,插件初始化将失败。
Fluentbit 代理工作站配置注意事项
worker"在 "日志记录代理的上下文中代表一个 CPU 线程,可供 "日志记录代理处理日志。
您可以在输出插件配置中配置可用 Worker 的数量。
- 在流畅位默认配置中,"
Workers=1是默认配置,它适用于生成日志量小于1MB/sec工作负载。 - 在日志记录量较大(超过 1 MB/秒)的环境中,可能需要增加 "
Workers配置,以便输出插件能够处理消耗的日志。 - Openshift 和 Kubernetes 部署的Helm图表配置了 4 个工作程序,因为这通常对于大多数Kubernetes工作负载来说是一个良好的设置。
如果您使用Helm图表,请使用 outputWorkers Helm变量来管理输出插件的 Workers 设置。
在您的环境中设置 Workers 值时,请注意以下几点:
-
将工作程序数量从 4 个减少到 2 个可能会降低日志记录代理的 CPU 要求。
-
在Kubernetes环境中,将工作程序数量增加到 4 个以上并且不增加 CPU 限制通常不会导致日志记录代理处理更多的日志。 当 CPU 达到一定程度时,吞吐量将会受到限制,因此也必须增加吞吐量。
-
如果您在日志记录代理日志中看到消息报告
[input] pausing tail紧接着是[input] resume tail这表明发送日志的输出插件无法跟上生成的日志量。 如果 CPU 使用率尚未达到定义的 CPU 限制,那么增加工作器数量通常会增加吞吐量。 如果 CPU 使用率接近限制,那么除了增加工作器数量之外,还需要增加 CPU 限制。 如果每小时发出几次[input] pausing tail消息则没问题。 如果此消息每分钟出现多次,您应该考虑更改配置。 -
如果您看到消息
[ warn] [input:tail:tail.0] purged rotated file while data ingestion is paused, consider increasing rotate_wait,这通常表明输入量明显快于代理的处理速度。 如果无法增加工作器数量或 CPU(或两者)数量,将导致日志丢失,因为由于文件轮换而不再处理轮换的文件并且提取已暂停。 如果遇到此错误,则需要增加工作者或 CPU 限制(或两者)。