Monitorando a referência de dados do Barramento de Serviço do Azure

Consulte Monitoramento do Barramento de Serviço do Azure para obter detalhes sobre como coletar e analisar dados de monitoramento do Barramento de Serviço do Azure.

Nota

O Azure Monitor não inclui dimensões nos dados de métricas exportados enviados para um destino como o Armazenamento do Azure, Hubs de Eventos do Azure, Análise de Log, etc.

Métricas

Esta seção lista todas as métricas de plataforma coletadas automaticamente para o Barramento de Serviço do Azure. O provedor de recursos para essas métricas é Microsoft.ServiceBus/namespaces.

Métricas de solicitação

Conta o número de solicitações de dados e operações de gerenciamento.

Nome da Métrica Exportável através de configurações de diagnóstico Unit Tipo de agregação Description Dimensões
Pedidos Recebidos Sim Count Total O número de solicitações feitas ao serviço Service Bus durante um período especificado. EntityName
Pedidos Com Êxito Não Count Total O número de solicitações bem-sucedidas feitas ao serviço do Service Bus durante um período especificado. Nome da entidade
OperationResult
Erros do servidor Não Count Total O número de solicitações não processadas devido a um erro no serviço Service Bus durante um período especificado. Nome da entidade
OperationResult
Erros do usuário Não Count Total O número de solicitações não processadas devido a erros do usuário durante um período especificado. Nome da entidade
Solicitações limitadas Não Count Total

O número de solicitações que foram limitadas porque o uso foi excedido.

A dimensão MessagingErrorSubCode tem os seguintes valores possíveis:

  • CPU: Limitação da CPU
  • Armazenamento:Indica aceleração devido a operações pendentes de ponto de verificação
  • Namespace:Limitação de operações de namespace.
  • Desconhecido: Limitação de outros recursos.
Nome da entidade
MessagingErrorSubCode
Contagem pendente de operações de ponto de verificação Não contagem Média O número de operações de ponto de verificação pendentes no namespace. O serviço começa a ser acelerado quando a contagem de pontos de verificação pendente excede o limite de operações (500.000 + (500.000 * unidades de mensagens)). Essa métrica se aplica somente a namespaces que usam a camada premium . MessagingErrorSubCode
Latência de envio do servidor Não milissegundos Média O tempo necessário pelo serviço do Service Bus para concluir a solicitação. Nome da entidade

Os dois tipos de erros a seguir são classificados como erros do usuário:

  1. Erros do lado do cliente (em HTTP seriam 400 erros).
  2. Erros que ocorrem durante o processamento de mensagens, como MessageLockLostException.

Métricas de mensagem

Nome da Métrica Exportável através de configurações de diagnóstico Unit Tipo de agregação Description Dimensões
Mensagens Recebidas Sim Count Total O número de eventos ou mensagens enviadas para o Service Bus durante um período especificado. Para as camadas básica e padrão, as mensagens recebidas encaminhadas automaticamente são incluídas nessa métrica. E, para o nível premium, eles não estão incluídos. Nome da entidade
Mensagens Enviadas Sim Count Total O número de eventos ou mensagens recebidas do Service Bus durante um período especificado. As mensagens de encaminhamento automático de saída não estão incluídas nessa métrica. Nome da entidade
Mensagens Não Count Média Contagem de mensagens em uma fila/tópico. Essa métrica inclui mensagens em todos os diferentes estados, como ativas, mortas, agendadas, etc. Nome da entidade
Mensagens Ativas Não Count Média Contagem de mensagens ativas em uma fila/tópico. Mensagens ativas são as mensagens na fila ou assinatura que estão no estado ativo e prontas para entrega. As mensagens estão disponíveis para serem recebidas. Nome da entidade
Mensagens com letras mortas Não Count Média Contagem de mensagens com letras mortas em uma fila/tópico. Nome da entidade
Mensagens agendadas Não Count Média Contagem de mensagens agendadas em uma fila/tópico. Nome da entidade
Mensagens concluídas Sim Count Total O número de mensagens concluídas durante um período especificado. Nome da entidade
Mensagens abandonadas Sim Count Total O número de mensagens abandonadas durante um período especificado. Nome da entidade
Tamanho Não Bytes Média Tamanho de uma entidade (fila ou tópico) em bytes. Nome da entidade

Importante

Os valores para mensagens, ativas, com letras mortas, agendadas, concluídas e abandonadas são valores point-in-time. As mensagens recebidas que foram consumidas imediatamente após esse point-in-time podem não ser refletidas nessas métricas.

Nota

Quando um cliente tenta obter as informações sobre uma fila ou tópico, o serviço do Service Bus retorna algumas informações estáticas, como nome, hora da última atualização, hora criada, requer sessão ou não, etc., e algumas informações dinâmicas, como contagens de mensagens. Se a solicitação for limitada, o serviço retornará as informações estáticas e as informações dinâmicas vazias. É por isso que as contagens de mensagens são mostradas como 0 quando o namespace está sendo limitado. Este comportamento é a predefinição.

Métricas de conexão

Nome da Métrica Exportável através de configurações de diagnóstico Unit Tipo de agregação Description Dimensões
Ligações Ativas Não Count Total O número de conexões ativas em um namespace e em uma entidade no namespace. O valor dessa métrica é um valor point-in-time. As conexões que estavam ativas imediatamente após esse point-in-time podem não ser refletidas na métrica.
Conexões abertas Não Count Média O número de conexões abertas. O valor dessa métrica é uma agregação e inclui todas as conexões que foram abertas na janela de tempo de agregação. Nome da entidade
Conexões fechadas Não Count Média O número de conexões fechadas. O valor dessa métrica é uma agregação e inclui todas as conexões que foram abertas na janela de tempo de agregação. Nome da entidade

Métricas de uso de recursos

Nota

As métricas a seguir estão disponíveis apenas com o nível premium .

As métricas importantes a serem monitoradas para quaisquer interrupções de um namespace de camada premium são: uso da CPU por namespace e tamanho da memória por namespace. Configure alertas para essas métricas usando o Azure Monitor.

A outra métrica que você pode monitorar é: solicitações limitadas. No entanto, isso não deve ser um problema, desde que o namespace permaneça dentro de seus limites de memória, CPU e conexões intermediadas. Para obter mais informações, consulte Limitação na camada Premium do Barramento de Serviço do Azure

Nome da Métrica Exportável através de configurações de diagnóstico Unit Tipo de agregação Description Dimensões
Uso da CPU por namespace Não CPU Percentagem A porcentagem de uso da CPU do namespace. Réplica
Uso do tamanho da memória por namespace Não Utilização de Memória Percentagem A porcentagem de uso de memória do namespace. Réplica

Métricas de erro

Nome da Métrica Exportável através de configurações de diagnóstico Unit Tipo de agregação Description Dimensões
Erros do servidor Não Count Total O número de solicitações não processadas devido a um erro no serviço Service Bus durante um período especificado. Nome da entidade

Resultado da Operação
Erros do usuário Não Count Total O número de solicitações não processadas devido a erros do usuário durante um período especificado. Nome da entidade

Resultado da Operação

Dimensões métricas

O Barramento de Serviço do Azure dá suporte às seguintes dimensões para métricas no Azure Monitor. Adicionar dimensões às suas métricas é opcional. Se você não adicionar dimensões, as métricas serão especificadas no nível do namespace.

Nome da dimensão Description
Nome da Entidade O Service Bus oferece suporte a entidades de mensagens sob o namespace. Com a métrica 'Solicitações de entrada', a dimensão Nome da entidade terá um valor de '-NamespaceOnlyMetric-', além de todas as suas filas e tópicos. Isso representa a solicitação, que foi feita no nível do namespace. Os exemplos incluem uma solicitação para listar todas as filas/tópicos no namespace ou solicitações para entidades que falharam na autenticação ou autorização.

Registos do recurso

Esta seção lista os tipos de logs de recursos que você pode coletar para o Barramento de Serviço do Azure.

  • Registos operacionais
  • Rede virtual e logs de filtragem de IP
  • Logs de auditoria de tempo de execução

O Barramento de Serviço do Azure agora tem a capacidade de despachar logs para qualquer uma das duas tabelas de destino - Diagnóstico do Azure ou tabelas específicas de recursos no Log Analytics. Você pode usar a alternância disponível no portal do Azure para escolher tabelas de destino.

Captura de ecrã da caixa de diálogo para definir a tabela de destino.

Registos operacionais

As entradas do log operacional incluem elementos listados na tabela a seguir:

Nome Descrição Suportado no AzureDiagnostics Suportado em AZMSOperationalLogs (tabela específica de recursos)
ActivityId ID interno, usado para identificar a atividade especificada Sim Sim
EventName Nome da operação Sim Sim
ResourceId Azure Resource Manager resource ID Sim Sim
SubscriptionId ID de Subscrição Sim Sim
EventtimeString Tempo de Operação Sim No
TimeGenerated [UTC] Hora da operação executada (em UTC) Não Sim
EventProperties Propriedades da operação Sim Sim
Status Estado da operação Sim Sim
Caller Chamador de operação (o portal do Azure ou cliente de gerenciamento) Sim Sim
Provider Nome do serviço que emite os logs, por exemplo, ServiceBus Não Sim
Type Tipo de logs emitidos Não Sim
Category Categoria de log Sim No

Aqui está um exemplo de uma cadeia de caracteres JSON de log operacional:

AzureDiagnostics:


{
  "ActivityId": "0000000000-0000-0000-0000-00000000000000",
  "EventName": "Create Queue",
  "resourceId": "/SUBSCRIPTIONS/<AZURE SUBSCRPTION ID>/RESOURCEGROUPS/<RESOURCE GROUP NAME>/PROVIDERS/MICROSOFT.SERVICEBUS/NAMESPACES/<SERVICE BUS NAMESPACE NAME>",
  "SubscriptionId": "0000000000-0000-0000-0000-00000000000000",
  "EventTimeString": "9/28/2016 8:40:06 PM +00:00",
  "EventProperties": "{\"SubscriptionId\":\"0000000000-0000-0000-0000-00000000000000\",\"Namespace\":\"mynamespace\",\"Via\":\"https://mynamespace.servicebus.windows.net/f8096791adb448579ee83d30e006a13e/?api-version=2016-07\",\"TrackingId\":\"5ee74c9e-72b5-4e98-97c4-08a62e56e221_G1\"}",
  "Status": "Succeeded",
  "Caller": "ServiceBus Client",
  "category": "OperationalLogs"
}


Entrada de tabela específica do recurso:


{

  "ActivityId": "0000000000-0000-0000-0000-00000000000000",
  "EventName": "Retrieve Queue",
  "resourceId": "/SUBSCRIPTIONS/<AZURE SUBSCRPTION ID>/RESOURCEGROUPS/<RESOURCE GROUP NAME>/PROVIDERS/MICROSOFT.SERVICEBUS/NAMESPACES/<SERVICE BUS NAMESPACE NAME>",
  "SubscriptionId": "0000000000-0000-0000-0000-00000000000000",
  "TimeGenerated(UTC)": "9/28/2023 8:40:06 PM +00:00",
  "EventProperties": "{\"SubscriptionId\":\"0000000000-0000-0000-0000-00000000000000\",\"Namespace\":\"mynamespace\",\"Via\":\"https://mynamespace.servicebus.windows.net/f8096791adb448579ee83d30e006a13e/?api-version=2016-07\",\"TrackingId\":\"5ee74c9e-72b5-4e98-97c4-08a62e56e221_G1\"}",
  "Status": "Succeeded",
  "Caller": "ServiceBus Client",
  "type": "AZMSOperationalLogs",
  "Provider" : "SERVICEBUS"

}

Eventos e operações capturados em logs operacionais

Os logs operacionais capturam todas as operações de gerenciamento executadas no namespace do Barramento de Serviço do Azure. As operações de dados não são capturadas devido ao grande volume de operações de dados realizadas no Barramento de Serviço do Azure.

Nota

Para ajudá-lo a controlar melhor as operações de dados, recomendamos o uso do rastreamento do lado do cliente.

As seguintes operações de gerenciamento são capturadas em logs operacionais:

Âmbito Operação
Espaço de Nomes - Criar namespace
- Atualizar namespace
- Excluir namespace
- Atualizar namespace
- Recuperar namespace
- Política de Acesso Partilhado
Queue - Criar fila
- Fila de atualização
- Excluir fila
- AutoDelete Excluir Fila
- Recuperar Fila
Tópico - Criar Tópico
- Tópico de atualização
- Excluir tópico
- AutoDelete Excluir Tópico
- Recuperar tópico
Subscrição - Criar Subscrição
- Atualizar Subscrição
- Excluir Assinatura
- AutoDelete Excluir Assinatura
- Recuperar Subscrição

Nota

Atualmente, as operações de leitura não são rastreadas nos logs operacionais.

Rede virtual e logs de filtragem de IP

O evento de conexão de rede virtual (VNet) do Service Bus JSON inclui elementos listados na tabela a seguir:

Nome Descrição Com suporte no Diagnóstico do Azure Suportado em AZMSVnetConnectionEvents (tabela específica do recurso)
SubscriptionId Id de subscrição do Azure Sim Sim
NamespaceName Nome do espaço de nomes Sim Sim
IPAddress Endereço IP de um cliente que se conecta ao serviço Service Bus Sim Sim
AddressIP Endereço IP do cliente que se conecta ao barramento de serviço Sim Sim
TimeGenerated [UTC] Hora da operação executada (em UTC) Sim Sim
Action Ação executada pelo serviço Service Bus ao avaliar solicitações de conexão. As ações suportadas são Aceitar Conexão e Negar Conexão. Sim Sim
Reason Fornece uma razão pela qual a ação foi feita Sim Sim
Count Número de ocorrências para a ação em questão Sim Sim
ResourceId ID de recurso do Azure Resource Manager. Sim Sim
Category Categoria de log Sim No
Provider Nome do serviço que emite os logs, por exemplo, ServiceBus Não Sim
Type Tipo de Logs Emitidos Não Sim

Nota

Os logs de rede virtual são gerados somente se o namespace permitir acesso de redes selecionadas ou de endereços IP específicos (regras de filtro IP).

Aqui está um exemplo de uma cadeia de caracteres JSON de log de rede virtual:

AzureDiagnostics;

{
    "SubscriptionId": "0000000-0000-0000-0000-000000000000",
    "NamespaceName": "namespace-name",
    "IPAddress": "1.2.3.4",
    "Action": "Accept Connection",
    "Reason": "IP is accepted by IPAddress filter.",
    "Count": 1,
    "ResourceId": "/SUBSCRIPTIONS/<AZURE SUBSCRIPTION ID>/RESOURCEGROUPS/<RESOURCE GROUP NAME>/PROVIDERS/MICROSOFT.SERVICEBUS/NAMESPACES/<SERVICE BUS NAMESPACE NAME>",
    "Category": "ServiceBusVNetConnectionEvent"
}

Entrada de tabela específica do recurso:

{
    "SubscriptionId": "0000000-0000-0000-0000-000000000000",
    "NamespaceName": "namespace-name",
    "AddressIp": "1.2.3.4",
    "Action": "Accept Connection",
    "Message": "IP is accepted by IPAddress filter.",
    "Count": 1,
    "ResourceId": "/SUBSCRIPTIONS/<AZURE SUBSCRIPTION ID>/RESOURCEGROUPS/<RESOURCE GROUP NAME>/PROVIDERS/MICROSOFT.SERVICEBUS/NAMESPACES/<SERVICE BUS NAMESPACE NAME>",
    "Provider" : "SERVICEBUS",
    "Type": "AZMSVNetConnectionEvents"
}

