Compartilhar via


Barramento de Serviço do Azure como uma fonte da Grade de Eventos

Este artigo fornece as propriedades e o esquema para eventos do Barramento de Serviço. Para obter uma introdução a esquemas de evento, consulte esquema de grade de eventos do Azure.

Observação

Somente o namespace do Barramento de Serviço na camada Premium dá suporte à integração de eventos. As camadas Básico e Standard não têm suporte para integração com a Grade de Eventos.

Tipos de evento disponíveis

Barramento de Serviço emite os seguintes tipos de evento:

Tipo de evento Descrição
Microsoft.ServiceBus.ActiveMessagesAvailableWithNoListeners Gerado quando uma nova mensagem ativa chega em uma fila ou assinatura e não há receptores escutando.
Microsoft.ServiceBus.DeadletterMessagesAvailableWithNoListeners Gerado quando uma nova mensagem ativa chega em uma fila de mensagens mortas e não há ouvintes ativos.
Microsoft.ServiceBus.ActiveMessagesAvailablePeriodicNotifications Gerado a cada 30 segundos se houver mensagens ativas em uma fila ou assinatura, mesmo se houver ouvintes ativos nessa fila ou assinatura específica. Ele também é gerado quando a contagem de mensagens ativas faz a transição de 0 para um valor positivo para a fila ou a assinatura.
Microsoft.ServiceBus.DeadletterMessagesAvailablePeriodicNotifications Gerado a cada 30 segundos se houver mensagens na entidade de mensagens mortas de uma fila ou assinatura, mesmo se houver ouvintes ativos na entidade de mensagens mortas dessa fila ou assinatura específica. Ele também é gerado quando a contagem de mensagens de mortas faz a transição de 0 para um valor positivo da entidade de mensagens mortas da fila ou da assinatura.

Exemplo de evento

Mensagens ativas disponíveis sem ouvintes

Esse evento é gerado se houver mensagens ativas em uma fila ou assinatura, e nenhum receptor escutando.

[{
  "topic": "/subscriptions/{subscription-id}/resourcegroups/{your-rg}/providers/Microsoft.ServiceBus/namespaces/{your-service-bus-namespace}",
  "subject": "topics/{your-service-bus-topic}/subscriptions/{your-service-bus-subscription}",
  "eventType": "Microsoft.ServiceBus.ActiveMessagesAvailableWithNoListeners",
  "eventTime": "2018-02-14T05:12:53.4133526Z",
  "id": "dede87b0-3656-419c-acaf-70c95ddc60f5",
  "data": {
    "namespaceName": "YOUR SERVICE BUS NAMESPACE WILL SHOW HERE",
    "requestUri": "https://{your-service-bus-namespace}.servicebus.windows.net/{your-topic}/subscriptions/{your-service-bus-subscription}/messages/head",
    "entityType": "subscriber",
    "queueName": "QUEUE NAME IF QUEUE",
    "topicName": "TOPIC NAME IF TOPIC",
    "subscriptionName": "SUBSCRIPTION NAME"
  },
  "dataVersion": "1",
  "metadataVersion": "1"
}]

Mensagens mortas disponíveis sem ouvintes

O esquema para um evento de fila de mensagens mortas é semelhante. Você tem pelo menos um evento por fila de mensagens mortas, que tem mensagens e receptores não ativos.

[{
  "topic": "/subscriptions/{subscription-id}/resourcegroups/{your-rg}/providers/Microsoft.ServiceBus/namespaces/{your-service-bus-namespace}",
  "subject": "topics/{your-service-bus-topic}/subscriptions/{your-service-bus-subscription}",
  "eventType": "Microsoft.ServiceBus.DeadletterMessagesAvailableWithNoListeners",
  "eventTime": "2018-02-14T05:12:53.4133526Z",
  "id": "dede87b0-3656-419c-acaf-70c95ddc60f5",
  "data": {
    "namespaceName": "YOUR SERVICE BUS NAMESPACE WILL SHOW HERE",
    "requestUri": "https://{your-service-bus-namespace}.servicebus.windows.net/{your-topic}/subscriptions/{your-service-bus-subscription}/$deadletterqueue/messages/head",
    "entityType": "subscriber",
    "queueName": "QUEUE NAME IF QUEUE",
    "topicName": "TOPIC NAME IF TOPIC",
    "subscriptionName": "SUBSCRIPTION NAME"
  },
  "dataVersion": "1",
  "metadataVersion": "1"
}]

Notificações periódicas disponíveis de mensagens ativas

Esse evento é gerado periodicamente se você tiver mensagens ativas na fila ou assinatura específica, mesmo se houver ouvintes ativos para essa fila ou assinatura específica.

