Partilhar via


Notificações de Recursos do Azure - Eventos de Gerenciamento de Recursos na Grade de Eventos do Azure

O tópico do sistema de Gerenciamento de Recursos do Azure fornece informações sobre o ciclo de vida de vários recursos do Azure.

Os tópicos do sistema de Grade de Eventos para assinaturas do Azure e grupos de recursos do Azure fornecem eventos de ciclo de vida de recursos usando uma gama mais ampla de tipos de eventos, incluindo eventos de ação, gravação e exclusão para cenários que envolvem sucesso, falha e cancelamento. No entanto, vale a pena notar que eles não incluem a carga útil do recurso. Para obter detalhes sobre esses eventos, consulte o tópico do sistema de Grade de Eventos para assinaturas do Azure e o tópico do sistema de Grade de Eventos para grupos de recursos do Azure.

Por outro lado, o tópico do sistema Azure Resource Notifications (ARN) powered Azure Resource Management oferece uma seleção mais direcionada de tipos de eventos, especificamente CreatedOrUpdated (correspondente ao ResourceWriteSuccess tópico do sistema de assinatura do Azure da Grade de Eventos) e Deleted (correspondente ao ResourceDeleteSuccess tópico do sistema de assinatura do Azure da Grade de Eventos). Esses eventos vêm com informações abrangentes sobre a carga útil, tornando mais fácil para os clientes aplicarem filtragem e refinarem seu fluxo de notificações.

Para obter a lista de tipos de recursos expostos, consulte Recursos do Azure Resource Graph ou use a seguinte consulta do Azure Resource Graph.

resources
| distinct ['type']

Nota

O tópico do sistema de Gestão de Recursos do Azure ainda não suporta todos os tipos de recursos da tabela de recursos do Azure Resource Graph. Estamos a trabalhar para melhorar esta experiência.

Tipos de evento

O tópico do sistema ARN Resources oferece dois tipos de eventos para consumo:

Tipo de evento Description
Microsoft.ResourceNotifications.Resources.CreatedOrUpdated Gerado quando um recurso é criado ou atualizado com êxito.
Microsoft.ResourceNotifications.Resources.Deleted Gerado quando um recurso é excluído.

Controlo de acesso baseado em funções

Atualmente, esses eventos são emitidos exclusivamente no escopo da assinatura do Azure. Isso implica que a entidade que cria a assinatura de evento para esse tipo de tópico receba notificações em toda essa assinatura do Azure. Por motivos de segurança, é imperativo restringir a capacidade de criar assinaturas de eventos neste tópico para entidades com acesso de leitura em toda a assinatura do Azure. Para acessar dados por meio deste tópico do sistema, além das permissões genéricas exigidas pela Grade de Eventos, a seguinte permissão específica de Notificações de Recursos do Azure é necessária: Microsoft.ResourceNotifications/systemTopics/subscribeToResources/action.

Esquemas de eventos

Esta seção fornece esquemas para os CreatedOrUpdated eventos e Deleted .

Esquema de evento para o evento CreatedOrUpdated

Aqui está o esquema:

{
    "id": "string",
    "source": "string",
    "subject": "string",
    "data": {
        "resourceInfo": {
            "id": "string",
            "name": "string",
            "type": "string",
            "location": "string",
            "tags": "string",
            "properties": {
                "_comment": "object-unique-to-each-publisher"
            }
        },
        "apiVersion": "string",
        "operationalInfo": {
            "resourceEventTime": "datetime"
        }
    },
    "type": "string",
    "specversion": "string",
    "time": "string"
}

Esquema de eventos para o evento Deleted

Aqui está o esquema:

{
    "id": "string",
    "source": "string",
    "subject": "string",
    "data": {
        "resourceInfo": {
            "id": "string",
            "name": "string",
            "type": "string"
        },
        "operationalInfo": {
            "resourceEventTime": "datetime"
        }
    },
    "type": "string",
    "specversion": "string",
    "time": "string"
}

Um evento no formato de esquema de eventos da Grade de Eventos tem as seguintes propriedades de nível superior:

