Armazenamento de Blobs do Azure como fonte de dados da Grade Eventos
Este artigo fornece as propriedades e o esquema para eventos de armazenamento de blob. Para obter uma introdução a esquemas de evento, consulte esquema de grade de eventos do Azure. Também fornece uma lista de inícios rápidos e de tutoriais para usar o Armazenamento de Blobs do Azure como uma origem do evento.
Observação
Somente as contas de armazenamento do tipo StorageV2 (v2 de uso geral) , BlockBlobStorage e BlobStoragedão suporte à integração de eventos. O armazenamento (v1 de uso geral)não dá suporte à integração da Grade de Eventos.
Tipos de evento disponíveis
Eventos de Armazenamento de Blobs do Azure
Esses eventos são disparados quando um cliente cria, substitui ou exclui um blob chamando as APIs REST de Blob.
Observação
Os $logs
$blobchangefeed
contêineres não estão integrados à Grade de Eventos do Azure, portanto, a atividade nesses contêineres não gerará eventos. Além disso, o uso do ponto de extremidade DFS (abfss://URI)
para contas habilitadas da namespace não-hierárquica não gerará eventos, mas o ponto de extremidade de blob (wasb:// URI)
gerará eventos.
Nome do evento | Descrição |
---|---|
Microsoft.Storage.BlobCreated | Gerar quando um blob for criado ou substituído. Especificamente, esse evento é disparado quando os clientes usam as operações PutBlob , PutBlockList ou CopyBlob que estão disponíveis na API REST do Blob e quando o Blob de Blocos é completamente confirmado. Se os clientes usarem a operação CopyBlob em contas com o recurso de namespace hierárquico habilitado, a operação CopyBlob funcionará de forma um pouco diferente. Nesse caso, o evento Microsoft.Storage.BlobCreated é disparado quando a operação CopyBlob é iniciada, e não quando o Blob de Blocos é completamente confirmado. |
Microsoft.Storage.BlobDeleted | Gerar quando um blob for excluído. Especificamente, este evento é disparado quando os clientes usam a DeleteBlob operação que esteja disponível na API REST do blob. |
Microsoft.Storage.BlobTierChanged | Disparado quando a camada de acesso de blobs é alterada. Especificamente, quando os clientes usam a operaçãoSet Blob Tier que está disponível na API REST do Blob, este evento é disparado após a alteração de camada ser concluída. |
Microsoft.Storage.AsyncOperationInitiated | Disparado quando uma operação que envolve a movimentação ou cópia de dados dos arquivos para camadas de acesso frequente ou esporádico é iniciada. Especificamente, esse evento é disparado quando os clientes chamam a API do Set Blob Tier para mover um blob da camada de arquivos para a camada de acesso frequente ou esporádico, ou quando os clientes chamam a API do Copy Blob para copiar dados de um blob na camada de arquivo para um blob na camada de acesso frequente ou esporádico. |
Exemplos de eventos
Evento Microsoft.Storage.BlobCreated
[{
"source": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/test-container/blobs/new-file.txt",
"type": "Microsoft.Storage.BlobCreated",
"time": "2017-06-26T18:41:00.9584103Z",
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"data": {
"api": "PutBlockList",
"clientRequestId": "6d79dbfb-0e37-4fc4-981f-442c9ca65760",
"requestId": "831e1650-001e-001b-66ab-eeb76e000000",
"eTag": "\"0x8D4BCC2E4835CD0\"",
"contentType": "text/plain",
"contentLength": 524288,
"blobType": "BlockBlob",
"accessTier": "Default",
"url": "https://my-storage-account.blob.core.windows.net/testcontainer/new-file.txt",
"sequencer": "00000000000004420000000000028963",
"storageDiagnostics": {
"batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
}
},
"specversion": "1.0"
}]
Evento Microsoft.Storage.BlobDeleted
[{
"source": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/testcontainer/blobs/file-to-delete.txt",
"type": "Microsoft.Storage.BlobDeleted",
"time": "2017-11-07T20:09:22.5674003Z",
"id": "4c2359fe-001e-00ba-0e04-58586806d298",
"data": {
"api": "DeleteBlob",
"requestId": "4c2359fe-001e-00ba-0e04-585868000000",
"contentType": "text/plain",
"blobType": "BlockBlob",
"accessTier": "Default",
"url": "https://my-storage-account.blob.core.windows.net/testcontainer/file-to-delete.txt",
"sequencer": "0000000000000281000000000002F5CA",
"storageDiagnostics": {
"batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
}
},
"specversion": "1.0"
}]
Evento Microsoft.Storage.BlobTierChanged
{
"source": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/testcontainer/blobs/Auto.jpg",
"type": "Microsoft.Storage.BlobTierChanged",
"time": "2021-05-04T15:00:00.8350154Z",
"id": "0fdefc06-b01e-0034-39f6-4016610696f6",
"data": {
"api": "SetBlobTier",
"clientRequestId": "68be434c-1a0d-432f-9cd7-1db90bff83d7",
"requestId": "0fdefc06-b01e-0034-39f6-401661000000",
"contentType": "image/jpeg",
"contentLength": 105891,
"blobType": "BlockBlob",
"accessTier": "Archive",
"previousTier": "Cool",
"url": "https://my-storage-account.blob.core.windows.net/testcontainer/Auto.jpg",
"sequencer": "000000000000000000000000000089A4000000000018d6ea",
"storageDiagnostics": {
"batchId": "3418f7a9-7006-0014-00f6-406dc6000000"
}
},
"specversion": "1.0"
}
Evento Microsoft.Storage.AsyncOperationInitiated
{
"source": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/testcontainer/blobs/00000.avro",
"type": "Microsoft.Storage.AsyncOperationInitiated",
"time": "2021-05-04T14:44:59.3204652Z",
"id": "8ea4e3f2-101e-003d-5ff4-4053b2061016",
"data": {
"api": "SetBlobTier",
"clientRequestId": "777fb4cd-f890-4c5b-b024-fb47300bae62",
"requestId": "8ea4e3f2-101e-003d-5ff4-4053b2000000",
"contentType": "application/octet-stream",
"contentLength": 3660,
"blobType": "BlockBlob",
"url": "https://my-storage-account.blob.core.windows.net/testcontainer/00000.avro",
"sequencer": "000000000000000000000000000089A4000000000018c6d7",
"storageDiagnostics": {
"batchId": "34128c8a-7006-0014-00f4-406dc6000000"
}
},
"specversion": "1.0"
}
Eventos Data Lake Storage Gen2
Esses eventos serão disparados se você habilitar um namespace hierárquico na conta de armazenamento e os clientes usarem o Azure Data Lake Storage Gen2 APIs REST. Para obter mais informações sobre o Azure Data Lake Storage Gen2, consulte Introdução ao Azure Data Lake Storage Gen2.
Nome do evento | Descrição |
---|---|
Microsoft.Storage.BlobCreated | Gerar quando um blob for criado ou substituído. Especificamente, esse evento será disparado quando os clientes usarem as CreateFile e FlushWithClose operações e que estão disponíveis na API REST do Azure Data Lake Storage Gen2. |
Microsoft.Storage.BlobDeleted | Gerar quando um blob for excluído. Especificamente, esse evento é disparado quando os clientes usam as DeleteFile operações que estão disponíveis na API REST do Azure Data Lake Storage Gen2. |
Microsoft.Storage.BlobRenamed | Gerado quando um blob é renomeado. Especificamente, esse evento é disparado quando os clientes usam a RenameFile operação que está disponível na API REST do Azure Data Lake Storage Gen2. |
Microsoft.Storage.DirectoryCreated | Disparado quando um diretório é criado. Especificamente, esse evento é disparado quando os clientes usam a CreateDirectory operação que está disponível na API REST do Azure Data Lake Storage Gen2. |
Microsoft.Storage.DirectoryRenamed | Disparado quando um diretório é renomeado. Especificamente, esse evento é disparado quando os clientes usam a RenameDirectory operação que está disponível na API REST do Azure Data Lake Storage Gen2. |
Microsoft.Storage.DirectoryDeleted | Disparado quando um diretório é excluído. Especificamente, este evento é disparado quando os clientes usam a DeleteDirectory operação que está disponível na API REST do Azure Data Lake Storage Gen2. |
Observação
Para o Azure Data Lake Storage Gen2, se você quiser garantir que o eventoMicrosoft. Storage. BlobCreated seja disparado apenas quando um blob de blocos for completamente confirmado, filtre o evento dasFlushWithClose
chamadas API REST. Esta chamada à API dispara o evento Microsoft. Storage. BlobCreated somente depois que os dados estão totalmente confirmados em um blob de blocos. Para saber como criar um filtro,consulteEventos de filtro da Grade de Eventos.
Exemplos de eventos
Evento da Microsoft. Storage. BlobCreated (Data Lake Storage Gen2)
Se a conta de armazenamento de Blobs tiver um namespace hierárquico, os dados se assemelharão ao exemplo anterior com uma exceção dessas alterações:
- A
data.api
chave é definida como a cadeia de caracteresCreateFile
ouFlushWithClose
. - A
contentOffset
chave está incluída no conjunto de dados.
Observação
Se os aplicativos utilizados na PutBlockList
operação para carregar um novo BLOB à conta, os dados não conterão essas alterações.
[{
"source": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/my-file-system/blobs/new-file.txt",
"type": "Microsoft.Storage.BlobCreated",
"time": "2017-06-26T18:41:00.9584103Z",
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"data": {
"api": "CreateFile",
"clientRequestId": "6d79dbfb-0e37-4fc4-981f-442c9ca65760",
"requestId": "831e1650-001e-001b-66ab-eeb76e000000",
"eTag": "\"0x8D4BCC2E4835CD0\"",
"contentType": "text/plain",
"contentLength": 0,
"contentOffset": 0,
"blobType": "BlockBlob",
"url": "https://my-storage-account.dfs.core.windows.net/my-file-system/new-file.txt",
"sequencer": "00000000000004420000000000028963",
"storageDiagnostics": {
"batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
}
},
"specversion": "1.0"
}]
Evento da Microsoft. Storage. BlobCreated (Data Lake Storage Gen2)
Se a conta de armazenamento de Blobs tiver um namespace hierárquico, os dados se assemelharão ao exemplo anterior com uma exceção dessas alterações:
- A
data.api
chave é definida como a cadeia de caracteresDeleteFile
. - A
url
chave contém o caminhodfs.core.windows.net
.
Observação
Se os aplicativos utilizados na DeleteBlob
operação para excluir um novo BLOB à conta, os dados não conterão essas alterações.
[{
"source": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/my-file-system/blobs/file-to-delete.txt",
"type": "Microsoft.Storage.BlobDeleted",
"time": "2017-06-26T18:41:00.9584103Z",
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"data": {
"api": "DeleteFile",
"clientRequestId": "6d79dbfb-0e37-4fc4-981f-442c9ca65760",
"requestId": "831e1650-001e-001b-66ab-eeb76e000000",
"contentType": "text/plain",
"blobType": "BlockBlob",
"url": "https://my-storage-account.dfs.core.windows.net/my-file-system/file-to-delete.txt",
"sequencer": "00000000000004420000000000028963",
"storageDiagnostics": {
"batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
}
},
"specversion": "1.0"
}]
Evento Microsoft.Storage.BlobRenamed (Data Lake Storage Gen2)
[{
"source": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/my-file-system/blobs/my-renamed-file.txt",
"type": "Microsoft.Storage.BlobRenamed",
"time": "2017-06-26T18:41:00.9584103Z",
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"data": {
"api": "RenameFile",
"clientRequestId": "6d79dbfb-0e37-4fc4-981f-442c9ca65760",
"requestId": "831e1650-001e-001b-66ab-eeb76e000000",
"destinationUrl": "https://my-storage-account.dfs.core.windows.net/my-file-system/my-renamed-file.txt",
"sourceUrl": "https://my-storage-account.dfs.core.windows.net/my-file-system/my-original-file.txt",
"sequencer": "00000000000004420000000000028963",
"storageDiagnostics": {
"batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
}
},
"specversion": "1.0"
}]
Evento Microsoft.Storage.DirectoryCreated (Data Lake Storage Gen2)
[{
"source": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/my-file-system/blobs/my-new-directory",
"type": "Microsoft.Storage.DirectoryCreated",
"time": "2017-06-26T18:41:00.9584103Z",
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"data": {
"api": "CreateDirectory",
"clientRequestId": "6d79dbfb-0e37-4fc4-981f-442c9ca65760",
"requestId": "831e1650-001e-001b-66ab-eeb76e000000",
"url": "https://my-storage-account.dfs.core.windows.net/my-file-system/my-new-directory",
"sequencer": "00000000000004420000000000028963",
"storageDiagnostics": {
"batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
}
},
"specversion": "1.0"
}]
Evento Microsoft.Storage.DirectoryRenamed (Data Lake Storage Gen2)
[{
"source": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/my-file-system/blobs/my-renamed-directory",
"type": "Microsoft.Storage.DirectoryRenamed",
"time": "2017-06-26T18:41:00.9584103Z",
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"data": {
"api": "RenameDirectory",
"clientRequestId": "6d79dbfb-0e37-4fc4-981f-442c9ca65760",
"requestId": "831e1650-001e-001b-66ab-eeb76e000000",
"destinationUrl": "https://my-storage-account.dfs.core.windows.net/my-file-system/my-renamed-directory",
"sourceUrl": "https://my-storage-account.dfs.core.windows.net/my-file-system/my-original-directory",
"sequencer": "00000000000004420000000000028963",
"storageDiagnostics": {
"batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
}
},
"specversion": "1.0"
}]
Evento Microsoft.Storage.DirectoryDeleted (Data Lake Storage Gen2)
[{
"source": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/my-file-system/blobs/directory-to-delete",
"type": "Microsoft.Storage.DirectoryDeleted",
"time": "2017-06-26T18:41:00.9584103Z",
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"data": {
"api": "DeleteDirectory",
"clientRequestId": "6d79dbfb-0e37-4fc4-981f-442c9ca65760",
"requestId": "831e1650-001e-001b-66ab-eeb76e000000",
"url": "https://my-storage-account.dfs.core.windows.net/my-file-system/directory-to-delete",
"recursive": "true",
"sequencer": "00000000000004420000000000028963",
"storageDiagnostics": {
"batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
}
},
"specversion": "1.0"
}]
Eventos SFTP
Esses eventos serão disparados se você habilitar um namespace hierárquico na conta de armazenamento e os clientes usarem as APIs do SFTP. Para obter mais informações sobre o suporte ao SFTP para Armazenamento de Blobs do Azure, confira Protocolo SFTP do SSH no Armazenamento de Blobs do Azure.
Nome do evento | Descrição |
---|---|
Microsoft.Storage.BlobCreated | Disparado quando um blob é criado ou substituído. Especificamente, esse evento é disparado quando os clientes usam a operação put , que corresponde às APIs SftpCreate e SftpCommit . Um blob vazio é criado quando o arquivo é aberto e o conteúdo carregado é confirmado quando o arquivo é fechado. Se o recurso SFTP Resumable Uploads de visualização estiver habilitado, alguns SftpWrite eventos também serão acionados durante o upload. |
Microsoft.Storage.BlobDeleted | Gerar quando um blob for excluído. Especificamente, esse evento também é disparado quando os clientes chamam a operação rm , que corresponde à API SftpRemove . |
Microsoft.Storage.BlobRenamed | Gerado quando um blob é renomeado. Especificamente, esse evento é disparado quando os clientes usam a operação rename em arquivos, que corresponde à API SftpRename . |
Microsoft.Storage.DirectoryCreated | Disparado quando um diretório é criado. Especificamente, esse evento é disparado quando os clientes usam a operação mkdir , que corresponde à API SftpMakeDir . |
Microsoft.Storage.DirectoryRenamed | Disparado quando um diretório é renomeado. Especificamente, esse evento é disparado quando os clientes usam a operação rename em um diretório, que corresponde à API SftpRename . |
Microsoft.Storage.DirectoryDeleted | Disparado quando um diretório é excluído. Especificamente, esse evento é disparado quando os clientes usam a operação rmdir , que corresponde à API SftpRemoveDir . |
Exemplos de eventos
Quando um evento é disparado, o serviço de Grade de Eventos envia dados sobre esse evento para o ponto de extremidade de assinatura. Esta seção tem um exemplo da aparência dos dados em cada evento do armazenamento do blob.
Evento (SFTP) Microsoft.Storage.BlobCreated
Se a conta de armazenamento de blobs usar o SFTP para criar ou substituir um blob, os dados se assemelharão ao exemplo anterior com uma exceção dessas alterações:
A
dataVersion
chave é definida a um valor de3
.A chave
data.api
está definida para a cadeia de caracteresSftpCreate
,SftpWrite
, ouSftpCommit
.A chave
clientRequestId
não está incluída.A chave
contentType
está definida comoapplication/octet-stream
.A
contentOffset
chave está incluída no conjunto de dados.A
identity
chave está incluída no conjunto de dados. Isso corresponde ao usuário local usado para autenticação do SFTP.
Observação
Os uploads de SFTP gerarão dois eventos. Um SftpCreate
para um blob vazio inicial criado ao abrir o arquivo e um SftpCommit
quando o conteúdo do arquivo é confirmado no final do upload. Se o recurso SFTP Resumable Uploads
de visualização estiver habilitado, alguns SftpWrite
eventos também serão acionados durante o upload.
[{
"source": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/testcontainer/blobs/new-file.txt",
"type": "Microsoft.Storage.BlobCreated",
"time": "2022-04-25T19:13:00.1522383Z",
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"data": {
"api": "SftpCommit",
"requestId": "831e1650-001e-001b-66ab-eeb76e000000",
"eTag": "\"0x8D4BCC2E4835CD0\"",
"contentType": "application/octet-stream",
"contentLength": 0,
"contentOffset": 0,
"blobType": "BlockBlob",
"url": "https://my-storage-account.blob.core.windows.net/testcontainer/new-file.txt",
"sequencer": "00000000000004420000000000028963",
"identity":"localuser",
"storageDiagnostics": {
"batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
}
},
"specversion": "1.0"
}]
Evento (SFTP) Microsoft.Storage.BlobDeleted
Se a conta de armazenamento de blobs usar o SFTP para excluir um blob, os dados se assemelharão ao exemplo anterior com uma exceção dessas alterações:
A
dataVersion
chave é definida a um valor de2
.A
data.api
chave é definida como a cadeia de caracteresSftpRemove
.A chave
clientRequestId
não está incluída.A chave
contentType
está definida comoapplication/octet-stream
.A
identity
chave está incluída no conjunto de dados. Isso corresponde ao usuário local usado para autenticação do SFTP.
[{
"source": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/testcontainer/blobs/new-file.txt",
"type": "Microsoft.Storage.BlobDeleted",
"time": "2022-04-25T19:13:00.1522383Z",
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"data": {
"api": "SftpRemove",
"requestId": "831e1650-001e-001b-66ab-eeb76e000000",
"contentType": "text/plain",
"blobType": "BlockBlob",
"url": "https://my-storage-account.blob.core.windows.net/testcontainer/new-file.txt",
"sequencer": "00000000000004420000000000028963",
"identity":"localuser",
"storageDiagnostics": {
"batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
}
},
"specversion": "1.0"
}]
Evento (SFTP) Microsoft.Storage.BlobRenamed
Se a conta de armazenamento de blobs usar o SFTP para renomear um blob, os dados se assemelharão ao exemplo anterior com uma exceção dessas alterações:
A
data.api
chave é definida como a cadeia de caracteresSftpRename
.A chave
clientRequestId
não está incluída.A
identity
chave está incluída no conjunto de dados. Isso corresponde ao usuário local usado para autenticação do SFTP.
[{
"source": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/testcontainer/blobs/my-renamed-file.txt",
"type": "Microsoft.Storage.BlobRenamed",
"time": "2022-04-25T19:13:00.1522383Z",
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"data": {
"api": "SftpRename",
"requestId": "831e1650-001e-001b-66ab-eeb76e000000",
"destinationUrl": "https://my-storage-account.blob.core.windows.net/testcontainer/my-renamed-file.txt",
"sourceUrl": "https://my-storage-account.blob.core.windows.net/testcontainer/my-original-file.txt",
"sequencer": "00000000000004420000000000028963",
"identity":"localuser",
"storageDiagnostics": {
"batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
}
},
"specversion": "1.0"
}]
Evento (SFTP) Microsoft.Storage.DirectoryCreated
Se a conta de armazenamento de blobs usar o SFTP para criar um diretório, os dados se assemelharão ao exemplo anterior com uma exceção dessas alterações:
A
dataVersion
chave é definida a um valor de2
.A
data.api
chave é definida como a cadeia de caracteresSftpMakeDir
.A chave
clientRequestId
não está incluída.A
identity
chave está incluída no conjunto de dados. Isso corresponde ao usuário local usado para autenticação do SFTP.
[{
"source": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/testcontainer/blobs/my-new-directory",
"type": "Microsoft.Storage.DirectoryCreated",
"time": "2022-04-25T19:13:00.1522383Z",
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"data": {
"api": "SftpMakeDir",
"requestId": "831e1650-001e-001b-66ab-eeb76e000000",
"url": "https://my-storage-account.blob.core.windows.net/testcontainer/my-new-directory",
"sequencer": "00000000000004420000000000028963",
"identity":"localuser",
"storageDiagnostics": {
"batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
}
},
"specversion": "1.0"
}]
Evento (SFTP) Microsoft.Storage.DirectoryRenamed
Se a conta de armazenamento de blobs usar o SFTP para renomear um diretório, os dados se assemelharão ao exemplo anterior com uma exceção dessas alterações:
A
data.api
chave é definida como a cadeia de caracteresSftpRename
.A chave
clientRequestId
não está incluída.A
identity
chave está incluída no conjunto de dados. Isso corresponde ao usuário local usado para autenticação do SFTP.
[{
"source": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/testcontainer/blobs/my-renamed-directory",
"type": "Microsoft.Storage.DirectoryRenamed",
"time": "2022-04-25T19:13:00.1522383Z",
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"data": {
"api": "SftpRename",
"requestId": "831e1650-001e-001b-66ab-eeb76e000000",
"destinationUrl": "https://my-storage-account.blob.core.windows.net/testcontainer/my-renamed-directory",
"sourceUrl": "https://my-storage-account.blob.core.windows.net/testcontainer/my-original-directory",
"sequencer": "00000000000004420000000000028963",
"identity":"localuser",
"storageDiagnostics": {
"batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
}
},
"specversion": "1.0"
}]
Evento (SFTP) Microsoft.Storage.DirectoryDeleted
Se a conta de armazenamento de blobs usar o SFTP para excluir um diretório, os dados se assemelharão ao exemplo anterior com uma exceção dessas alterações:
A
data.api
chave é definida como a cadeia de caracteresSftpRemoveDir
.A chave
clientRequestId
não está incluída.A
identity
chave está incluída no conjunto de dados. Isso corresponde ao usuário local usado para autenticação do SFTP.
[{
"source": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/testcontainer/blobs/directory-to-delete",
"type": "Microsoft.Storage.DirectoryDeleted",
"time": "2022-04-25T19:13:00.1522383Z",
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"data": {
"api": "SftpRemoveDir",
"requestId": "831e1650-001e-001b-66ab-eeb76e000000",
"url": "https://my-storage-account.blob.core.windows.net/testcontainer/directory-to-delete",
"recursive": "false",
"sequencer": "00000000000004420000000000028963",
"identity":"localuser",
"storageDiagnostics": {
"batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
}
},
"specversion": "1.0"
}]
Eventos relacionados a política
Esses eventos são disparados quando as ações definidas por uma política são executadas.
Nome do evento | Descrição |
---|---|
Microsoft.Storage.BlobInventoryPolicyCompleted | Disparado quando a execução do inventário é concluída para uma regra definida como uma política de inventário. Este evento também ocorre se a execução do inventário falha com um erro de usuário antes de começar. Por exemplo, uma política inválida ou um erro ocorrido quando um contêiner de destino não está presente vai disparar o evento. |
Microsoft.Storage.LifecyclePolicyCompleted | Disparado quando as ações definidas por uma política de gerenciamento de ciclo de vida são executadas. |
Exemplos de eventos
Quando um evento é disparado, o serviço de Grade de Eventos envia dados sobre esse evento para o ponto de extremidade de assinatura. Esta seção tem um exemplo da aparência dos dados em cada evento do armazenamento do blob.
Evento Microsoft.Storage.BlobInventoryPolicyCompleted
{
"source": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/BlobInventory/providers/Microsoft.EventGrid/topics/BlobInventoryTopic",
"subject": "BlobDataManagement/BlobInventory",
"type": "Microsoft.Storage.BlobInventoryPolicyCompleted",
"time": "2021-05-28T15:03:18Z",
"id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"data": {
"scheduleDateTime": "2021-05-28T03:50:27Z",
"accountName": "testaccount",
"ruleName": "Rule_1",
"policyRunStatus": "Succeeded",
"policyRunStatusMessage": "Inventory run succeeded, refer manifest file for inventory details.",
"policyRunId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"manifestBlobUrl": "https://testaccount.blob.core.windows.net/inventory-destination-container/2021/05/26/13-25-36/Rule_1/Rule_1.csv"
},
"specversion": "1.0"
}
Evento Microsoft.Storage.LifecyclePolicyCompleted
{
"source": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/contosoresourcegroup/providers/Microsoft.Storage/storageAccounts/contosostorageaccount",
"subject": "BlobDataManagement/LifeCycleManagement/SummaryReport",
"type": "Microsoft.Storage.LifecyclePolicyCompleted",
"time": "2022-05-26T00:00:40.1880331",
"id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"data": {
"scheduleTime": "2022/05/24 22:57:29.3260160",
"deleteSummary": {
"totalObjectsCount": 16,
"successCount": 14,
"errorList": ""
},
"tierToCoolSummary": {
"totalObjectsCount": 0,
"successCount": 0,
"errorList": ""
},
"tierToColdSummary": {
"totalObjectsCount": 0,
"successCount": 0,
"errorList": ""
},
"tierToArchiveSummary": {
"totalObjectsCount": 0,
"successCount": 0,
"errorList": ""
}
},
"specversion": "1.0"
}
Propriedades do evento
Um evento tem os seguintes dados de nível superior:
Propriedade | Type | Descrição |
---|---|---|
source |
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. |
type |
string | Um dos tipos de evento registrados para a origem do evento. |
time |
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. |
specversion |
string | Versão de especificação do esquema CloudEvents. |
O objeto de dados tem as seguintes propriedades:
Propriedade | Type | Descrição |
---|---|---|
api |
string | A operação que disparou o evento. |
clientRequestId |
string | Uma ID da solicitação fornecida pelo cliente para a operação da API de armazenamento. Esta ID pode ser usada para correlacionar com os logs de diagnóstico do Armazenamento do Microsoft Azure usando o campo "client-request-id" nos logs,e pode ser fornecida em solicitações de cliente usando o cabeçalho "x-ms-client-request-id". Consulte Formato de Log. |
requestId |
string | ID da solicitação gerada pelo serviço de operação da API de armazenamento. Pode ser usada para correlacionar com os logs de diagnóstico do Armazenamento do Azure usando o campo "request-id-header" nos logs, e retornada pela inicialização da chamada á API no cabeçalho 'x-ms-request-id'. Consulte Formato de Log. |
eTag |
string | O valor que você pode usar para executar as operações condicionalmente. |
contentType |
string | O tipo de conteúdo especificado para o blob. |
contentLength |
Número inteiro | O tamanho do blob em bytes. |
blobType |
string | O tipo de blob. Os valores válidos são "BlockBlob" ou "PageBlob". |
accessTier |
string | A camada de destino do blob. Aparece somente para o evento BlobTierChanged. |
previousTier |
string | A camada de origem do blob. Aparece somente para o evento BlobTierChanged. Se o blob estiver inferindo a camada da conta de armazenamento, esse campo não será exibido. |
contentOffset |
número | O deslocamento de bytes de uma operação de gravação realizada no ponto em que o aplicativo de gatilho de evento conclui a gravação no arquivo. Aparece somente durante os eventos disparados nas contas de armazenamento de BLOBs que têm um namespace hierárquico. |
destinationUrl |
string | O arquivo com URL existirá após a conclusão da operação. Por exemplo, se um arquivo for renomeado, a destinationUrl Propriedade conterá a URL do nome do novo arquivo. Aparece somente durante os eventos disparados nas contas de armazenamento de BLOBs que têm um namespace hierárquico. |
sourceUrl |
string | O arquivo com URL existirá antes da operação ser concluída. Por exemplo, se um arquivo for renomeado, asourceUrl URL contém o nome do arquivo original antes da operação de renomeação. Aparece somente durante os eventos disparados nas contas de armazenamento de BLOBs que têm um namespace hierárquico. |
url |
string | O caminho para o blob. Se o cliente usar uma API REST de Blob, a url terá essa estrutura: <storage-account-name>.blob.core.windows.net\<container-name>\<file-name> . Se o cliente usar uma API REST Data Lake Storage, a url terá essa estrutura: <storage-account-name>.dfs.core.windows.net/<file-system-name>/<file-name> . |
recursive |
string | True para executar a operação em todos os diretórios filhos; de outra maneiraFalse . Aparece somente durante os eventos disparados nas contas de armazenamento de BLOBs que têm um namespace hierárquico. |
sequencer |
string | Um valor de cadeia de caracteres opaca que representa a sequência lógica de eventos para qualquer nome específico de blob. Os usuários podem usar a comparação de cadeia de caracteres padrão para entender a sequência relativa dos dois eventos no mesmo nome de blob. |
identity |
string | Um valor de cadeia de caracteres que representa a identidade associada ao evento. Para o SFTP, esse é o nome de usuário local. |
storageDiagnostics |
objeto | Dados de diagnóstico ocasionalmente incluídos pelo serviço de Armazenamento do Azure. Quando presente, deve ser ignorado pelos consumidores de evento. |
Tutoriais e guias de instruções
Título | Descrição |
---|---|
Início Rápido: encaminhar eventos de armazenamento de Blob para um ponto de extremidade da Web personalizado com a CLI do Azure | Mostra como usar a CLI do Azure para enviar eventos de armazenamento de blob para um WebHook. |
Início Rápido: encaminhar eventos de armazenamento de Blobs para um ponto de extremidade da Web personalizado com PowerShell | Mostra como usar o Azure PowerShell para enviar eventos de armazenamento de blobs para um WebHook. |
Início Rápido: criar e rotear eventos personalizados de armazenamento de Blobs com o portal do Azure | Mostra como usar o portal para enviar eventos de armazenamento de blob para um WebHook. |
CLI do Azure: assinar eventos para uma conta de armazenamento de Blob | Script de exemplo que assina evento para uma conta de armazenamento de Blob. Ele envia o evento para um WebHook. |
PowerShell: assinar eventos para uma conta de armazenamento de Blob | Script de exemplo que assina evento para uma conta de armazenamento de Blob. Ele envia o evento para um WebHook. |
Modelo do Gerenciador de Recursos: criar o armazenamento de Blob e assinatura | Implanta uma conta de armazenamento de blobs do Azure e assina eventos para essa conta de armazenamento. Envia eventos para um WebHook. |
Visão geral: reagir aos eventos de armazenamento de Blobs | Visão geral da integração do Armazenamento de Blobs com a Grade de Eventos. |
Próximas etapas
- Para ver uma introdução à Grade de Eventos do Azure, confira O que é uma Grade de eventos?
- Para obter mais informações sobre como criar uma assinatura da Grade de Eventos do Azure, confira Event Grid subscription schema (Esquema de assinatura da Grade de Eventos).
- Para obter uma introdução ao trabalhar com eventos de armazenamento de blob, consulte eventos de armazenamento de Blob de rota - CLI do Azure.