失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 『EasyNotice』在.NET中多渠道告警通知——快速集成邮件/钉钉/飞书/企业微信

『EasyNotice』在.NET中多渠道告警通知——快速集成邮件/钉钉/飞书/企业微信

时间:2019-12-30 21:45:09

相关推荐

『EasyNotice』在.NET中多渠道告警通知——快速集成邮件/钉钉/飞书/企业微信

📣读完这篇文章里你能收获到

了解博主开源的告警通知项目——EasyNotice傻瓜式扩展方法直接使用如何通过EasyNotice快速实现邮件/钉钉/飞书/企业微信的通知发送感谢点赞+收藏,避免下次找不到~

文章目录

一、EasyNotice1. 源码地址2. 功能介绍3. 平台支持 二、项目接入1. 邮件通知2. 钉钉通知3. 飞书通知4. 企业微信通知 三、更多示例

一、EasyNotice

这是博主开源的一个基于.NET开源的消息通知组件,它包含了邮件、钉钉、飞书、企业微信的群机器人通知,可以帮助我们更容易地发送程序异常通知!

1. 源码地址

/Bryan-Cyf/EasyNotice

2. 功能介绍

支持[邮件]、[钉钉]、[飞书]、[企业微信]方式发送支持自定义发送间隔,避免同样的异常频繁通知傻瓜式配置,开箱即用

3. 平台支持

SMTP邮箱钉钉群机器人飞书群机器人企业微信群机器人

二、项目接入

1. 邮件通知

邮件通知支持同时发送给多个收件人

Step 1 : 安装包,通过Nuget安装包

Install-Package EasyNotice.CoreInstall-Package EasyNotice.Email

Step 2 : 配置 Startup 启动类

public class Startup{//...public void ConfigureServices(IServiceCollection services){//configurationservices.AddEasyNotice(config =>{config.IntervalSeconds = 10;//同一标题的消息,10秒内只能发一条,避免短时间内大量发送重复消息config.UseEmail(option =>{option.Host = "";//SMTP地址option.Port = 465;//SMTP端口option.FromName = "System";//发送人名字(自定义)option.FromAddress = "12345@";//发送邮箱option.Password = "passaword";//秘钥option.ToAddress = new List<string>()//收件人集合{"12345@"};});});} }

Step 3 : IEmailProvider服务接口使用

[ApiController][Route("[controller]/[action]")]public class NoticeController : ControllerBase{private readonly IEmailProvider _mailProvider;public NoticeController(IEmailProvider provider){_mailProvider = provider;}[HttpGet]public async Task SendMail([FromQuery] string str){await _mailProvider.SendAsync(str, new Exception(str));}}

2. 钉钉通知

配置钉钉群机器人官方文档

Step 1 : 安装包,通过Nuget安装包

Install-Package EasyNotice.CoreInstall-Package EasyNotice.Dingtalk

Step 2 : 配置 Startup 启动类

public class Startup{//...public void ConfigureServices(IServiceCollection services){//configurationservices.AddEasyNotice(config =>{config.IntervalSeconds = 10;//同一标题的消息,10秒内只能发一条,避免短时间内大量发送重复消息config.UseDingTalk(option =>{option.WebHook = "/robot/send?access_token=xxxxx";//通知地址option.Secret = "secret";//签名校验});});} }

Step 3 : IDingtalkProvider服务接口使用

[ApiController][Route("[controller]/[action]")]public class NoticeController : ControllerBase{private readonly IDingtalkProvider _dingtalkProvider;public NoticeController(IDingtalkProvider dingtalkProvider){_dingtalkProvider = dingtalkProvider;}[HttpGet]public async Task SendDingTalk([FromQuery] string str){await _dingtalkProvider.SendAsync(str, new Exception(str));}}

3. 飞书通知

配置飞书群机器人官方文档

Step 1 : 安装包,通过Nuget安装包

Install-Package EasyNotice.CoreInstall-Package EasyNotice.Feishu

Step 2 : 配置 Startup 启动类

public class Startup{//...public void ConfigureServices(IServiceCollection services){//configurationservices.AddEasyNotice(config =>{config.IntervalSeconds = 10;//同一标题的消息,10秒内只能发一条,避免短时间内大量发送重复消息config.UseFeishu(option =>{option.WebHook = "/open-apis/bot/v2/hook/xxxxx";//通知地址option.Secret = "secret";//签名校验});});} }

Step 3 : IFeishuProvider服务接口使用

[ApiController][Route("[controller]/[action]")]public class NoticeController : ControllerBase{private readonly IFeishuProvider _feishuProvider;public NoticeController(IFeishuProvider feishuProvider){_feishuProvider = feishuProvider;}[HttpGet]public async Task SendFeishu([FromQuery] string str){await _feishuProvider.SendAsync(str, new Exception(str));}}

4. 企业微信通知

配置企业微信群机器人官方文档

Step 1 : 安装包,通过Nuget安装包

Install-Package EasyNotice.CoreInstall-Package EasyNotice.Weixin

Step 2 : 配置 Startup 启动类

public class Startup{//...public void ConfigureServices(IServiceCollection services){//configurationservices.AddEasyNotice(config =>{config.IntervalSeconds = 10;//同一标题的消息,10秒内只能发一条,避免短时间内大量发送重复消息config.UseWeixin(option =>{option.WebHook = "https://qyapi./cgi-bin/webhook/send?key=xxxxx";//通知地址});});} }

Step 3 : IWeixinProvider服务接口使用

[ApiController][Route("[controller]/[action]")]public class NoticeController : ControllerBase{private readonly IWeixinProvider _weixinProvider;public NoticeController(IWeixinProvider weixinProvider){_weixinProvider = weixinProvider;}[HttpGet]public async Task SendWexin([FromQuery] string str){await _weixinProvider.SendAsync(str, new Exception(str));}}

三、更多示例

查看 更多使用例子查看 更多测试用例源码地址:/Bryan-Cyf/EasyNotice

如果觉得《『EasyNotice』在.NET中多渠道告警通知——快速集成邮件/钉钉/飞书/企业微信》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。