问题描述
我正在帮助调查和诊断我们遇到的一些问题,并注意到服务总线队列上的用户错误"指标正在发生变化.我想确切地了解此指标是什么意思,作为 https://docs.microsoft.com/zh-cn/azure/service-bus-messaging/service-bus-metrics-azure-monitor 有点模糊./p>
谢谢您的帮助.
我也在探索Azure服务总线上的可能的用户错误.以下是我的一些发现.用户错误通常是由于客户端应用程序中的错误而发生的,例如
- InvalidOperationException ,服务器或服务中不允许所请求的用户操作.例如,如果在ReceiveAndDelete模式下接收到消息,则Complete()会生成InvalidOperationException
- OperationCanceledException ,试图对已经关闭,中止或处置的对象调用操作.在极少数情况下,周围交易已被处理.
- UnauthorizedAccessException ,TokenProvider对象无法获取令牌,令牌无效或令牌不包含执行操作所需的声明
- ArgumentException/ArgumentNullException/ArgumentOutOfRangeException ,如果提供给该方法的一个或多个参数无效.提供给NamespaceManager或Create的URI包含路径段.提供给NamespaceManager或Create的URI方案无效.属性值大于32KB.
- SessionLockLostException ,与此会话相关联的锁丢失了
- MessageLockLostException ,与邮件关联的锁定令牌已过期,或者未找到锁定令牌
- MessageNotFoundException ,尝试接收具有特定序列号的消息.找不到此消息
- MessagingEntityNotFoundException ,与该操作关联的实体不存在或已被删除
- MessagingCommunicationException ,客户端无法与服务总线建立连接
- SessionLockLostException ,与此会话相关联的锁丢失了
- MessagingException ,在以下情况下可能会引发的通用消息传递异常:尝试使用属于不同实体类型(例如,主题)的名称或路径来创建QueueClient. ).试图发送大于256KB的消息.服务器或服务在处理请求期间遇到错误.这通常是短暂的异常
- MessagingEntityAlreadyExistsException ,尝试创建一个名称已被该服务名称空间中的另一个实体使用的实体
- QuotaExceededException ,消息传递实体已达到其最大允许大小,或者已超过与命名空间的最大连接数
- RuleActionException ,如果您尝试创建无效的规则操作,Service Bus将返回此异常.如果在处理该消息的规则操作时发生错误,Service Bus会将此异常附加到一条带字母的消息上
- FilterException ,如果您尝试创建无效的过滤器,Service Bus将返回此异常.如果在处理该消息的过滤器时发生错误,Service Bus会将此异常附加到一条带字母的消息上
- SessionCannotBeLockedException ,尝试接受具有特定会话ID的会话,但该会话当前已被另一个客户端锁定
- TransactionSizeExceededException ,事务中有太多操作
- MessagingEntityDisabledException ,请求对已禁用实体执行运行时操作
- NoMatchingSubscriptionException ,如果您将消息发送到已启用预过滤且没有过滤器匹配的主题,则Service Bus将返回此异常
- MessageSizeExceededException ,消息有效负载超过256 KB限制.请注意,最大邮件大小为256 KB,其中可能包括系统属性和任何.NET开销
- TransactionException ,周围的交易(Transaction.Current)无效.它可能已完成或中止了
- TransactionInDoubtException ,尝试对有疑问的交易执行操作,或者尝试提交该交易而使该交易有疑问我从MSDN文档中收集了详尽的异常列表,并过滤了该列表以获取可能在Azure ServiceBus上出现的用户错误
I am helping investigate and diagnose some issues we have and have noticed that the User Errors metrics on a service bus queue is changing. I'd like to know exactly what this metric means as the documentation at https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-metrics-azure-monitor is a little vague.
Thank you for your help.
I too was exploring possible User Errors on the Azure Service Bus. Below are few of my findings. User errors generally occur due to mistakes in the client application like,
- InvalidOperationException, The requested user operation is not allowed within the server or service. For example, Complete() generates InvalidOperationException if the message was received in ReceiveAndDelete mode
- OperationCanceledException, An attempt is made to invoke an operation on an object that has already been closed, aborted or disposed. In rare cases, the ambient transaction is already disposed.
- UnauthorizedAccessException, The TokenProvider object could not acquire a token, the token is invalid, or the token does not contain the claims required to perform the operation
- ArgumentException/ArgumentNullException/ ArgumentOutOfRangeException, when One or more arguments supplied to the method are invalid. The URI supplied to NamespaceManager or Create contains path segment(s). The URI scheme supplied to NamespaceManager or Create is invalid. The property value is larger than 32KB.
- SessionLockLostException, Lock associated with this session is lost
- MessageLockLostException, Lock token associated with the message has expired, or the lock token is not found
- MessageNotFoundException, Attempt to receive a message with a particular sequence number. This message is not found
- MessagingEntityNotFoundException, Entity associated with the operation does not exist or it has been deleted
- MessagingCommunicationException, Client is unable to establish a connection with Service Bus
- SessionLockLostException, Lock associated with this session is lost
- MessagingException, Generic messaging exception that may be thrown in the following cases: An attempt is made to create a QueueClient using a name or path that belongs to a different entity type (for example, a topic). An attempt is made to send a message larger than 256KB. The server or service encountered an error during processing of the request. This is usually a transient exception
- MessagingEntityAlreadyExistsException, Attempt to create an entity with a name that is already used by another entity in that service namespace
- QuotaExceededException, The messaging entity has reached its maximum allowable size, or the maximum number of connections to a namespace has been exceeded
- RuleActionException, Service Bus returns this exception if you attempt to create an invalid rule action. Service Bus attaches this exception to a deadlettered message if an error occurs while processing the rule action for that message
- FilterException, Service Bus returns this exception if you attempt to create an invalid filter. Service Bus attaches this exception to a deadlettered message if an error occurred while processing the filter for that message
- SessionCannotBeLockedException, attempt to accept a session with a specific session ID, but the session is currently locked by another client
- TransactionSizeExceededException, Too many operations are part of the transaction
- MessagingEntityDisabledException, Request for a runtime operation on a disabled entity
- NoMatchingSubscriptionException, Service Bus returns this exception if you send a message to a topic that has pre-filtering enabled and none of the filters match
- MessageSizeExceededException, A message payload exceeds the 256 KB limit. Note that the 256 KB limit is the total message size, which can include system properties and any .NET overhead
- TransactionException, The ambient transaction (Transaction.Current) is invalid. It may have been completed or aborted
- TransactionInDoubtException, An operation is attempted on a transaction that is in doubt, or an attempt is made to commit the transaction and the transaction becomes in doubtI collected the exhaustive list of exceptions from MSDN documentation and filtered the list to get the User Errors possible on a Azure ServiceBus
这篇关于Azure Service Bus消息队列用户错误指标的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!