2.4. 配置日志转发
ClusterLogForwarder
(CLF)允许用户配置将日志转发到各种目的地。它提供从不同来源选择日志消息的灵活方法,通过管道发送或过滤它们,并将它们转发到一个或多个输出。
ClusterLogForwarder 的主要功能
- 使用输入选择日志消息
- 使用输出将日志转发到外部目的地
- 使用过滤器过滤、转换和丢弃日志消息
- 定义日志转发管道连接输入、过滤器和输出
2.4.1. 设置日志集合 复制链接链接已复制到粘贴板!
此 Cluster Logging 发行版本要求管理员为与 ClusterLogForwarder 关联的服务帐户明确授予日志收集权限。在以前的版本中,不需要传统的日志场景由 ClusterLogging 以及一个可选的 ClusterLogForwarder.logging.openshift.io 资源组成。
Red Hat OpenShift Logging Operator 提供 collect-audit-logs
、collect-application-logs
和 collect-infrastructure-logs
集群角色,使收集器能够分别收集审计日志、应用程序日志和基础架构日志。
通过将所需的集群角色绑定到服务帐户来设置日志收集。
2.4.1.1. 传统服务帐户 复制链接链接已复制到粘贴板!
要使用现有的旧服务帐户 logcollector
,请创建以下 ClusterRoleBinding :
oc adm policy add-cluster-role-to-user collect-application-logs system:serviceaccount:openshift-logging:logcollector
$ oc adm policy add-cluster-role-to-user collect-application-logs system:serviceaccount:openshift-logging:logcollector
oc adm policy add-cluster-role-to-user collect-infrastructure-logs system:serviceaccount:openshift-logging:logcollector
$ oc adm policy add-cluster-role-to-user collect-infrastructure-logs system:serviceaccount:openshift-logging:logcollector
另外,如果收集审计日志,请创建以下 ClusterRoleBinding :
oc adm policy add-cluster-role-to-user collect-audit-logs system:serviceaccount:openshift-logging:logcollector
$ oc adm policy add-cluster-role-to-user collect-audit-logs system:serviceaccount:openshift-logging:logcollector
2.4.1.2. 创建服务帐户 复制链接链接已复制到粘贴板!
先决条件
-
Red Hat OpenShift Logging Operator 安装在
openshift-logging
命名空间中。 - 有管理员权限。
步骤
- 为收集器创建服务帐户。如果要将日志写入需要令牌进行身份验证的存储,则必须在服务帐户中包含令牌。
将适当的集群角色绑定到服务帐户:
绑定命令示例
oc adm policy add-cluster-role-to-user <cluster_role_name> system:serviceaccount:<namespace_name>:<service_account_name>
$ oc adm policy add-cluster-role-to-user <cluster_role_name> system:serviceaccount:<namespace_name>:<service_account_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.4.1.2.1. 服务帐户的集群角色绑定 复制链接链接已复制到粘贴板!
role_binding.yaml 文件将 ClusterLogging operator 的 ClusterRole 绑定到特定的 ServiceAccount,允许其在集群范围管理 Kubernetes 资源。
- 1
- roleRef:引用绑定应用到的 ClusterRole。
- 2
- apiGroup :指示 RBAC API 组,指定 ClusterRole 是 Kubernetes 的 RBAC 系统的一部分。
- 3
- kind:指定引用的角色是一个 ClusterRole,它将应用集群范围的。
- 4
- name :绑定到 ServiceAccount 的 ClusterRole 名称,这里是 cluster-logging-operator。
- 5
- subjects :定义从 ClusterRole 授予权限的实体(用户或服务帐户)。
- 6
- kind:指定主体是一个 ServiceAccount。
- 7
- Name :被授予权限的 ServiceAccount 的名称。
- 8
- namespace :指示 ServiceAccount 所在的命名空间。
2.4.1.2.2. 编写应用程序日志 复制链接链接已复制到粘贴板!
write-application-logs-clusterrole.yaml 文件定义了一个 ClusterRole,它授予将应用程序日志写入 Loki 日志记录应用程序的权限。
- 1
- rules:指定此 ClusterRole 授予的权限。
- 2
- apiGroups :请参阅与 Loki 日志记录系统相关的 API 组 loki.grafana.com。
- 3
- loki.grafana.com :用于管理 Loki 相关资源的 API 组。
- 4
- resources :ClusterRole 授予权限的用户的资源类型。
- 5
- application: 引用 Loki 日志记录系统中的应用程序资源。
- 6
- resourceNames:指定此角色可以管理的资源的名称。
- 7
- logs :引用可以创建的日志资源。
- 8
- verbs :资源允许的操作。
- 9
- create: 授予在 Loki 系统中创建新日志的权限。
2.4.1.2.3. 编写审计日志 复制链接链接已复制到粘贴板!
write-audit-logs-clusterrole.yaml 文件定义了一个 ClusterRole,它授予在 Loki 日志记录系统中创建审计日志的权限。
2.4.1.2.4. 编写基础架构日志 复制链接链接已复制到粘贴板!
write-infrastructure-logs-clusterrole.yaml 文件定义了一个 ClusterRole,它授予在 Loki 日志记录系统中创建基础架构日志的权限。
YAML 示例
2.4.1.2.5. ClusterLogForwarder 编辑器角色 复制链接链接已复制到粘贴板!
clusterlogforwarder-editor-role.yaml 文件定义了一个 ClusterRole,允许用户在 OpenShift 中管理 ClusterLogForwarders。
- 1
- rules:指定此 ClusterRole 授予的权限。
- 2
- apiGroups :请参阅特定于 OpenShift 的 API 组
- 3
- obervability.openshift.io :用于管理可观察性资源的 API 组,如 logging。
- 4
- resources:指定此角色可以管理的资源。
- 5
- clusterlogforwarders :请参阅 OpenShift 中的日志转发资源。
- 6
- verbs :指定 ClusterLogForwarders 上允许的操作。
- 7
- create: Grants 权限来创建新的 ClusterLogForwarders。
- 8
- delete: Grants 权限删除现有 ClusterLogForwarders。
- 9
- get :授予检索有关特定 ClusterLogForwarders 的信息的权限。
- 10
- list :允许列出所有 ClusterLogForwarders。
- 11
- patch :授予部分修改 ClusterLogForwarders 的权限。
- 12
- update: 授予更新现有 ClusterLogForwarders 的权限。
- 13
- watch :授予监控 ClusterLogForwarders 的更改的权限。
2.4.2. 修改收集器中的日志级别 复制链接链接已复制到粘贴板!
要修改收集器中的日志级别,您可以将 observability.openshift.io/log-level
注解设置为 trace
、debug
、info
、warn
、error
和 off
。
日志级别注解示例
2.4.3. 管理 Operator 复制链接链接已复制到粘贴板!
ClusterLogForwarder
资源有一个 managementState
字段,用于控制 Operator 是否主动管理其资源或保留其非受管状态:
- 受管
- (默认)Operator 将驱动日志记录资源以匹配 CLF spec 中所需状态。
- Unmanaged
- Operator 不执行与日志记录组件相关的任何操作。
这样,管理员可以通过将 managementState
设置为 Unmanaged
来临时暂停日志转发。
2.4.4. ClusterLogForwarder 的结构 复制链接链接已复制到粘贴板!
CLF 有一个 spec
部分,其中包含以下关键组件:
- 输入
-
选择要转发的日志消息。来自集群不同部分的内置输入类型
application
,infrastructure
和audit
。您还可以定义自定义输入。 - 输出
- 定义要将日志转发到的目的地。每个输出都有一个唯一的名称和特定于类型的配置。
- Pipelines
- 定义通过过滤器到输出的路径日志从输入中获取。管道具有唯一名称,它由输入、输出和过滤器名称列表组成。
- 过滤器
- 在管道中转换或丢弃日志消息。用户可以定义匹配某些日志字段并丢弃或修改消息的过滤器。过滤器按管道中指定的顺序应用。
2.4.4.1. 输入 复制链接链接已复制到粘贴板!
输入在 spec.inputs
下的阵列中配置。有三个内置输入类型:
- application
- 从所有应用程序容器中选择日志,不包括基础架构命名空间中的日志。
- infrastructure
从节点以及在以下命名空间中运行的基础架构组件中选择日志:
-
default
-
kube
-
openshift
-
包含
kube-
或openshift-
前缀
-
- audit
- 从 OpenShift API 服务器审计日志、Kubernetes API 服务器审计日志、ovn 审计日志和 auditd 的节点审计日志中选择日志。
用户可以定义类型 application
的自定义输入,它们从特定的命名空间选择日志或使用 pod 标签。
2.4.4.2. 输出 复制链接链接已复制到粘贴板!
输出在 spec.outputs
下的一个数组中配置。每个输出都必须具有唯一的名称和类型。支持的类型有:
- azureMonitor
- 将日志转发到 Azure Monitor。
- cloudwatch
- 将日志转发到 AWS CloudWatch。
- elasticsearch
- 将日志转发到外部 Elasticsearch 实例。
- googleCloudLogging
- 将日志转发到 Google Cloud Logging。
- http
- 将日志转发到通用 HTTP 端点。
- kafka
- 将日志转发到 Kafka 代理。
- loki
- 将日志转发到 Loki 日志记录后端。
- lokistack
- 将日志转发到由 Red Hat OpenShift Service on AWS 经典架构身份验证集成的 Loki 和 Web 代理支持的日志。LokiStack 的代理使用 Red Hat OpenShift Service on AWS 经典架构身份验证来强制实施多租户
- otlp
- 使用 OpenTelemetry 协议转发日志。
- splunk
- 将日志转发到 Splunk。
- syslog
- 将日志转发到外部 syslog 服务器。
每种输出类型都有自己的配置字段。
2.4.5. 配置 OTLP 输出 复制链接链接已复制到粘贴板!
集群管理员可以使用 OpenTelemetry 协议(OTLP)输出来收集日志并将其转发到 OTLP 接收器。OTLP 输出使用 OpenTelemetry Observability 框架定义的规格使用 JSON 编码通过 HTTP 发送数据。
OpenTelemetry 协议(OTLP)输出日志转发器只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。
流程
创建或编辑
ClusterLogForwarder
自定义资源(CR),通过添加以下注解来启用使用 OTLP 的转发:ClusterLogForwarder
CR 示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow
OTLP 输出使用 OpenTelemetry 数据模型,它与其他输出类型的 ViaQ 数据模型不同。它遵循 OpenTelemetry Observability 框架定义的 OpenTelemetry Semantic Conventions。
2.4.5.1. Pipelines 复制链接链接已复制到粘贴板!
管道在 spec.pipelines
下的数组中配置。每个管道都必须具有唯一的名称,它由以下组成:
- inputRefs
- 日志应转发到此管道的输入名称。
- outputRefs
- 将日志发送到的输出名称。
- filterRefs
- (可选)要应用的过滤器名称。
filterRefs 的顺序很重要,因为它们会按顺序应用。较早的过滤器可以丢弃不会被后续过滤器处理的消息。
2.4.5.2. 过滤器 复制链接链接已复制到粘贴板!
过滤器在 spec.filters
下的数组中配置。它们可以根据结构化字段的值匹配传入的日志消息,并修改或丢弃它们。
管理员可以配置以下过滤器:
2.4.6. 启用多行异常检测 复制链接链接已复制到粘贴板!
启用容器日志的多行错误检测。
启用此功能可能会对性能有影响,可能需要额外的计算资源或备用日志记录解决方案。
日志解析器通常会错误地将同一个例外中的不同的行识别为不同的例外。这会导致额外的日志条目,以及要跟踪的信息的不完整或不正确。
java 异常示例
java.lang.NullPointerException: Cannot invoke "String.toString()" because "<param1>" is null at testjava.Main.handle(Main.java:47) at testjava.Main.printMe(Main.java:19) at testjava.Main.main(Main.java:10)
java.lang.NullPointerException: Cannot invoke "String.toString()" because "<param1>" is null
at testjava.Main.handle(Main.java:47)
at testjava.Main.printMe(Main.java:19)
at testjava.Main.main(Main.java:10)
-
要启用日志记录来检测多行异常并将其重新编译到单个日志条目中,请确保
ClusterLogForwarder
自定义资源(CR)包含.spec.filters
下的detectMultilineErrors
字段。
ClusterLogForwarder CR 示例
2.4.6.1. 详情 复制链接链接已复制到粘贴板!
当日志消息作为一系列针对一个例外的信息出现时,会将它们合并到一个统一的日志记录中。第一个日志消息的内容被替换为序列中所有消息字段的连接内容。
收集器支持以下语言:
- Java
- JS
- Ruby
- Python
- Golang
- PHP
- Dart
2.4.7. 通过 HTTP 转发日志 复制链接链接已复制到粘贴板!
要启用通过 HTTP 转发日志,在 ClusterLogForwarder
自定义资源(CR)中指定 http
作为输出类型。
2.4.8. 使用 syslog 协议转发日志 复制链接链接已复制到粘贴板!
您可以使用 syslog RFC3164 或 RFC5424 协议将日志副本发送到配置为接受该协议的外部日志聚合器,而非默认的 Elasticsearch 日志存储。您需要配置外部日志聚合器(如 syslog 服务器)来接收来自 Red Hat OpenShift Service on AWS 经典架构的日志。
要使用 syslog 协议配置日志转,,请创建一个 ClusterLogForwarder
自定义资源(CR),并将一个或多个输出输出到使用这些输出的 syslog 服务器和管道。syslog 输出可以使用 UDP、TCP 或 TLS 连接。
先决条件
- 您必须有配置为使用指定协议或格式接收日志数据的日志服务器。
流程
创建或编辑定义
ClusterLogForwarder
CR 对象的 YAML 文件:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 指定输出的名称。
- 2
- 可选:指定 syslog 消息标头的
APP-NAME
部分的值。该值必须符合 Syslog 协议。该值可以是由字段路径后跟||
组成的静态和动态值的组合,然后是另一个字段路径或静态值。最终值的最大长度为 48 个字符。您需要使用一个大括号将动态值括起,值必须后跟一个用||
分隔的静态回退值。静态值只能包含字母数字字符以及短划线、下划线、点和正斜杠。示例值:<value1>-{.<value2>||"none"}。 - 3
- 可选:指定 syslog-msg 标头的
Facility
部分的值。 - 4
- 可选:指定 syslog-msg 标头的
MSGID
部分的值。该值可以是由字段路径后跟||
组成的静态和动态值的组合,然后是另一个字段路径或静态值。最终值的最大长度为 32 个字符。您需要使用一个大括号将动态值括起,值必须后跟一个用||
分隔的静态回退值。静态值只能包含字母数字字符以及短划线、下划线、点和正斜杠。示例值:<value1>-{.<value2>||"none"}。 - 5
- 可选:指定用作有效负载的记录字段。
payloadKey
值必须是单一字段路径,包括在一个大括号{}
中。示例:{.<value>}。 - 6
- 可选:指定 syslog 消息标头的
PROCID
部分的值。该值必须符合 Syslog 协议。该值可以是由字段路径后跟||
组成的静态和动态值的组合,然后是另一个字段路径或静态值。最终值的最大长度为 48 个字符。您需要使用一个大括号将动态值括起,值必须后跟一个用||
分隔的静态回退值。静态值只能包含字母数字字符以及短划线、下划线、点和正斜杠。示例值:<value1>-{.<value2>||"none"}。 - 7
- 可选:设置生成的消息符合的 RFC。该值可以是
RFC3164
或RFC5424
。 - 8
- 可选:为消息设置严重性级别。如需更多信息,请参阅 Syslog 协议。
- 9
- 可选:为日志转发设置交付模式。该值可以是
AtLeastOnce
,也可以是AtMostOnce
。 - 10
- 使用方案指定绝对 URL。有效方案是:
tcp
、tls
和udp
。例如:tls://syslog-receiver.example.com:6514
。 - 11
- 指定控制传输层安全(TLS)客户端连接的选项的设置。
- 12
- 使用管道指定要转发的日志类型:
application
、infrastructure
或audit
。 - 13
- 为管道指定一个名称。
- 14
- 服务帐户的名称。
创建 CR 对象:
oc create -f <filename>.yaml
$ oc create -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.4.8.1. 在消息输出中添加日志消息 复制链接链接已复制到粘贴板!
您可以通过将 enrichment
字段添加到 ClusterLogForwarder
自定义资源(CR),将 namespace_name
、pod_name
和 container_name
元素添加到记录的 message
字段中。
这个配置与 RFC3164 和 RFC5424 兼容。
带有 enrichment: None
的 syslog 信息输出。
2025-03-03T11:48:01+00:00 example-worker-x syslogsyslogserverd846bb9b: {...}
2025-03-03T11:48:01+00:00 example-worker-x syslogsyslogserverd846bb9b: {...}
带有 enrichment: KubernetesMinimal
的 syslog 信息输出。
2025-03-03T11:48:01+00:00 example-worker-x syslogsyslogserverd846bb9b: namespace_name=cakephp-project container_name=mysql pod_name=mysql-1-wr96h,message: {...}
2025-03-03T11:48:01+00:00 example-worker-x syslogsyslogserverd846bb9b: namespace_name=cakephp-project container_name=mysql pod_name=mysql-1-wr96h,message: {...}
2.4.9. 配置内容过滤器以丢弃不需要的日志记录 复制链接链接已复制到粘贴板!
配置 drop
过滤器后,日志收集器会根据过滤器在转发前评估日志流。收集器丢弃与指定配置匹配的不需要的日志记录。
流程
将过滤器的配置添加到
ClusterLogForwarder
CR 中的filters
spec 中。以下示例演示了如何配置
ClusterLogForwarder
CR,以根据正则表达式丢弃日志记录:ClusterLogForwarder
CR 示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 指定过滤器的类型。
drop
过滤器丢弃与过滤器配置匹配的日志记录。 - 2
- 指定应用
drop
过滤器的配置选项。 - 3
- 指定用于评估是否丢弃日志记录的测试配置。
- 如果为测试指定的所有条件都为 true,则测试会通过,记录将被丢弃。
-
当为
drop
过滤器配置指定多个测试时,如果有任何测试通过,则会丢弃记录。 - 如果评估条件时出错,例如,被评估的日志记录中缺少该字段,则条件评估为 false。
- 4
- 指定点分隔的字段路径,它是日志记录中字段的路径。该路径可以包含字母数字字符和下划线 (
a-zA-Z0-9_
),例如.kubernetes.namespace_name
。如果网段包含此范围之外的字符,段必须放在引号内,例如,.kubernetes.labels."foo.bar-bar/baz"
。您可以在单个test
配置中包含多个字段路径,但它们都必须评估为 true 才能通过测试以及要应用的drop
过滤器。 - 5
- 指定正则表达式。如果日志记录与此正则表达式匹配,它们将被丢弃。您可以为单个
field
路径设置matches
或notMatches
条件,但不能同时设置这两个条件。 - 6
- 指定正则表达式。如果日志记录与此正则表达式不匹配,它们将被丢弃。您可以为单个
field
路径设置matches
或notMatches
条件,但不能同时设置这两个条件。 - 7
- 指定
drop
过滤器应用到的管道。
运行以下命令来应用
ClusterLogForwarder
CR:oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
其他示例
下面的额外示例演示了如何将 drop
过滤器配置为仅保留更高优先级的日志记录:
除了在单一 test
配置中包含多个字段路径外,您还可以包含被视为 OR 检查的额外测试。在以下示例中,如果 test
配置评估为 true,则记录将被丢弃。但是,对于第二个 test
配置,两个字段 specs 都必须是 true,才能将其评估为 true :
2.4.10. API 审计过滤器概述 复制链接链接已复制到粘贴板!
OpenShift API 服务器为每个 API 调用生成审计事件,详细说明请求者的请求、响应和请求者的身份,从而导致大量数据。API 审计过滤器使用规则启用非必要事件和事件大小减少,从而提高更易于管理的审计跟踪。规则按顺序检查,检查会在第一个匹配项时停止。事件中包含的数据量由 level
字段的值决定:
-
None
: 事件被丢弃。 -
Metadata
:只包含审计元数据,请求和响应正文会被删除。 -
Request
:包含审计元数据和请求正文,响应正文会被删除。 -
RequestResponse
:包含所有数据:元数据、请求正文和响应正文。响应正文可能非常大。例如,oc get pods -A
生成包含集群中每个 pod 的 YAML 描述的响应正文。
ClusterLogForwarder
自定义资源 (CR) 使用与标准 Kubernetes Audit 策略相同的格式,同时提供以下附加功能:
- 通配符
-
用户、组、命名空间和资源的名称可以在前导或尾部带有
*
星号字符。例如,命名空间openshift-\*
匹配openshift-apiserver
或openshift-authentication
。资源\*/status
匹配Pod/status
或Deployment/status
。 - 默认规则
与策略中任何规则不匹配的事件将被过滤,如下所示:
-
get
、list
和watch
等只读系统事件会被丢弃。 - 服务帐户写入发生在与服务帐户相同的命名空间中的事件将被丢弃。
- 所有其他事件都会被转发,受任何配置的速率限制。
-
要禁用这些默认值,请使用只有一个 level
字段的规则结束您的规则列表,或者添加一条空规则。
- 省略响应代码
-
要省略的整数状态代码列表。您可以使用
OmitResponseCodes
字段(没有创建事件)的 HTTP 状态代码列表根据响应中的 HTTP 状态代码丢弃事件。默认值为[404, 409, 422, 429]
。如果该值为空列表[]
,则不会省略状态代码。
除了 Red Hat OpenShift Service on AWS 经典架构审计策略外,ClusterLogForwarder
CR 审计策略还可以正常工作。ClusterLogForwarder
CR 审计过滤器更改日志收集器转发的内容,并提供按操作动词、用户、组、命名空间或资源过滤的功能。您可以创建多个过滤器,将同一审计流的不同摘要发送到不同的位置。例如,您可以将详细的流发送到本地集群日志存储,并将不太详细的流发送到远程站点。
您必须具有集群角色 collect-audit-logs
才能收集审计日志。以下示例旨在说明审计策略中可能的规则范围,不是推荐的配置。
Audit 策略示例
2.4.11. 在输入 ny 过滤应用程序日志,包括标签表达式或匹配的标签键和值 复制链接链接已复制到粘贴板!
您可以使用 input
选择器,根据标签表达式或匹配的标签键及其值包含应用程序日志。
流程
将过滤器的配置添加到
ClusterLogForwarder
CR 中的input
spec 中。以下示例演示了如何配置
ClusterLogForwarder
CR,使其包含基于标签表达式或匹配的标签键/值的日志:ClusterLogForwarder
CR 示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令来应用
ClusterLogForwarder
CR:oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.4.12. 配置内容过滤器以修剪日志记录 复制链接链接已复制到粘贴板!
配置 prune
过滤器时,日志收集器会根据过滤器在转发前评估日志流。收集器通过删除 pod 注解等低值字段来修剪日志记录。
流程
将过滤器的配置添加到
ClusterLogForwarder
CR 中的prune
spec 中。以下示例演示了如何配置
ClusterLogForwarder
CR,以根据字段路径修剪日志记录:重要如果指定了这两个信息,则首先根据
notIn
数组修剪记录,这优先于in
数组。在使用notIn
数组修剪记录后,会使用in
数组来修剪这些记录。ClusterLogForwarder
CR 示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 指定过滤器的类型。
prune
过滤器根据配置的字段修剪日志记录。 - 2
- 指定应用
prune
过滤器的配置选项。in
和notIn
字段被指定为点分隔字段路径的数组,它们是日志记录中字段的路径。这些路径可以包含字母数字字符和下划线 (a-zA-Z0-9_
),例如.kubernetes.namespace_name
。如果网段包含此范围之外的字符,段必须放在引号内,例如,.kubernetes.labels."foo.bar-bar/baz"
。 - 3
- 可选:此阵列中指定的任何字段都会从日志记录中删除。
- 4
- 可选:没有在此阵列中指定的任何字段都会从日志记录中删除。
- 5
- 指定
prune
过滤器应用到的管道。
注意过滤器显示
log_type
、.log_source
和.message
字段。运行以下命令来应用
ClusterLogForwarder
CR:oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.4.13. 根据源过滤审计和基础架构日志输入 复制链接链接已复制到粘贴板!
您可以使用 input
选择器定义 audit
和 infrastructure
源列表,以收集日志。
流程
添加配置,以在
ClusterLogForwarder
CR 中定义audit
和infrastructure
源。以下示例演示了如何配置
ClusterLogForwarder
CR 以定义audit
和infrastructure
源:ClusterLogForwarder
CR 示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令来应用
ClusterLogForwarder
CR:oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.4.14. 通过包含或排除命名空间或容器名称,在输入中过滤应用程序日志 复制链接链接已复制到粘贴板!
您可以使用 input
选择器根据命名空间和容器名称包含或排除应用程序日志。
流程
添加配置,以在
ClusterLogForwarder
CR 中包含或排除命名空间和容器名称。以下示例演示了如何配置
ClusterLogForwarder
CR 以包含或排除命名空间和容器名称:ClusterLogForwarder
CR 示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意excludes
字段优先于includes
字段。运行以下命令来应用
ClusterLogForwarder
CR:oc apply -f <filename>.yaml
$ oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow