Dashboard介绍

capOptions.UseDashboard(dashoptions =>
{
dashoptions.AppPath = "applicationpath";
dashoptions.PathMatch = "/cap";
dashoptions.Authorization = new[] { new CapDashboardFilter() }; });

这里只说这几个参数

AppPath:应用程序路径  访问dashboard的时候会有一个返回应用的操作,这个即是应用的地址

PathMatch:不设置的情况下都是cap,可以指定自己的dashboard路由地址
Authorization:授权处理

授权处理具体实现

只需要实现接口IDashboardAuthorizationFilter即可

 public class CapDashboardFilter : IDashboardAuthorizationFilter
{ public bool Authorize(DashboardContext context)
{
return true;
}
}

通过DashboardContext上下文处理请求,允许返回true,不允许返回false

结合Exceptionless

先看下面的代码

                capOptions.FailedRetryCount = capConfig.FailedRetryCount;
capOptions.FailedRetryInterval = capConfig.FailedRetryInterval;
capOptions.FailedThresholdCallback = (msg, msgName, msgConent) =>
{
//发布消息失败记录日志
if (msg == DotNetCore.CAP.Models.MessageType.Publish)
{
ExceptionlessClient.Default.CreateLog("PubishFailed", msgName + ":" + msgConent, Exceptionless.Logging.LogLevel.Info).AddTags("PubishFailed").Submit();
}
if (msg == DotNetCore.CAP.Models.MessageType.Subscribe)
{
ExceptionlessClient.Default.CreateLog("SubscribeFailed", msgName + ":" + msgConent, Exceptionless.Logging.LogLevel.Info).AddTags("SubscribeFailed").Submit();
}
};
FailedRetryCount:指定失败重试的次数 默认记得是50次吧
FailedRetryInterval:重试的时间

FailedThresholdCallback:最终执行失败回调方法,回调方法里面有3个参数 (消息类型、消息名称、消息内容)通过发布、订阅类型处理日志 方便执行失败对数据造成的不一致性,在某一刻可以人为的添加上

Exceptionless的相关配置详见我的另外一篇文章 https://www.cnblogs.com/liyouming/p/9167624.html
 

Cap+Exceptionless实现日志消息发布订阅异常情况日志处理及Cap DashBoard授权处理的更多相关文章

  1. 【python】-- RabbitMQ Publish\Subscribe(消息发布\订阅)

    RabbitMQ RabbitMQ Publish\Subscribe(消息发布\订阅) 1对1的消息发送和接收,即消息只能发送到指定的queue里,但这样使用有些局限性,有些时候你想让你的消息被所有 ...

  2. redis实现消息发布/订阅

    redis实现简单的消息发布/订阅模式. 消息订阅者: package org.common.component; import org.slf4j.Logger; import org.slf4j. ...

  3. springboot集成redis实现消息发布订阅模式-双通道(跨多服务器)

    基础配置参考https://blog.csdn.net/llll234/article/details/80966952 查看了基础配置那么会遇到一下几个问题: 1.实际应用中可能会订阅多个通道,而一 ...

  4. Redis 学习(三) —— 事务、消息发布订阅

    一.Redis事务 Redis 提供的事务机制与传统的数据库事务有些不同,传统数据库事务必须维护以下特性:原子性(Atomicity), 一致性(Consistency),隔离性(Isolation) ...

  5. redis 的消息发布订阅

    redis支持pub/sub功能(可以用于消息服务器),这个功能类似mq,这里做一个简单的介绍 Pub/Sub Pub/Sub 从字面上理解就是发布(Publish)与订阅(Subscribe),在R ...

  6. MQTT的学习研究(十四) MQTT moquette 的 Callback API 消息发布订阅的实现

    在moquette-mqtt中提供了回调callback模式的发布和订阅但是在订阅之后没有发现有消息接收的方法,参看moquette-mqtt中Block,Future式的发布订阅基础是callbac ...

  7. php实现redis消息发布订阅

    基础介绍 Pub/Sub功能(means Publish, Subscribe)即发布及订阅功能 基于事件的系统中,Pub/Sub是目前广泛使用的通信模型,它采用事件作为基本的通信机制,提供大规模系统 ...

  8. springboot2.X 集成redis+消息发布订阅

    需求场景:分布式项目中,每个子项目有各自的 user 数据库, 在综合管理系统中存放这所有用户信息, 为了保持综合管理系统用户的完整性, 子系统添加用户后将用户信息以json格式保存至redis,然后 ...

  9. MQTT 消息 发布 订阅

    当连接向一个mqtt服务器时,clientId必须是唯一的.设置一样,导致client.setCallback总是走到 connectionLost回调.报connection reset.调查一天才 ...

随机推荐

  1. 牛客网暑期ACM多校训练营(第二场)J farm (二维树状数组)

    题目链接: https://www.nowcoder.com/acm/contest/140/J 思路: 都写在代码注释里了,非常好懂.. for_each函数可以去看一下,遍历起vector数组比较 ...

  2. 开发Spring Shell应用程序

    2 开发Spring Shell应用程序 向shell提供命令非常简单,需要学习的注解很少.该命令的实现风格与使用依赖注入的应用程序的开发类相同,您可以利用Spring容器的所有特性来实现您的命令类. ...

  3. MT【108】线面角最小

    评:线面角最小,在此类最值中经常用到,作为选择填空可以投机.

  4. Spoj 8372 Triple Sums

    题意:给你n个数字,对于任意s,s满足\(s=u_i+u_j+u_k,i<j<k\),要求出所有的s和对应满足条件的i,j,k的方案数 Solution: 构造一个函数:\(A(x)=\s ...

  5. 【BZOJ1093】[ZJOI2007]最大半联通子图(Tarjan,动态规划)

    [BZOJ1093][ZJOI2007]最大半联通子图(Tarjan,动态规划) 题面 BZOJ 洛谷 洛谷的讨论里面有一个好看得多的题面 题解 显然强连通分量对于题目是没有任何影响的,直接缩点就好了 ...

  6. 【JLOI 2012】时间流逝(期望,树上高斯消元)

    题目链接 这是一道传统的期望题,可是有一些套路值得我去掌握. 我们用$s$来表示一种状态,就是当前拥有的能量圈,是一个正整数拆分的形式. 用$f_{s}$表示如果遇到果冻鱼后丢掉了最小的能量圈后的状态 ...

  7. linux文件名匹配——通配符使用

    背景:在linux使用过程中,经常需要查找文件,对命令中的通配符pattern和正则表达式的区分不是很清楚.有必要好好研究一下. 1 扫盲 1.1 通配符和正则表达式 当在使用命令行时,有很多时间都用 ...

  8. JAVA字符串格式化-String.format()的使用 【生成随机数补0操作】

    转: JAVA字符串格式化-String.format()的使用 常规类型的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的s ...

  9. HDFS之append数据到已存在文件中

    遇到一个问题,想往已存在的hdfs文件中直接添加数据,默认的话应该是被拒绝的.查看了一些资料,可以这样操作: 在pdfs-site.xml中添加append支持: <property> & ...

  10. Random Projection在k-means的应用

    1. 随机投影 (Random Projection) 首先,这是一种降维方法.之前已经介绍过相对普遍的PCA的降维方法,这里介绍另一种降维方法Random Project.相比于PCA,他的优势可以 ...