使用观测云在 AWS 上帮助跨境创业公司提升整体的监控观测能力

159 阅读5分钟

前言

在云商提供给研发者无限的便利的同时,也带来了沉重的服务治理与稳定性保障的成本,在数以百计的微服务中,一个很小的故障发生,排查修复可能就需要几个小时甚至1天的时间。建设完善的可观测体系可以很大程度上帮助用户提前发现问题、缩短故障的发生时间。本文介绍下如何使用观测云快速建设完善的可观测体系。

为什么选择观测云

  • 提供稳定可靠的saas服务
  • 强大的数据采集能力,支持采集200+中间件指标数据,并在不断完善数据集成能力
  • 强大的数据关联能力,查看错误日志同时可以关联查询链路、基础设施指标等数据
  • 强大的自研数据引擎-GuanceDB,相较于ES性能提升10倍
  • 完善的告警、巡检体系,可在问题发生第一时间进行告警、根因分析
  • 提供完善的OpenAPI接口,可以根据需要进行自定义研发
  • 统一的查询语言,提供强大的数据分析能力
  • 内置丰富的图表,也可以自由定制自己的仪表板,支持20+种基础图表样式
  • 性价比超高的按量收费模式,可以按需选择合适的存储时长,也可以通过探针过滤掉不需要的数据避免造成额外的费用

某海外互联网客户在使用AWS时,一月使用成本增加了将近1500美元,反复排查后发现是开通MSK(kafka)时,勾选了cloudwatch指标采集产生的额外费用 image.png 随后查看aws 指标收费规则,如下 image.png 对比观测云海外指标收费标准,每千条时间线如果只存三天的话,仅需0.23美元,换成aws需要3美元左右

image.png

快速开始

一键注册海外站点观测云免费体验账户

海外注册地址ap1-auth.guance.one/businessReg…

一键安装数据采集探针-Datakit

注册成功后,登录观测云平台,在左侧菜单中找到“集成”-> "Datakit",即可一键安装对应的agent,如linux虚拟机安装,需要注意的是,DK_DATAWAY 地址为当前账户登录后的实际地址。

`DK_DATAWAY="https://*******?token=**********" bash -c "$(curl -L https://static.guance.com/datakit/install.sh)"`

更多安装方式

参考官网 docs.guance.com/datakit/dat…

数据采集三板斧

日志

观测云Datakit 支持多种日志采集方式,可以灵活配置在linux、widows、ECS、EC2、EKS等环境下,具体支持方式如下:

  • 日志文件
  • 容器标准输出
  • 容器内日志文件
  • socket 日志采集

详细参考:docs.guance.com/integration…

链路

观测云Datakit支持多种链路传播协议数据接收,可以通过配置APM EndPoint 到Datakit上,即可完成数据采集,并提供多APM链路统一串联的能力,支持的协议如下:

  • DDtrace
  • Zipkin
  • Skywalking
  • Pinpoint
  • Jaeger
  • Cat
  • Opentelemetry
  • New Relic

详细参考:docs.guance.com/integration…

观测云支持前端用户行为数据采集的能力,支持前后端链路数据关联,并提供web页面录制回放的能力。

详细参考:docs.guance.com/integration…

指标

Datakit 安装成功之后,默认会采集主机cpu、内存、磁盘、进程信息等数据,可以通过调整配置来新增数据采集。 linux安装成功后,配置文件在/usr/local/datakit/conf.d 目录下,以redis为例,需要开启redis指标采集,就到 /usr/local/datakit/conf.d/db 目录下,把redis.conf.sample 文件修改为 redis.conf, 并把需要采集的redis配置填入redis.conf 配置文件中。 修改完成后,重启datakit

datakit service -R 

部署在k8s环境下可以通过启动daemonset模式的Datakit来完成指标数据的采集,安装和配置修改参考docs.guance.com/datakit/dat…

每个中间件指标采集在官网中都有对应的文档说明,详细参考docs.guance.com/integration…

数据关联

日志和指标关联

日志采集时,Datakit 会自动给日志加上一个host 标签,表明该日志是从哪台主机/容器上采集到的,对应指标数据采集同样也会带上对应的标签,在进行数据查询的时候,就可以通过共同的标签来实现日志和指标数据的关联。

日志链路关联

接入APM后,应用日志打印的同时,可以输出当前链路的TraceID,在查询日志的的同时,可以通过TraceID来关联对应的链路数据,相同,在查询链路的同时,也可以查看到对应的日志数据。

链路指标关联

在采集链路数据的同时,Datakit也会给对应的链路数据带上主机/pod相关信息,实现查看链路数据的同时,可以查看关联的指标数据。

灵活的告警配置

多种监控器可配置

观测云支持多种监控器配置,如阈值监控、突变监控、进程监控、基础设施存活监控、离群监控、日志关键字监控、应用性能监控等,详细配置参考:docs.guance.com/monitoring/…

告警聚合

同一类型告警在一段时间内发生多次的话,可以在观测云配置告警聚合,提供了多个维度进行选择,如标题、分组对象、监控器、标签等。

通知对象多样化

观测云通知对象默认支持邮件、钉钉、飞书、企业微信等通知对象,同时也支持webhook自定义通知配置,用户可以自定义开发通知对象接口,将开发好的地址配置在观测云即可

具体查看:docs.guance.com/monitoring/…