我正在帮助调查和诊断我们遇到的一些问题,并注意到服务总线队列上的用户错误指标正在改变。我想确切地知道该指标的意思是https://learn.microsoft.com/en-us/azure/service-bus-messaging/service-bus-metrics-azure-monitor有点模糊。
感谢您的帮助。
我也在探索Azure Service Bus上可能的用户错误。以下是我的几个发现。用户错误通常是由于客户端应用程序中的错误而出现的,例如
- invalidoperationException ,服务器或服务中不允许使用所请求的用户操作。例如,如果在接收模式下收到消息,则完整((生成InvalidOperationException
- 操作CanceLedException ,试图在已经关闭,中止或处置的对象上调用操作。在极少数情况下,环境交易已被处置。
- 未经授权的accessexception ,令牌providider对象无法获取令牌,令牌无效,或者令牌不包含执行操作所需的索赔
- 参数exception/gongementnullexception/grigent outofrangeException ,当提供给该方法的一个或多个参数无效时。提供给nesspaceManager或Create的URI包含路径段。提供给命名驱动器或创建的URI方案无效。属性值大于32kb。
- SessionlostException ,与此会话关联的锁定
- Messagelocklostexception ,与消息关联的锁定令牌已过期,或者找不到锁定令牌
- MessagenotFoundException ,尝试接收具有特定序列编号的消息。找不到此消息
- MessagentIntityNotFoundException ,与操作关联的实体不存在或已被删除
- MessagingCommunicationException ,客户端无法与服务总线建立连接
- SessionlostException ,与此会话关联的锁定
- MessagingException ,在以下情况下可能会抛出的通用消息传递异常:尝试使用属于其他实体类型的名称或路径创建queueclient(例如,一个主题((。尝试发送大于256KB的消息。服务器或服务在处理过程中遇到错误。这通常是瞬态异常
- MessagentIntityAlreadyExistSexception ,尝试创建具有该服务名称中另一个实体已使用的名称的实体
- quotaexceededException ,消息传递实体已达到其最大允许大小,或者超过了与名称空间的最大连接数
- RuleActionException ,如果您尝试创建无效的规则操作,服务总线将返回此异常。如果在处理该消息的规则操作时出现错误,服务总线将此例外附加到无生命的消息
- filterException ,如果您尝试创建无效的过滤器,服务总线将返回此异常。如果在处理该消息的过滤器时出现错误,服务总线将此例外附加到无聊的消息
- sessionCannotBelockedException ,尝试接受具有特定会话ID的会话,但是该会话当前由另一个客户端锁定
- TransactionsizeexceededException ,太多的操作是交易的一部分
- MessagentityDisabledException ,请求在残疾人实体上进行运行时操作
- NomatchingSubScriptionException ,如果您将消息发送到启用了预滤波的主题,而没有过滤器匹配 ,那么服务总线将返回此异常
- MessageizeexceededException ,消息有效负载超过256 kb的限制。请注意,256 KB限制是总消息大小,它可以包括系统属性和任何.NET开销
- TransActionException ,环境事务(TransAction.Current(无效。它可能已经完成或中止
- TransActionIndOubtexception ,尝试在有疑问的交易上尝试操作,或者尝试进行交易,而交易已疑惑我从MSDN文档中收集了详尽的例外列表,并过滤了列表以在Azure ServiceBus上获取用户错误
"用户错误"下有两种类型的错误。
它们是:
1(客户端错误。例如400
的http2(当您处理消息时发生的错误时,诸如消息锁之类的消息丢失了异常
属性:https://learn.microsoft.com/en-us/azure/service-bus-messaging/service-bus-metrics-metrics-azure-monitor#user-errors