[{
  "topic": "/subscriptions/<subscription id>/resourcegroups/DemoGroup/providers/Microsoft.ServiceBus/namespaces/<YOUR SERVICE BUS NAMESPACE WILL SHOW HERE>",
  "subject": "topics/<service bus topic>/subscriptions/<service bus subscription>",
  "eventType": "Microsoft.ServiceBus.ActiveMessagesAvailablePeriodicNotifications",
  "eventTime": "2018-02-14T05:12:53.4133526Z",
  "id": "dede87b0-3656-419c-acaf-70c95ddc60f5",
  "data": {
    "namespaceName": "YOUR SERVICE BUS NAMESPACE WILL SHOW HERE",
    "requestUri": "https://YOUR-SERVICE-BUS-NAMESPACE-WILL-SHOW-HERE.servicebus.windows.net/TOPIC-NAME/subscriptions/SUBSCRIPTIONNAME/$deadletterqueue/messages/head",
    "entityType": "subscriber",
    "queueName": "QUEUE NAME IF QUEUE",
    "topicName": "TOPIC NAME IF TOPIC",
    "subscriptionName": "SUBSCRIPTION NAME"
  },
  "dataVersion": "1",
  "metadataVersion": "1"
}]

Notificações periódicas disponíveis sobre mensagens mortas

Esse evento será gerado periodicamente se você tiver mensagens mortas na fila ou assinatura específica, mesmo se houver ouvintes ativos na entidade de mensagens mortas dessa fila ou assinatura específica.

[{
  "topic": "/subscriptions/<subscription id>/resourcegroups/DemoGroup/providers/Microsoft.ServiceBus/namespaces/<YOUR SERVICE BUS NAMESPACE WILL SHOW HERE>",
  "subject": "topics/<service bus topic>/subscriptions/<service bus subscription>",
  "eventType": "Microsoft.ServiceBus.DeadletterMessagesAvailablePeriodicNotifications",
  "eventTime": "2018-02-14T05:12:53.4133526Z",
  "id": "dede87b0-3656-419c-acaf-70c95ddc60f5",
  "data": {
    "namespaceName": "YOUR SERVICE BUS NAMESPACE WILL SHOW HERE",
    "requestUri": "https://YOUR-SERVICE-BUS-NAMESPACE-WILL-SHOW-HERE.servicebus.windows.net/TOPIC-NAME/subscriptions/SUBSCRIPTIONNAME/$deadletterqueue/messages/head",
    "entityType": "subscriber",
    "queueName": "QUEUE NAME IF QUEUE",
    "topicName": "TOPIC NAME IF TOPIC",
    "subscriptionName": "SUBSCRIPTION NAME"
  },
  "dataVersion": "1",
  "metadataVersion": "1"
}]

Propriedades do evento

Um evento tem os seguintes dados de nível superior:

Propriedade Type Descrição
topic string Caminho de recurso completo para a origem do evento. Este campo não é gravável. A Grade de Eventos fornece esse valor.
subject string Caminho definido pelo publicador para o assunto do evento.
eventType string Um dos tipos de evento registrados para a origem do evento.
eventTime string A hora em que o evento é gerado com base na hora UTC do provedor.
id string Identificador exclusivo do evento.
data objeto Dados de eventos do armazenamento de blob.
dataVersion string A versão do esquema do objeto de dados. O publicador define a versão do esquema.
metadataVersion string A versão do esquema dos metadados do evento. Grade de Eventos define o esquema de propriedades de nível superior. A Grade de Eventos fornece esse valor.

O objeto de dados tem as seguintes propriedades:

Propriedade Type Descrição
namespaceName string O namespace do Barramento de Serviço onde está o recurso existente.
requestUri string O URI para a fila específica ou a assinatura que emite o evento.
entityType string O tipo de entidade de Barramento de Serviço que emite eventos (fila ou assinatura).
queueName string A fila de mensagens ativas se inscreve-se em uma fila. Valor nulo se usar tópicos / assinaturas.
topicName string O tópico da assinatura do Barramento de Serviço ao qual as mensagens ativas pertencem. Valor nulo se usar uma fila.
subscriptionName string A assinatura do Barramento de Serviço com as mensagens ativas. Valor nulo se usar uma fila.

Tutoriais e guias de instruções

Título Descrição
Tutorial: Exemplos de integração do Barramento de Serviço do Azure para a Grade de Eventos do Azure A Grade de Eventos envia mensagens do tópico do Barramento de Serviço para o aplicativo de função e o aplicativo lógico.
Integração do Barramento de Serviço do Azure à Grade de Eventos Visão geral da integração do Barramento de Serviço com a Grade de Eventos.

Observação

Quando ocorre um failover para um namespace do Barramento de Serviço habilitado para Recuperação Geográfica, o namespace secundário não emite eventos para a Grade de Eventos. Você precisa adicionar manualmente a assinatura da Grade de Eventos para o namespace secundário.

Próximas etapas