Propriedade Type Description
id String Identificador exclusivo do evento
topic String A assinatura do Azure para a qual este tópico do sistema está sendo criado
subject String Caminho definido pelo Publisher para o recurso base no qual esse evento é emitido.
data Object Contém dados de evento específicos para o provedor de recursos. Para obter mais informações, consulte a tabela a seguir.
eventType String Tipo de evento registrado deste tipo de tópico do sistema
dataVersion String A versão do esquema do objeto de dados
metadataVersion String A versão do esquema dos metadados do evento
eventTime String
Formato: 2022-11-07T18:43:09.2894075Z
A hora em que o evento é gerado com base na hora UTC do provedor

Um evento no formato de esquema de eventos na nuvem tem as seguintes propriedades de nível superior:

Propriedade Type Description
id String Identificador exclusivo do evento
source String A assinatura do Azure para a qual este tópico do sistema está sendo criado.
subject String Caminho definido pelo Publisher para o recurso base no qual esse evento é emitido.
type String Tipo de evento registrado deste tipo de tópico do sistema
time String
Formato: 2022-11-07T18:43:09.2894075Z
A hora em que o evento é gerado com base na hora UTC do provedor
data Object Contém dados de evento específicos para o provedor de recursos. Para obter mais informações, consulte a tabela a seguir.
specversion String Versão da especificação do esquema CloudEvents.

O data objeto tem as seguintes propriedades:

Propriedade Type Description
resourceInfo Object Dados específicos do recurso. Para obter mais informações, consulte a tabela a seguir.
apiVersion String Versão da API das propriedades do recurso.
operationalInfo Object Detalhes das informações operacionais referentes ao recurso.

O resourceInfo objeto tem as seguintes propriedades comuns entre CreatedOrUpdated eventos e Deleted eventos:

Propriedade Type Description
id String Caminho definido pelo editor para o assunto do evento
name String Este campo indica a ID do evento. Ele sempre leva o valor da última seção do id campo.
type String O tipo de evento que está sendo emitido. Neste contexto, ou é Microsoft.ResourceNotifications.Resources.CreatedOrUpdated ou Microsoft.ResourceNotifications.Resources.Deleted.

O resourceInfo objeto para o CreatedOrUpdated evento tem as seguintes propriedades extras:

Propriedade Type Description
location String Local ou região onde o recurso está localizado.
tags String Tags para o recurso.
properties Object Carga útil do recurso.

Somente o CreatedOrUpdated evento inclui o properties objeto. O esquema deste properties objeto é exclusivo para cada editor. Para descobrir o esquema, consulte a documentação da API REST para o recurso específico do Azure. Você pode encontrar um exemplo na seção Exemplos de eventos deste artigo.

            "properties": {
                "_comment": "<< object-unique-to-each-publisher >>"
            }

O operationalInfo objeto tem as seguintes propriedades:

Propriedade Type Description
resourceEventTime DateTime Data e hora em que o recurso foi criado ou atualizado (para CreatedOrUpdated evento) ou excluído (para Deleted evento).

Exemplos de eventos

Evento CreatedOrUpdated

Esta seção mostra o CreatedOrUpdated evento gerado quando uma conta de Armazenamento do Azure é criada na assinatura do Azure na qual o tópico do sistema é criado.

