日志服务(Log Service,简称 LOG)是针对日志类数据的一站式服务。您无需开发就能快捷完成日志数据采集、消费、投递以及查询分析等功能。在Knative中结合日志服务,能有效提升对Serverless应用的运维能力。
前提条件
- 您已经开通日志服务,请参见通过日志服务采集Kubernetes容器日志。
- 您已经部署Knative Service服务,请参见快速部署Serverless应用。
操作步骤
- 为Helloworld接入日志采集。请参见通过DaemonSet-控制台方式采集容器标准输出。
- 登录日志服务管理控制台。
- 在Project列表区域,单击创建Project创建名称为hellword的项目。详细操作请参见管理Logstore。
- 在helloworld项目页面的右上角,单击接入数据。
- 在接入数据页面选择Docker标准输出,进入Docker标准输出配置页面。
- 在选择日志空间配置中,确认日志空间信息并单击下一步。
- 设置创建机器组。若您已经安装Logtail日志组件,请点击使用现有机器组。
您可以选择Kubernetes或者标准Docker采集进行日志采集。具体操作,请参见通过日志服务采集Kubernetes容器日志和采集标准Docker容器日志。
- 单击确认安装完毕。
- 设置机器组配置。
- 设置数据源设置。插件配置这里我们针对helloworld-go Service,设置采集的环境变量为:
"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" } ] }
- 数据源设置完成后,单击下一步。
- 在查询分析配置页面,开启全文索引,设置查询字段索引属性。
- 单击下一步进入结束页面。
- 执行以下命令,访问Hello World示例服务。此时会产生日志信息。
curl -H "Host: helloworld-go.default.example.com" http://112.124.XX.XX
Hello Knative!
- 在日志库的目标日志右侧悬浮鼠标至图标
上,选择
> 查询分析,可以看到该logstore的日志信息。
- 设置查询分析。请参见分析概述。 为了便于查看,您可以通过列设置显示所需要的列。下图中的示例设置了level、msg和time这三列。
总结
通过上面的介绍,可以帮助您了解如何在Knative中使用日志服务收集Serverless应用容器日志。在Knative中采用日志服务收集、分析业务日志,满足了生产级别的Serverless应用运维的诉求。
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家
阿里云企业补贴进行中: 马上申请
腾讯云限时活动1折起,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠
转转请注明出处:https://www.yunxiaoer.com/171254.html