Logs de auditoria de tempo de execução

Os logs de auditoria de tempo de execução capturam informações de diagnóstico agregadas para várias operações de acesso ao plano de dados (como enviar ou receber mensagens) no Service Bus.

Nota

Atualmente, os logs de auditoria de tempo de execução estão disponíveis apenas na camada premium .

Os logs de auditoria de tempo de execução incluem os elementos listados na tabela a seguir:

Nome Descrição Com suporte no Diagnóstico do Azure Suportado em AZMSRuntimeAuditLogs (tabela específica do recurso)
ActivityId Um UUID gerado aleatoriamente que garante exclusividade para a atividade de auditoria. Sim Sim
ActivityName Nome da operação de tempo de execução. Sim Sim
ResourceId Recurso associado à atividade. Sim Sim
Timestamp Tempo de agregação. Sim No
time Generated (UTC) Tempo agregado Não Sim
Status Estado da atividade (sucesso ou insucesso). Sim Sim
Protocol Tipo de protocolo associado à operação. Sim Sim
AuthType Tipo de autenticação (Microsoft Entra ID ou Política SAS). Sim Sim
AuthKey ID do aplicativo Microsoft Entra ou nome da política SAS usado para autenticar um recurso. Sim Sim
NetworkType Tipo de acesso à rede: Public ouPrivate. sim Sim
ClientIP Endereço IP do aplicativo cliente. Sim Sim
Count Número total de operações realizadas durante o período agregado de 1 minuto. Sim Sim
Properties Metadados específicos da operação do plano de dados. sim Sim
Category Categoria do registo Sim No
Provider Nome do serviço que emite os logs, por exemplo, ServiceBus Não Sim
Type Tipo de Logs emitidos Não Sim

Aqui está um exemplo de uma entrada de log de auditoria de tempo de execução:

AzureDiagnostics:

{
    "ActivityId": "<activity id>",
    "ActivityName": "ConnectionOpen | Authorization | SendMessage | ReceiveMessage | PeekLockMessage",
    "ResourceId": "/SUBSCRIPTIONS/xxx/RESOURCEGROUPS/<Resource Group Name>/PROVIDERS/MICROSOFT.SERVICEBUS/NAMESPACES/<Service Bus namespace>/servicebus/<service bus name>",
    "Time": "1/1/2021 8:40:06 PM +00:00",
    "Status": "Success | Failure",
    "Protocol": "AMQP | HTTP | SBMP", 
    "AuthType": "SAS | AAD", 
    "AuthKey": "<AAD Application Name| SAS policy name>",
    "NetworkType": "Public | Private", 
    "ClientIp": "x.x.x.x",
    "Count": 1, 
    "Category": "RuntimeAuditLogs"
 }

Entrada de tabela específica do recurso:

{
    "ActivityId": "<activity id>",
    "ActivityName": "ConnectionOpen | Authorization | SendMessage | ReceiveMessage | PeekLockMessage",
    "ResourceId": "/SUBSCRIPTIONS/xxx/RESOURCEGROUPS/<Resource Group Name>/PROVIDERS/MICROSOFT.SERVICEBUS/NAMESPACES/<Service Bus namespace>/servicebus/<service bus name>",
    "TimeGenerated (UTC)": "1/1/2021 8:40:06 PM +00:00",
    "Status": "Success | Failure",
    "Protocol": "AMQP | HTTP | SBMP", 
    "AuthType": "SAS | AAD", 
    "AuthKey": "<AAD Application Name| SAS policy name>",
    "NetworkType": "Public | Private", 
    "ClientIp": "x.x.x.x",
    "Count": 1, 
    "Provider": "SERVICEBUS",
    "Type"   : "AZMSRuntimeAuditLogs"
 }

Logs de erros de diagnóstico

Os logs de erro de diagnóstico capturam mensagens de erro para qualquer lado do cliente, limitação e erros de cota excedida. Eles fornecem diagnósticos detalhados para a identificação de erros.