{
  "id": "4eef929a-a65c-47dd-93e2-46b8c17c6c17",
  "source": "/subscriptions/{subscription-id}",
  "subject": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Storage/storageAccounts/{storageAccount-name}",
  "data": {
    "resourceInfo": {
      "tags": {},
      "id": "/subscriptions/{subcription-id}/resourceGroups/{rg-name}/providers/Microsoft.Storage/storageAccounts/{storageAccount-name}",
      "name": "StorageAccount-name",
      "type": "Microsoft.Storage/storageAccounts",
      "location": "eastus",
      "properties": {
        "privateEndpointConnections": [],
        "minimumTlsVersion": "TLS1_2",
        "allowBlobPublicAccess": 1,
        "allowSharedKeyAccess": 1,
        "networkAcls": {
          "bypass": "AzureServices",
          "virtualNetworkRules": [],
          "ipRules": [],
          "defaultAction": "Allow"
        },
        "supportsHttpsTrafficOnly": 1,
        "encryption": {
          "requireInfrastructureEncryption": 0,
          "services": {
            "file": {
              "keyType": "Account",
              "enabled": 1,
              "lastEnabledTime": "2023-07-28T20:12:50.6380308Z"
            },
            "blob": {
              "keyType": "Account",
              "enabled": 1,
              "lastEnabledTime": "2023-07-28T20:12:50.6380308Z"
            }
          },
          "keySource": "Microsoft.Storage"
        },
        "accessTier": "Hot",
        "provisioningState": "Succeeded",
        "creationTime": "2023-07-28T20:12:50.4661564Z",
        "primaryEndpoints": {
          "dfs": "https://{storageAccount-name}.dfs.core.windows.net/",
          "web": "https://{storageAccount-name}.z13.web.core.windows.net/",
          "blob": "https://{storageAccount-name}.blob.core.windows.net/",
          "queue": "https://{storageAccount-name}.queue.core.windows.net/",
          "table": "https://{storageAccount-name}.table.core.windows.net/",
          "file": "https://{storageAccount-name}.file.core.windows.net/"
        },
        "primaryLocation": "eastus",
        "statusOfPrimary": "available",
        "secondaryLocation": "westus",
        "statusOfSecondary": "available",
        "secondaryEndpoints": {
          "dfs": "https://{storageAccount-name} -secondary.dfs.core.windows.net/",
          "web": "https://{storageAccount-name}-secondary.z13.web.core.windows.net/",
          "blob": "https://{storageAccount-name}-secondary.blob.core.windows.net/",
          "queue": "https://{storageAccount-name}-secondary.queue.core.windows.net/",
          "table": "https://{storageAccount-name}-secondary.table.core.windows.net/"
        }
      }
    },
    "apiVersion": "2019-06-01",
    "operationalInfo": {
      "resourceEventTime": "2023-07-28T20:13:10.8418063Z"
    }
  },
  "type": "Microsoft.ResourceNotifications.Resources.CreatedOrUpdated",
  "specversion": "1.0",
  "time": "2023-07-28T20:13:10.8418063Z"
}

Evento excluído

Esta seção mostra o Deleted evento gerado quando uma conta de Armazenamento do Azure é excluída na assinatura do Azure na qual o tópico do sistema é criado.

{
  "id": "d4611260-d179-4f86-b196-3a9d4128be2d",
  "source": "/subscriptions/{subscription-id}",
  "subject": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Storage/storageAccounts/{storageAccount-name}",
  "data": {
    "resourceInfo": {
      "id": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Storage/storageAccounts/{storageAccount-name}",
      "name": "storageAccount-name",
      "type": "Microsoft.Storage/storageAccounts"
    },
    "operationalInfo": {
      "resourceEventTime": "2023-07-28T20:11:36.6347858Z"
    }
  },
  "type": "Microsoft.ResourceNotifications.Resources.Deleted",
  "specversion": "1.0",
  "time": "2023-07-28T20:11:36.6347858Z"
}

Contactos

Se você tiver alguma dúvida ou feedback sobre este recurso, não hesite em contactar-nos em arnsupport@microsoft.com.

Para melhor ajudá-lo com feedback específico sobre um determinado evento, forneça as seguintes informações:

Para eventos em falta:

  • Nome do tipo de tópico do sistema
  • Carimbo de data/hora aproximado em UTC quando a operação foi executada
  • ID do recurso de base para o qual a notificação foi gerada
  • Navegue até seu recurso no portal do Azure e selecione o modo de exibição JSON no canto direito. ID do recurso é o primeiro campo na página de exibição JSON.
  • Tipo de evento esperado
  • Operação executada (por exemplo, VM iniciada ou interrompida, conta de armazenamento criada, etc.)
  • Descrição do problema encontrado (por exemplo, VM iniciada e nenhum evento Microsoft.ResourceNotifications.HealthResources.AvailabilityStatusChanged gerado)
  • Se possível, forneça o ID de correlação da operação executada

Para eventos que foram atrasados ou têm conteúdo inesperado

  • Nome do tipo de tópico do sistema
  • Todo o conteúdo da notificação, excluindo data.resourceInfo.properties
  • Descrição do problema encontrado e dos valores de campo afetados

Certifique-se de que não está a fornecer quaisquer informações identificáveis do utilizador final enquanto partilha estes dados.

Próximos passos

Consulte Subscrever Notificações de Recursos do Azure - Eventos de Gestão de Recursos.