华为云 LTS 日志上报至观测云最佳实践
华为云 LTS 简介
华为云云日志服务(Log Tank Service,简称 LTS),用于收集来自主机和云服务的日志数据,通过海量日志数据的分析与处理,可以将云服务和应用程序的可用性和性能最大化,为您提供实时、高效、安全的日志处理能力,帮助您快速高效地进行实时决策分析、设备运维管理、用户业务趋势分析等。
方案说明
目前有两种 LTS 上报至观测云的方案,分别为:
1、通过观测云 Func 平台的官方脚本 观测云集成(华为云-LTS 日志采集)将 LTS 日志通过 API 拉取的方式获取日志,上报至观测云平台。
2、可以通过华为云函数工作流 FunctionGraph,将 LTS 作为触发器,有日志产生时将会触发 FunctionGraph 函数,然后由函数主动推送的方式将日志上报至观测云平台。
在实际验证中,方案 1 在日志量大的时候,接口有非常大的延迟。同时华为云侧会在 API 读取有调用限制,所以很难在生产环境中使用方案 1 。方案 2 为主动触发的方式上报日志,经验证能够承受住较大量的日志上报,所以该方案可以作为最佳方案上报日志至观测云平台。
前置条件
在华为云上创建 FunctionGraph 和 LTS 服务
开通观测云账号
DataKit 机器一台
接入步骤
配置 DataKit 服务
安装 DataKit
开启 logstreaming 采集器
重启 Datakit
查看采集器是否开启
创建 LTS 日志组并输出日志
我们可以通过很多种方式把日志输出至 LTS 服务,本文以 CDN 日志为例,配置 CDN 日志存储至 LTS ,配置完成之后我们可以查看在 LTS 日志组中是否有日志产生。
Guance forwarder functiongraph 函数
在华为云中创建 FunctionGraph 函数,在代码中修改对应的 datakit 的 IP 地址,也可以把 datakit 的 IP 地址写入 FunctionGraph 函数的环境变量中。
函数 Github 地址
配置环境变量
同时需要在权限中设置函数配置委托,将 LTS 相关的权限授予 FunctionGraph 工作流
创建完成之后可以手动添加触发器,选择 LTS 日志组作为触发器
数据验证
设置完成之后,我们可以查看 FunctionGraph 是否有接收到 LTS 触发器发出的日志信息。在监控中查到有相应的指标和日志输出,说明日志触发成功。
同时可以登录观测云平台查看日志是否有上报成功。在日志的数据来源中,我们可以看到多出了一条 function_graph_forwarder 的数据来源(数据来源可以自行修改),这就是从 LTS 上报过来的日志数据。查看该来源可以看到相应的日志输出,说明日志上报成功。
评论