×

流水线运行、任务运行和事件监听器生成的日志存储在其各自的 Pod 中。查看和分析日志对于故障排除和审计非常有用。

但是,无限期保留 Pod 会导致不必要的资源消耗和命名空间混乱。

为了消除对 Pod 的任何依赖以查看流水线日志,您可以使用 OpenShift Elasticsearch Operator 和 OpenShift Logging Operator。即使在删除包含日志的 Pod 之后,这些 Operator 也可以帮助您使用 Elasticsearch Kibana 堆栈查看流水线日志。

先决条件

在尝试在 Kibana 仪表板中查看流水线日志之前,请确保以下事项:

  • 这些步骤由集群管理员执行。

  • 流水线运行和任务运行的日志可用。

  • 已安装 OpenShift Elasticsearch Operator 和 OpenShift Logging Operator。

在 Kibana 中查看流水线日志

要在 Kibana Web 控制台中查看流水线日志:

步骤
  1. 以集群管理员身份登录 OpenShift Container Platform Web 控制台。

  2. 在菜单栏的右上角,单击**网格**图标→**可观察性**→**日志记录**。将显示 Kibana Web 控制台。

  3. 创建索引模式

    1. 在**Kibana** Web 控制台的左侧导航面板中,单击**管理**。

    2. 单击**创建索引模式**。

    3. 在**步骤 1/2:定义索引模式**→**索引模式**下,输入*****模式,然后单击**下一步**。

    4. 在**步骤 2/2:配置设置**→**时间过滤器字段名称**下,从下拉菜单中选择**@timestamp**,然后单击**创建索引模式**。

  4. 添加过滤器

    1. 在**Kibana** Web 控制台的左侧导航面板中,单击**发现**。

    2. 单击**添加过滤器 +** → **编辑查询 DSL**。

      • 对于以下每个示例过滤器,编辑查询并单击**保存**。

      • 过滤器将依次应用。

      1. 过滤与流水线相关的容器

        过滤流水线容器的示例查询
        {
          "query": {
        	"match": {
          	"kubernetes.flat_labels": {
            	"query": "app_kubernetes_io/managed-by=tekton-pipelines",
            	"type": "phrase"
          	}
        	}
          }
        }
      2. 过滤所有不是place-tools容器的容器。作为使用图形下拉菜单而不是编辑查询 DSL 的示例,请考虑以下方法:

        Not place-tools
        图 1. 使用下拉字段进行过滤的示例
      3. 过滤标签中的pipelinerun以突出显示

        过滤标签中pipelinerun以突出显示的示例查询
        {
          "query": {
        	"match": {
          	"kubernetes.flat_labels": {
            	"query": "tekton_dev/pipelineRun=",
            	"type": "phrase"
          	}
        	}
          }
        }
      4. 过滤标签中的pipeline以突出显示

        过滤标签中pipeline以突出显示的示例查询
        {
          "query": {
        	"match": {
          	"kubernetes.flat_labels": {
            	"query": "tekton_dev/pipeline=",
            	"type": "phrase"
          	}
        	}
          }
        }
    3. 从**可用字段**列表中选择以下字段:

      • kubernetes.flat_labels

      • message

        确保选定的字段显示在**已选字段**列表下。

    4. 日志显示在**message**字段下。

      Filtered messages
      图 2. 已过滤的消息