一、前言
作为一个调用链路追踪、接口耗时定位的工具,KoTime目前已经更新到了v2.2.6,从最开始链路追踪开始,慢慢加入了异常检测、数据库和redis存储数据、入参组合分析等,但是慢慢发现经常去系统看接口耗时也是挺累的,所以从v2.2.5开始加入了邮件通知功能,可以将一些超时阈值的接口信息推送到邮箱,就可以安心干别的事情了(比如看剧)!有什么问题邮件通知我即可!
下面介绍一下邮件功能的使用方式.
二、使用方式
2.1 添加依赖
添加v2.2.6的一来即可,如果项目中没有引入邮件相关的依赖,启动会报错,此时需要加入spring-boot-starter-mail
<dependency>
<groupId>cn.langpy</groupId>
<artifactId>ko-time</artifactId>
<version>2.2.9</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
2.2 配置切面范围
切面范围需要包括你想检测的调用链路范围
ko-time.pointcut=execution(public * com.huoyo..*.*(..))
配置完以后启动项目测试一下:
访问 /koTime ,看看调用图:
确认配置正确,下面开始配置邮件服务.
2.3 配置邮件服务
邮件的配置需要在application.properties添加以下内容即可.
需要注意的是,邮件的默认服务为QQ邮件服务器smtp.qq.com,有QQ邮箱的简单的简单配置以下即可,另外需要申请一下邮箱的授权码,可以登录自己的邮箱后申请.
ko-time.mail-enable=true # 开启邮件通知 默认false
ko-time.mail-user=xxxx@qq.com # 设置发送者 可以设置为你的QQ邮箱 必填
ko-time.mail-code=xxxxxxx # 邮箱授权码 请到QQ邮箱申请 必填
ko-time.mail-receivers=xxxx@qq.com # 邮件接收者 多个请用英文逗号隔开 必填
如果想使用126或者其他邮箱的,声明以下配置即可.
ko-time.mail-protocol=smtp # 邮件协议 默认smtp 可以不配置
ko-time.mail-host=smtp.qq.com # 邮件服务器 默认smtp.qq.com(QQ邮件) 可以不配置
ko-time.mail-port=587 # 邮件服务器 默认587(QQ邮件端口) 可以不配置
ko-time.mail-encoding=UTF-8 # 邮件编码 默认UTF-8 可以不配置
ko-time.mail-threshold=4 # 邮件触发阈值 默认4 耗时n次超过阈值即发送邮件 可以不配置
ko-time.mail-scope=Controller # 邮件检测范围 默认Controller(接口层) 可选{All,Controller,Service,Dao,Other}
2.4 玩耍去,坐等邮件通知
玩耍的时候记得带着笔记本啊,随时准备改代码
如果不幸的话,可能就会收到邮件通知:
三、总结
以上就是KoTime的邮件服务配置,想了解更多详情请参考KoTime文档
你以为你可以安心玩耍,不可能!天下都是Bug,有前辈留下的...自己写的...同事写的...等等