文档

在Knative上实现日志采集

更新时间:

日志服务(Log Service,简称 LOG)是针对日志类数据的一站式服务。您无需开发就能快捷完成日志数据采集、消费、投递以及查询分析等功能。在Knative中结合日志服务,能有效提升对Serverless应用的运维能力。本文介绍如何在Knative中使用日志服务收集Serverless应用容器日志,采用日志服务收集、分析业务日志,满足生产级别的Serverless应用运维的诉求。

前提条件

步骤一:部署服务

本文部署一个名称为helloworld-go的Knative服务。具体操作,请参见快速部署Serverless应用

步骤二:为服务接入日志采集

  1. 登录容器服务管理控制台,在左侧导航栏选择集群

  2. 集群列表页面,单击目标集群名称,然后在左侧导航栏,选择集群信息

  3. 在集群信息页面,单击集群资源页签,然后单击日志服务 Project右侧的链接。

  4. 在helloworld-go项目页面的左下角,单击接入数据,为helloworld-go服务接入日志采集。

    请参见通过DaemonSet-控制台方式采集容器标准输出

    1. 快速数据接入页面的Docker标准输出 - 容器的卡片上,单击立即接入,然后根据页面提示进入Docker标准输出配置页面。

      指定采集模式

    2. 选择日志空间配置中,确认日志空间信息并单击下一步

    3. 设置创建机器组

      已在前提条件中安装ogtail-ds日志组件,因此请单击使用现有机器组

      您可以选择Kubernetes或者标准Docker采集进行日志采集。具体操作,请参见通过日志服务采集Kubernetes容器日志采集标准Docker容器日志

    4. 设置机器组配置,完成后单击下一步

    5. 数据源设置向导页面,单击切换为编辑器配置,然后设置插件配置

      本文针对helloworld-go服务,设置采集的环境变量为:"K_SERVICE": "helloworld-go"。并且通过processors分割日志信息,如这里"Keys": [ "time","level", "msg" ]。插件配置示例如下。

      {
        "inputs": [
          {
            "detail": {
              "IncludeEnv": {
                "K_SERVICE": "helloworld-go"
              },
              "IncludeLabel": {},
              "ExcludeLabel": {}
            },
            "type": "service_docker_stdout"
          }
        ],
        "processors": [
          {
            "detail": {
              "KeepSource": false,
              "NoMatchError": true,
              "Keys": [
                "time",
                "level",
                "msg"
              ],
              "NoKeyError": true,
              "Regex": "(\\d+-\\d+-\\d+\\s+\\d+:\\d+:\\d+)\\s+(\\w+)\\s+(.*)",
              "SourceKey": "content"
            },
            "type": "processor_regex"
          }
        ]
      }
    6. 数据源设置完成后,单击下一步

    7. 查询分析配置页面,开启全文索引,设置查询字段索引属性。

    8. 单击下一步进入结束页面。

  5. 执行以下命令,访问helloworld-go示例服务。

    此时会产生日志信息。

    curl -H "Host: helloworld-go.default.example.com" http:<网关IP> # 网关IP和域名请以您的实际数据为准。 

    预期输出:

    Hello Knative!
  6. 日志库的目标日志右侧悬浮鼠标至图标日志库图标上,选择日志库图标 > 查询分析,可以看该logstore的日志信息。

    image.png

  7. 设置查询分析。

    关于如何查询和分析日志,请参见查询和分析日志

  • 本页导读 (1)