Хранилище BLOB-объектов Azure в качестве источника Сетки событий
В этой статье описаны свойства и схема событий хранилища BLOB-объектов. Общие сведения о схемах событий см. в статье Схема событий службы "Сетка событий Azure". Здесь также приводится список кратких руководств и учебников по использованию Хранилища BLOB-объектов Azure в качестве источника событий.
Примечание.
Интеграцию событий поддерживают только учетные записи хранения типа StorageV2 (general purpose v2), BlockBlobStorage и BlobStorage. Учетные записи хранения типа Storage (general purpose v1) не поддерживают интеграцию с Сеткой событий.
Доступные типы событий
События хранилища BLOB-объектов
Эти события активируются, когда клиент создает, заменяет или удаляет BLOB-объект, вызывая REST API BLOB-объектов.
Примечание.
Контейнеры $logs
и $blobchangefeed
не интегрированы с Сеткой событий, поэтому действия в этих контейнерах не будут создавать события. Кроме того, использование конечной точки DFS (abfss://URI)
для учетных записей с включенными неиерархическими пространствами имен не приведет к созданию событий, а конечная точка BLOB-объекта (wasb:// URI)
будет создавать события.
Имя события | Description |
---|---|
Microsoft.Storage.BlobCreated | Активируется при создании или замене BLOB-объекта. В частности, это событие активируется, когда клиенты используют операции PutBlob , PutBlockList или CopyBlob , доступные в REST API больших двоичных объектов, а также когда блочный большой двоичный объект полностью фиксируется. Если клиенты используют операцию CopyBlob для учетных записей, для которых включена функция иерархического пространства имен, операция CopyBlob производится немного иначе. В этом случае событие Microsoft.Storage.BlobCreated активируется при инициации операции CopyBlob , а не при полной фиксации блочного BLOB-объекта. |
Microsoft.Storage.BlobDeleted | Активируется при удалении BLOB-объекта. В частности, это событие активируется, когда клиенты вызывают операцию DeleteBlob , доступную в REST API BLOB-объектов. |
Microsoft.Storage.BlobTierChanged | Активируется при изменении уровня доступа к большому двоичному объекту. В частности, когда клиенты вызывают операцию Set Blob Tier , доступную в REST API BLOB-объектов, это событие активируется после изменения уровня. |
Microsoft.Storage.AsyncOperationInitiated | Активируется в момент инициации операции, включая перемещение или копирование данных из архива на горячий или холодный уровень хранилища. В частности, это событие активируется, когда клиенты вызывают API Set Blob Tier для перемещения BLOB-объекта c уровня архива на горячий или холодный уровень хранилища или когда клиенты вызывают API Copy Blob для копирования данных из BLOB-объекта на уровне архива в BLOB-объект на горячем или холодном уровне хранилища. |
Примеры событий
Событие 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",
"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"
}]
Событие 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",
"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"
}]
Событие 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"
}
Событие 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"
}
События Data Lake Storage 2-го поколения
Эти события активируются, если для учетной записи хранения включено иерархическое пространство имен и клиенты используют REST API Azure Data Lake Storage 2-го поколения. Дополнительные сведения об Azure Data Lake Storage 2-го поколения см. в статье Общие сведения о хранилище Azure Data Lake Storage 2-го поколения.
Имя события | Description |
---|---|
Microsoft.Storage.BlobCreated | Активируется при создании или замене BLOB-объекта. В частности, это событие активируется, когда клиенты используют операции CreateFile и FlushWithClose , доступные в REST API Azure Data Lake Storage 2-го поколения. |
Microsoft.Storage.BlobDeleted | Активируется при удалении BLOB-объекта. В частности, это событие активируется, когда клиенты вызывают операцию DeleteFile , доступную в REST API Azure Data Lake Storage 2-го поколения. |
Microsoft.Storage.BlobRenamed | Активируется при переименовании BLOB-объекта. В частности, это событие активируется, когда клиенты используют операцию RenameFile , доступную в REST API Azure Data Lake Storage 2-го поколения. |
Microsoft.Storage.DirectoryCreated | Активируется при создании каталога. В частности, это событие активируется, когда клиенты используют операцию CreateDirectory , доступную в REST API Azure Data Lake Storage 2-го поколения. |
Microsoft.Storage.DirectoryRenamed | Активируется при переименовании каталога. В частности, это событие активируется, когда клиенты используют операцию RenameDirectory , доступную в REST API Azure Data Lake Storage 2-го поколения. |
Microsoft.Storage.DirectoryDeleted | Активируется при удалении каталога. В частности, это событие активируется, когда клиенты используют операцию DeleteDirectory , доступную в REST API Azure Data Lake Storage 2-го поколения. |
Примечание.
Для Azure Data Lake Storage 2-го поколения, если необходимо, чтобы событие Microsoft.Storage.BlobCreated активировалось только при полной фиксации блочного BLOB-объекта, отфильтруйте это событие по вызову REST APIFlushWithClose
. Этот вызов API активирует событие Microsoft.Storage.BlobCreated только после полной фиксации данных в блочном BLOB-объекте. Сведения о том, как создать фильтр, см. в статье Фильтрация событий для Сетки событий.
Примеры событий
Событие Microsoft.Storage.BlobCreated (Data Lake Storage 2-го поколения)
Если учетная запись хранения BLOB-объектов имеет иерархическое пространство имен, данные выглядят примерно так, как в предыдущем примере, за исключением следующих изменений:
- Ключу
data.api
присвоена строкаCreateFile
илиFlushWithClose
. - Ключ
contentOffset
включен в набор данных.
Примечание.
Если приложения используют операцию PutBlockList
для передачи нового BLOB-объекта в учетную запись, данные не будут содержать эти изменения.
[{
"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"
}]
Событие Microsoft.Storage.BlobDeleted (Data Lake Storage 2-го поколения)
Если учетная запись хранения BLOB-объектов имеет иерархическое пространство имен, данные выглядят примерно так, как в предыдущем примере, за исключением следующих изменений:
- Ключу
data.api
присвоена строкаDeleteFile
. - Ключ
url
содержит путьdfs.core.windows.net
.
Примечание.
Если приложения используют операцию DeleteBlob
для удаления BLOB-объекта из учетной записи, данные не будут содержать эти изменения.
[{
"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"
}]
Событие Microsoft.Storage.BlobRenamed (Data Lake Storage 2-го поколения)
[{
"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"
}]
Событие Microsoft.Storage.DirectoryCreated (Data Lake Storage 2-го поколения)
[{
"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"
}]
Событие Microsoft.Storage.DirectoryRenamed (Data Lake Storage 2-го поколения)
[{
"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"
}]
Событие Microsoft.Storage.DirectoryDeleted (Data Lake Storage 2-го поколения)
[{
"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"
}]
События SFTP
Эти события активируются, если для учетной записи хранения включено иерархическое пространство имен и клиенты используют API-интерфейсы SFTP. Дополнительные сведения о поддержке SFTP в Хранилище BLOB-объектов Azure см. в разделе Протокол SFTP в Хранилище BLOB-объектов Azure.
Имя события | Description |
---|---|
Microsoft.Storage.BlobCreated | Активируется при создании или перезаписи BLOB-объекта. В частности, это событие активируется, когда клиенты используют операцию put , которая соответствует API-интерфейсам SftpCreate и SftpCommit . При открытии файла создается пустой BLOB-объект, а при закрытии файла отправленное содержимое фиксируется. Если функция предварительного SFTP Resumable Uploads просмотра включена, некоторые SftpWrite события также будут активированы во время отправки. |
Microsoft.Storage.BlobDeleted | Активируется при удалении BLOB-объекта. В частности, это событие также активируется, когда клиенты вызывают операцию rm , которая соответствует API SftpRemove . |
Microsoft.Storage.BlobRenamed | Активируется при переименовании BLOB-объекта. В частности, это событие также активируется, когда клиенты используют операцию rename для файлов, которая соответствует API SftpRename . |
Microsoft.Storage.DirectoryCreated | Активируется при создании каталога. В частности, это событие активируется, когда клиенты используют операцию mkdir , которая соответствует API SftpMakeDir . |
Microsoft.Storage.DirectoryRenamed | Активируется при переименовании каталога. В частности, это событие также активируется, когда клиенты используют операцию rename для каталога, которая соответствует API SftpRename . |
Microsoft.Storage.DirectoryDeleted | Активируется при удалении каталога. В частности, это событие активируется, когда клиенты используют операцию rmdir , которая соответствует API SftpRemoveDir . |
Примеры событий
При активации события служба Сетки событий отправляет данные о нем на подписанную конечную точку. Этот раздел содержит пример того, как эти данные будут выглядеть для каждого события хранилища BLOB-объектов.
Событие Microsoft.Storage.BlobCreated (SFTP)
Если учетная запись хранения BLOB-объектов использует SFTP для создания или перезаписи BLOB-объекта, то данные выглядят примерно так, как в предыдущем примере, за исключением следующих изменений:
Ключу
dataVersion
присвоено значение3
.Для
data.api
ключа задана строкаSftpCreate
,SftpWrite
илиSftpCommit
.Ключ
clientRequestId
не включен.Ключу
contentType
присвоено значениеapplication/octet-stream
.Ключ
contentOffset
включен в набор данных.Ключ
identity
включен в набор данных. Это соответствует локальному пользователю, используемому для проверки подлинности SFTP.
Примечание.
При отправке данных по протоколу SFTP создается 2 события. Один SftpCreate
для исходного пустого большого двоичного объекта, созданного при открытии файла, и один SftpCommit
, когда содержимое файла фиксируются в конце отправки. Если функция предварительного SFTP Resumable Uploads
просмотра включена, некоторые SftpWrite
события также будут активированы во время отправки.
[{
"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"
}]
Событие Microsoft.Storage.BlobDeleted (SFTP)
Если учетная запись хранения BLOB-объектов использует SFTP для удаления BLOB-объекта, то данные выглядят примерно так, как в предыдущем примере, за исключением следующих изменений:
Ключу
dataVersion
присвоено значение2
.Ключу
data.api
присвоена строкаSftpRemove
.Ключ
clientRequestId
не включен.Ключу
contentType
присвоено значениеapplication/octet-stream
.Ключ
identity
включен в набор данных. Это соответствует локальному пользователю, используемому для проверки подлинности 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"
}]
Событие Microsoft.Storage.BlobRenamed (SFTP)
Если учетная запись хранения BLOB-объектов использует SFTP для переименования BLOB-объекта, то данные выглядят примерно так, как в предыдущем примере, за исключением следующих изменений:
Ключу
data.api
присвоена строкаSftpRename
.Ключ
clientRequestId
не включен.Ключ
identity
включен в набор данных. Это соответствует локальному пользователю, используемому для проверки подлинности 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"
}]
Событие Microsoft.Storage.DirectoryCreated (SFTP)
Если учетная запись хранения BLOB-объектов использует SFTP для создания каталога, то данные выглядят примерно так, как в предыдущем примере, за исключением следующих изменений:
Ключу
dataVersion
присвоено значение2
.Ключу
data.api
присвоена строкаSftpMakeDir
.Ключ
clientRequestId
не включен.Ключ
identity
включен в набор данных. Это соответствует локальному пользователю, используемому для проверки подлинности 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"
}]
Событие Microsoft.Storage.DirectoryRenamed (SFTP)
Если учетная запись хранения BLOB-объектов использует SFTP для переименования каталога, то данные выглядят примерно так, как в предыдущем примере, за исключением следующих изменений:
Ключу
data.api
присвоена строкаSftpRename
.Ключ
clientRequestId
не включен.Ключ
identity
включен в набор данных. Это соответствует локальному пользователю, используемому для проверки подлинности 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"
}]
Событие Microsoft.Storage.DirectoryDeleted (SFTP)
Если учетная запись хранения BLOB-объектов использует SFTP для удаления каталога, то данные выглядят примерно так, как в предыдущем примере, за исключением следующих изменений:
Ключу
data.api
присвоена строкаSftpRemoveDir
.Ключ
clientRequestId
не включен.Ключ
identity
включен в набор данных. Это соответствует локальному пользователю, используемому для проверки подлинности 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"
}]
События, связанные с политикой
Эти события активируются при выполнении действий, определенных политикой.
Имя события | Description |
---|---|
Microsoft.Storage.BlobInventoryPolicyCompleted | Активируется после завершения выполнения инвентаризации для правила, определенного политикой инвентаризации. Это событие также возникает, если в ходе инвентаризации возникла ошибка пользователя. Например, недопустимая политика или ошибка, возникающая, когда целевой контейнер не присутствует, активирует событие. |
Microsoft.Storage.LifecyclePolicyCompleted | Активируется при выполнении действий, определенных политикой управления жизненным циклом. |
Примеры событий
При активации события служба Сетки событий отправляет данные о нем на подписанную конечную точку. Этот раздел содержит пример того, как эти данные будут выглядеть для каждого события хранилища BLOB-объектов.
Событие 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"
}
Событие 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"
}
Свойства событий
Событие содержит следующие высокоуровневые данные:
Свойство | Type | Описание: |
---|---|---|
source |
строка | Полный путь к ресурсу источника событий. Это поле защищено от записи. Это значение предоставляет Сетка событий. |
subject |
строка | Определенный издателем путь к субъекту события. |
type |
строка | Один из зарегистрированных типов событий для этого источника событий. |
time |
строка | Время создания события с учетом времени поставщика в формате UTC. |
id |
строка | Уникальный идентификатор события. |
data |
объект | Данные события хранилища BLOB-объектов. |
specversion |
строка | Версия спецификации схемы CloudEvents. |
Объект данных имеет следующие свойства:
Свойство | Type | Описание: |
---|---|---|
api |
строка | Операция, вызвавшая событие. |
clientRequestId |
строка | Предоставляемый клиентом идентификатор запроса для операции API хранилища. Этот идентификатор может использоваться для корреляции журналов диагностики службы хранилища Azure с помощью поля client-request-id в журналах, а также может предоставляться в запросах клиента с помощью заголовка x-ms-client-request-id. Ознакомьтесь со статьей Storage Analytics Log Format (Формат журналов Аналитики Службы хранилища). |
requestId |
строка | Создаваемый службой идентификатор запроса для операции API хранилища. Может использоваться для корреляции журналов диагностики службы хранилища Azure с помощью поля request-id-header в журналах. Возвращается при инициации вызова API в заголовке x-ms-request-id. Ознакомьтесь со статьей Storage Analytics Log Format (Формат журналов Аналитики Службы хранилища). |
eTag |
строка | Значение, которое позволяет выполнять операции условно. |
contentType |
строка | Тип содержимого, указанный для BLOB-объекта. |
contentLength |
integer | Размер большого двоичного объекта в байтах. |
blobType |
строка | Тип большого двоичного объекта. Допустимые значения: BlockBlob или PageBlob. |
accessTier |
строка | Целевой уровень большого двоичного объекта. Отображается только для события BlobTierChanged. |
previousTier |
строка | Исходный уровень большого двоичного объекта. Отображается только для события BlobTierChanged. Если большой двоичный объект выводит уровень из учетной записи хранения, это поле не появится. |
contentOffset |
number | Смещение в байтах для операции записи, выполненной в тот момент, когда приложение, активирующее событие, завершило запись в файл. Отображается только для событий, активированных для учетных записей хранения BLOB-объектов с иерархическим пространством имен. |
destinationUrl |
строка | URL-адрес файла, который будет существовать после завершения операции. Например, если файл переименован, свойство destinationUrl содержит URL-адрес нового имени файла. Отображается только для событий, активированных для учетных записей хранения BLOB-объектов с иерархическим пространством имен. |
sourceUrl |
строка | URL-адрес файла, который существует до завершения операции. Например, если файл переименован, свойство sourceUrl содержит URL-адрес исходного имени файла, которое использовалось до операции переименования. Отображается только для событий, активированных для учетных записей хранения BLOB-объектов с иерархическим пространством имен. |
url |
строка | Путь к BLOB-объекту. Если клиент использует REST API BLOB-объектов, URL-адрес имеет следующую структуру: <storage-account-name>.blob.core.windows.net\<container-name>\<file-name> . Если клиент использует REST API Data Lake Storage, URL-адрес имеет следующую структуру: <storage-account-name>.dfs.core.windows.net/<file-system-name>/<file-name> . |
recursive |
строка | Значение True для выполнения операции со всеми дочерними каталогами; в противном случае значение False . Отображается только для событий, активированных для учетных записей хранения BLOB-объектов с иерархическим пространством имен. |
sequencer |
строка | Значение непрозрачной строки, представляющее логическую последовательность событий для любого отдельного имени большого двоичного объекта. Пользователи могут использовать стандартное сравнение строк для понимания относительной последовательности двух событий в одном имени большого двоичного объекта. |
identity |
строка | Строковое значение, представляющее удостоверение, связанное с событием. Для SFTP это имя локального пользователя. |
storageDiagnostics |
объект | Диагностические данные, которые иногда включаются службой хранилища Azure. Если они присутствуют, то должны игнорироваться потребителями события. |
Практические руководства и другие учебные материалы
Заголовок | Description |
---|---|
Перенаправление событий хранилища BLOB-объектов в пользовательскую конечную веб-точку с помощью Azure CLI | Содержит сведения об отправке событий хранилища BLOB-объектов в веб-перехватчик с помощью Azure CLI. |
Перенаправление событий хранилища BLOB-объектов в пользовательскую конечную веб-точку с помощью PowerShell | Содержит сведения об отправке событий хранилища BLOB-объектов в веб-перехватчик с помощью Azure PowerShell. |
Создание и перенаправление событий хранилища BLOB-объектов с помощью службы "Сетка событий Azure" и портала Azure | Содержит сведения об отправке событий хранилища BLOB-объектов в веб-перехватчик с помощью портала. |
Создание подписки на события, связанные с учетной записью хранения больших двоичных объектов, с использованием Azure CLI | Пример сценария, позволяющий подписаться на события, связанные с учетной записью хранения больших двоичных объектов. Он отправляет событие в веб-перехватчик. |
Создание подписки на события, связанные с учетной записью хранения больших двоичных объектов, с помощью PowerShell | Пример сценария, позволяющий подписаться на события, связанные с учетной записью хранения больших двоичных объектов. Он отправляет событие в веб-перехватчик. |
Шаблон Resource Manager для создания хранилища BLOB-объектов и подписки | Развертывает учетную запись службы хранилища больших двоичных объектов Azure и создает подписку на события для этой учетной записи хранения. Он отправляет события в веб-перехватчик. |
Реагирование на события хранилища BLOB-объектов | Общие сведения об интеграции хранилища BLOB-объектов со службой "Сетка событий". |
Следующие шаги
- См. общие сведения о службе "Сетка событий Azure".
- Дополнительные сведения о создании подписки на Сетку событий Azure см. в статье Схема подписки для службы "Сетка событий".
- Основные сведения о работе с событиями хранилища BLOB-объектов см. в статье Перенаправление событий хранилища BLOB-объектов в пользовательскую конечную веб-точку (предварительная версия).