在本实验中,我们将会使用腾讯云的消息队列CKafka、无服务器云函数SCF和对象存储COS,实现一个异常日志检测及记录系统。当业务系统中的应用功能程序生成日志后,会把日志信息通过消息实时传输到CKafka服务端。通过配置异常日志检测SCF的触发规则,一旦日志消息投递成功即可触发异常日志监测SCF的逻辑。异常日志监测SCF会监测接收到的日志消息是否含有异常关键字,然后把异常信息归档后投递到COS并发送邮件到指定的邮箱,从而实现无服务器函数发送邮件的目的。
1、 实验组网介绍
2、 实验数据规划(数据规划表)
数据项 | 数据 | 说明 |
---|---|---|
腾讯云账号 | 账号:XXXXXXXXX 密码:XXXXXXXXXX | 涉及产品如下: CKafka VPC SCF COS CVM |
3、 实验环境确认
能够通过浏览器连接腾讯云官网https://cloud.tencent.com;
配置表
购买产品 | 规格 | 备注 |
---|---|---|
消息队列CKafka | 地域:华南地区(广州) | 使用腾讯提供的代金券购买 |
私有网络VPC | 地域:华南地区(广州) | 使用腾讯提供的代金券购买 |
无服务器云函数SCF | 模板函数“Ckafka消息投递COS” | 使用腾讯提供的代金券购买 |
对象存储COS | 地域:中国-广州;私有读写 | 使用腾讯提供的代金券购买 |
云服务器CVM | 广州1核1GB CentOS7.2 64位 | 使用腾讯提供的代金券购买 |
本实验要求:
完成本实验后,您将能够:
通过该实验,学员能够在腾讯云平台上创建CKafka和函数服务,并通过Ckafka调用SCF,实现在无服务器的环境下实现邮件发送功能。本实验实验时长为1.5小时。
【任务目标】
在腾讯云平台的消息队列Ckafka管理控制台中创建Ckafka实例。
【任务步骤】
1、 在【腾讯云控制台】中,鼠标依次悬停【云产品-中间件-消息队列CKafka】,单击进入【消息队列CKafka】;在左侧导航栏中,点击【实例列表】,单击【新建】。
2、 购买完成后,可以在控制台列表中查看购买的Ckafka
3、 点击新创建的Ckafka实例进入实例详情页,点击【topic管理】,单击【新建】。
【任务目标】
通过腾讯云对象存储控制台,创建COS桶,用于存放云函数处理后的Ckafka消息。
【任务步骤】
1、 在【腾讯云控制台】中,鼠标依次悬停【云产品-存储-对象存储】,单击进入【对象存储】;在左侧导航栏中,点击【存储桶列表】,单击【创建存储桶】。
【任务目标】
通过腾讯云无服务器云函数控制台,创建函数服务,进行函数代码编写并完成函数测试。
【任务步骤】
1、 在【腾讯云控制台】中,鼠标依次悬停【云产品-Serverless-云函数】,单击进入【云函数】;在左侧导航栏,点击【函数服务】,右侧地域选择【广州】,单击【新建】按钮;
2、 新建函数:
1) 函数配置
2) 函数代码
注意:使用授权码替代QQ密码,不能直接使用QQ密码
注:获取QQ授权码的方法如下:
3) 函数测试:保存以上配置,修改【当前测试模板】为【Ckafka事件模板】,然后运行测试。
3、 在上述操作的同样的页面,点击【触发方式】,单击【添加触发方式】。
【任务目标】
在腾讯云平台的云服务器管理控制台中创建CVM实例,以发送生产测试消息到Ckafka。
【任务步骤】
1、 在【腾讯云控制台】中,鼠标依次悬停【云产品-计算-云服务器】,单击进入【云服务器】;在左侧导航栏,点击【实例】,右侧地域选择【广州】,单击【新建】按钮;
1)新建CVM
C:\Users\v_haohcheng\Documents\WXWork\1688850526751824\Cache\Image\2019-09\企业微信截图_15693880821972.png
2)登陆CVM,下载CKafka客户端,通过客户端发送测试消息到已购买的CKafka实例
2、 查看日志输出:在利用Kafka客户端发送完消息后,查看新建的SCF【运行日志】页签的日志输出,如下图所示:
1)查看新建的COS存储桶,看是否有新增文件夹
2)点击COS桶中新建的文件夹,将文件夹下的文件下载下来
3)并用编辑器打开,查看是否是自己发送的消息。如下图所示
4)查看邮箱,检查是否收到告警邮件(可以观察到,只有消息中含有error或者exception的消息才会发送到指定的邮箱)
1、 验证Ckafka实例及topic创建成功。在任务一的第2-3步中,能够查看到消息队列Ckafka实例及topic;
2、 验证无服务器云函数SCF。在任务三的第2步,测试函数成功;并在COS通中看到相应文件。
3、 验证CKafka能够调用SCF。能够在SCF【运行日志】页签的日志输出看到正确的SCF的调用信息、能够在QQ邮箱中收到相关邮件。
1、 任务三中的第二步,测试函数报错,邮箱无法正常收到指定邮件。
2、 任务四中的第三步无法查看到SCF的调用情况的相关信息。