最近在做网站异常自动推送到飞书的功能,踩了一些坑,现在分享一下接入过程。
注册观测云账号
我们先注册一个账号, 注册地址
按照页面提示录入信息即可,目前有4个国内站点和1个海外站点,这里我们随便选一个国内站点(有啥区别我也不知道,好奇心强的小伙伴可自行研究)。
这里只需要简单输入企业名称:
开通方式有好几种,我也不了解有啥区别,我是直接选择观测云直接开通的,比较好的是有500元代金券,足够我测试一段时间了,随便编了工作空间名称,我想的是用工作空间来划分不同的业务。
开通就这么简单的成功了,好开心,下来就可以开始体验了。
安装采集器Datakit
然后就是傻瓜式的按照文档操作了
感兴趣的小伙伴可以了解Datakit的功能:
它可以理解为一个Agent或是前置网关,拥有全面数据采集能力,涵盖主机、容器、中间件、Tracing、日志以及安全巡检等各种场景,是一款All-in-One的Exporter。
- 登陆工作空间后,点击左侧「集成」选择「Datakit」,可以看到各种平台的安装命令,我用的是windows的个人小电脑,大家根据自己的环境选择一种适合自己的安装方式。
打开控制台,温馨提示一下,一定要以管理员的身份运行,安装时可能报权限不足。
安装完成,服务会自动启动,程序默认安装在 C:\Program Files\datakit
目录。
2.简单改一下配置:
开启前端RUM监控,在目录 C:\Program Files\datakit\conf.d\rum
复制 rum.conf.sample
为 rum.conf
,重启 datakit 服务 datakit service --restart
。
打开 datakit 服务监控页面,在左侧窗口可以看到 rum, 表明 rum 采集器已成功开启。
配置 RUM 采集参数
在观测云控制台,进入用户访问监测页面,点击左上角 新建应用,创建一个应用。
本次演示使用Web应用,输入应用名称和应用ID,Web 应用接入有三种方式:NPM 接入、同步载入和异步载入。
接入方式 | 简介 |
---|---|
NPM | 通过把 SDK 代码一起打包到你的前端项目中,此方式可以确保对前端页面的性能不会有任何影响,不过可能会错过 SDK 初始化之前的的请求、错误的收集。 |
CDN 异步加载 | 通过 CDN 加速缓存,以异步脚本引入的方式,引入 SDK 脚本,此方式可以确保 SDK 脚本的下载不会影响页面的加载性能,不过可能会错过 SDK 初始化之前的的请求、错误的收集。 |
CDN 同步加载 | 通过 CDN 加速缓存,以同步脚本引入的方式,引入 SDK 脚本,此方式可以确保能够收集到所有的错误,资源,请求,性能指标。不过可能会影响页面的加载性能。 |
也可以使用页面提供的配置参数功能,录入需要的参数,复制配置到代码中即可。
我这是vue的程序,rum采集器配置放到 main.js 中。
启动应用,访问几个页面,到观测云控制台可以看到收集的信息。
如果没有数据上报,打开开发者模式,检查 rum 接口访问是否成功。
配置告警规则
创建通知对象
在这里我创建一个通知对象 ,使用的飞书机器人,虽然它也支持钉钉和微信的机器人。
创建告警策略
告警策略可以定义什么类型的事件发送到哪个接收对象,还可以定义沉默周期,避免告警泛滥。
配置监控器
新建监控器,这里比较好的一点是,他已经内置了用户访问监测的模板,我只需要选择用户访问指标检测 就好了。
只需要简单的配置一下 检测频率、检测指标和触发条件 就好了。
配置 事件通知和告警策略,事件通知可以使用模板变量,文档中有参照样例,告警策略使用我们上文中配置的。
测试一下能否触发告警
我们访问网站生成测试数据,满足条件即可触发告警。