Os Logs de Erros de Diagnóstico incluem elementos listados na tabela abaixo:

Nome Descrição Com suporte no Diagnóstico do Azure Suportado em AZMSDiagnosticErrorLogs (tabela específica do recurso)
ActivityId Um UUID gerado aleatoriamente que garante exclusividade para a atividade de auditoria. Sim Sim
ActivityName Nome da operação Sim Sim
NamespaceName Nome do namespace Sim sim
EntityType Tipo de Entidade Sim Sim
EntityName Nome da entidade Sim Sim
OperationResult Tipo de erro na operação (Clienterror ou Serverbusy ou quotaexceeded) Sim Sim
ErrorCount Contagem de erros idênticos durante o período de agregação de 1 minuto. Sim Sim
ErrorMessage Mensagem de erro detalhada Sim Sim
Provider Nome do Serviço que emite os logs. Valores possíveis: eventhub, relay e servicebus Sim Sim
Time Generated (UTC) Tempo de operação Não Sim
EventTimestamp Tempo de Operação Sim No
Category Categoria do registo Sim No
Type Tipo de Logs emitidos Não Sim

Aqui está um exemplo de entrada de log de erro de diagnóstico:

{
    "ActivityId": "0000000000-0000-0000-0000-00000000000000",
    "SubscriptionId": "<Azure Subscription Id",
    "NamespaceName": "Name of Service Bus Namespace",
    "EntityType": "Queue",
    "EntityName": "Name of Service Bus Queue",
    "ActivityName": "SendMessage",
    "ResourceId": "/SUBSCRIPTIONS/xxx/RESOURCEGROUPS/<Resource Group Name>/PROVIDERS/MICROSOFT.SERVICEBUS/NAMESPACES/<service bus namespace name>",,
    "OperationResult": "ClientError",
    "ErrorCount": 1,
    "EventTimestamp": "3/27/2024 1:02:29.126 PM +00:00",
    "ErrorMessage": "the sessionid was not set on a message, and it cannot be sent to the entity. entities that have session support enabled can only receive messages that have the sessionid set to a valid value.",
    "category": "DiagnosticErrorLogs"
 }

Entrada de tabela específica do recurso:

{
    "ActivityId": "0000000000-0000-0000-0000-00000000000000",
    "NamespaceName": "Name of Service Bus Namespace",
    "EntityType": "Queue",
    "EntityName": "Name of Service Bus Queue",
    "ActivityName": "SendMessage",
    "ResourceId": "/SUBSCRIPTIONS/xxx/RESOURCEGROUPS/<Resource Group Name>/PROVIDERS/MICROSOFT.SERVICEBUS/NAMESPACES/<service bus namespace name>",,
    "OperationResult": "ClientError",
    "ErrorCount": 1,
    "TimeGenerated [UTC]": "1/27/2024 4:02:29.126 PM +00:00",
    "ErrorMessage": "the sessionid was not set on a message, and it cannot be sent to the entity. entities that have session support enabled can only receive messages that have the sessionid set to a valid value.",
    "Type": "AZMSDiagnosticErrorLogs"
 }

Em 30 de setembro de 2026, desativaremos o suporte ao protocolo SBMP para o Barramento de Serviço do Azure, portanto, você não poderá mais usar esse protocolo após 30 de setembro de 2026. Migre para as bibliotecas mais recentes do SDK do Barramento de Serviço do Azure usando o protocolo AMQP, que oferecem atualizações de segurança críticas e recursos aprimorados, antes dessa data.

Para obter mais informações, consulte o anúncio de aposentadoria de suporte.

Tabelas de Logs do Azure Monitor

O Barramento de Serviço do Azure usa tabelas Kusto dos Logs do Azure Monitor. Você pode consultar essas tabelas com o Log Analytics. Para obter uma lista de tabelas Kusto que o serviço usa, consulte Referência da tabela Azure Monitor Logs.

Próximos passos