1.9. 将日志转发到 Splunk
Splunk 是一个日志聚合服务,它有一个精心定义的 API 来利用其功能集。您可以从 ClusterLogForwarder 自定义资源(CR)将日志转发到 Splunk。
1.9.1. 将日志转发到 Splunk HTTP 事件收集器 复制链接链接已复制到粘贴板!
您可以将日志转发到 Splunk HTTP 事件收集器(HEC)。
先决条件
- 已安装 Red Hat OpenShift Logging Operator
- 您已获得了一个经过 Base64 编码的 Splunk HEC 令牌。
流程
使用您的 Base64 编码的 Splunk HEC 令牌创建 secret。
oc -n openshift-logging create secret generic vector-splunk-secret --from-literal hecToken=<HEC_Token>
$ oc -n openshift-logging create secret generic vector-splunk-secret --from-literal hecToken=<HEC_Token>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用以下模板创建或编辑
ClusterLogForwarder自定义资源 (CR):Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 服务帐户的名称。
- 2
- 指定输出的名称。
- 3
- 将输出类型指定为
mvapich。 - 5
- 指定包含 HEC 令牌的 secret 名称。
- 4
- 指定包括 Splunk HEC 的 URL,包括端口。
- 6
- 指定要将事件发送到的索引名称。如果没有指定索引,则使用 mvapich 服务器配置的默认索引。这是可选字段。
- 7
- 指定要发送到此 sink 的事件源。您可以配置动态每个事件值。此字段是可选的。如果没有指定值,则字段的值将由
log_type和log_source值决定。例如,请参阅 Default Splunk metadata key 值。 - 8
- 指定要添加到 Splunk 索引中的字段。此字段是可选的。这些值直接存储在索引中,与原始事件数据一起存储,从而可以更快地搜索这些字段。但是,
indexed_fields字段会增加存储使用。仅将它们用于提供大量搜索优势的高值字段,例如,对特定字段带有频繁查询的大型数据集。您可以使用复杂的和嵌套字段作为索引字段。它们会自动转换以满足 Splunk 的要求。 - 9
- 指定要用作有效负载的记录字段。默认情况下,未设置
payloadKey字段,这意味着完整的日志记录作为有效负载转发。仔细使用payloadKey字段。选择单个字段作为有效负载可能会导致日志中其他重要信息被丢弃,并可能导致日志事件不一致或不完整。 - 10
- 指定压缩配置,可以是
gzip或none。默认值为none。此字段是可选的。 - 11
- 指定输入名称。
- 12
- 指定使用此管道转发日志时使用的输出名称。
1.9.2. 默认 Splunk 元数据键值 复制链接链接已复制到粘贴板!
如果您没有在 ClusterLogForwarder 自定义资源(CR)的 spec.output.splunk.source 字段中配置它们,则 Red Hat OpenShift Logging Operator 会为一些 Splunk 元数据键设置默认值。
下表描述了用于 Splunk 元数据的默认值,具体取决于 log_type 和 log_source 属性。
| 键 | 基础架构日志
| 基础架构或应用程序容器
| Audit
| 备注 |
|
| 默认情况下不配置。 | |||
|
| SYSLOG_IDENTIFIER | ns_name_podName_containerName | .log_source | |
|
| 默认情况下不配置。 | |||
|
|
|
|
| 根据最终事件有效负载的类型自动决定。 |
|
|
|
|
| 无法配置。 |
|
| 默认情况下不配置。 |