Usługa Azure Blob Storage jako źródło usługi Event Grid
Ten artykuł zawiera właściwości i schemat zdarzeń magazynu obiektów blob. Aby zapoznać się ze schematami zdarzeń, zobacz Schemat zdarzeń usługi Azure Event Grid. Udostępnia również listę przewodników Szybki start i samouczków dotyczących używania usługi Azure Blob Storage jako źródła zdarzeń.
Uwaga
Tylko konta magazynu rodzaju StorageV2 (ogólnego przeznaczenia w wersji 2), BlockBlobStorage i BlobStorage obsługują integrację zdarzeń. Usługa Storage (ogólnego przeznaczenia w wersji 1) nie obsługuje integracji z usługą Event Grid.
Dostępne typy zdarzeń
Zdarzenia usługi Blob Storage
Te zdarzenia są wyzwalane, gdy klient tworzy, zamienia lub usuwa obiekt blob przez wywołanie interfejsów API REST obiektów blob.
Uwaga
Kontenery $logs
i $blobchangefeed
nie są zintegrowane z usługą Event Grid, więc działanie w tych kontenerach nie spowoduje wygenerowania zdarzeń. Ponadto użycie punktu końcowego (abfss://URI)
systemu plików dfs dla nie hierarchicznych kont przestrzeni nazw nie spowoduje wygenerowania zdarzeń, ale punkt końcowy (wasb:// URI)
obiektu blob wygeneruje zdarzenia.
Nazwa zdarzenia | opis |
---|---|
Microsoft.Storage.BlobCreated | Wyzwalane po utworzeniu lub zastąpieniu obiektu blob. W szczególności to zdarzenie jest wyzwalane, gdy klienci korzystają z PutBlob operacji , PutBlockList lub CopyBlob , które są dostępne w interfejsie API REST obiektów blob i gdy blokowy obiekt blob jest całkowicie zatwierdzony. Jeśli klienci używają CopyBlob operacji na kontach z włączoną funkcją hierarchicznej przestrzeni nazw , CopyBlob operacja działa nieco inaczej. W takim przypadku zdarzenie Microsoft.Storage.BlobCreated jest wyzwalane, gdy operacja jest inicjowana, a nie wtedyCopyBlob , gdy blokowy obiekt blob jest całkowicie zatwierdzony. |
Microsoft.Storage.BlobDeleted | Wyzwalane po usunięciu obiektu blob. W szczególności to zdarzenie jest wyzwalane, gdy klienci wywołują DeleteBlob operację dostępną w interfejsie API REST obiektów blob. |
Microsoft.Storage.BlobTierChanged | Wyzwalany po zmianie warstwy dostępu do obiektu blob. W szczególności, gdy klienci wywołują operację Set Blob Tier dostępną w interfejsie API REST obiektów blob, to zdarzenie jest wyzwalane po zakończeniu zmiany warstwy. |
Microsoft.Storage.AsyncOperationInitiated | Wyzwalane po zainicjowaniu operacji przenoszenia lub kopiowania danych z archiwum do warstw Gorąca lub Chłodna. W szczególności to zdarzenie jest wyzwalane, gdy klienci wywołują interfejs API, aby przenieść obiekt blob z warstwy archiwum do warstwy Gorąca lub Chłodna, albo gdy klienci wywołują Set Blob Tier Copy Blob interfejs API, aby skopiować dane z obiektu blob w warstwie archiwum do obiektu blob w warstwie Gorąca lub Chłodna. |
Przykładowe zdarzenia
Zdarzenie 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"
}]
Zdarzenie 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"
}]
Zdarzenie 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"
}
Zdarzenie Zainicjowane przez microsoft.Storage.AsyncOperation
{
"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"
}
Zdarzenia usługi Data Lake Storage Gen 2
Te zdarzenia są wyzwalane, jeśli włączysz hierarchiczną przestrzeń nazw na koncie magazynu, a klienci używają interfejsów API REST usługi Azure Data Lake Storage Gen2. Aby uzyskać więcej informacji na temat usługi Azure Data Lake Storage Gen2, zobacz Wprowadzenie do usługi Azure Data Lake Storage Gen2.
Nazwa zdarzenia | opis |
---|---|
Microsoft.Storage.BlobCreated | Wyzwalane po utworzeniu lub zastąpieniu obiektu blob. W szczególności to zdarzenie jest wyzwalane, gdy klienci korzystają z CreateFile operacji i FlushWithClose dostępnych w interfejsie API REST usługi Azure Data Lake Storage Gen2. |
Microsoft.Storage.BlobDeleted | Wyzwalane po usunięciu obiektu blob. W szczególności to zdarzenie jest również wyzwalane, gdy klienci wywołują DeleteFile operację dostępną w interfejsie API REST usługi Azure Data Lake Storage Gen2. |
Microsoft.Storage.BlobRenamed | Wyzwalane po zmianie nazwy obiektu blob. W szczególności to zdarzenie jest wyzwalane, gdy klienci używają RenameFile operacji dostępnej w interfejsie API REST usługi Azure Data Lake Storage Gen2. |
Microsoft.Storage.DirectoryCreated | Wyzwalane po utworzeniu katalogu. W szczególności to zdarzenie jest wyzwalane, gdy klienci używają CreateDirectory operacji dostępnej w interfejsie API REST usługi Azure Data Lake Storage Gen2. |
Microsoft.Storage.DirectoryRenamed | Wyzwalane po zmianie nazwy katalogu. W szczególności to zdarzenie jest wyzwalane, gdy klienci używają RenameDirectory operacji dostępnej w interfejsie API REST usługi Azure Data Lake Storage Gen2. |
Microsoft.Storage.DirectoryDeleted | Wyzwalane po usunięciu katalogu. W szczególności to zdarzenie jest wyzwalane, gdy klienci używają DeleteDirectory operacji dostępnej w interfejsie API REST usługi Azure Data Lake Storage Gen2. |
Uwaga
W przypadku usługi Azure Data Lake Storage Gen2, jeśli chcesz upewnić się, że zdarzenie Microsoft.Storage.BlobCreated jest wyzwalane tylko wtedy, gdy blokowy obiekt blob jest całkowicie zatwierdzony, przefiltruj zdarzenie wywołania interfejsu FlushWithClose
API REST. To wywołanie interfejsu API wyzwala zdarzenie Microsoft.Storage.BlobCreated dopiero po pełnym zatwierdzeniu danych do blokowego obiektu blob. Aby dowiedzieć się, jak utworzyć filtr, zobacz Filtrowanie zdarzeń dla usługi Event Grid.
Przykładowe zdarzenia
Zdarzenie Microsoft.Storage.BlobCreated (Data Lake Storage Gen2)
Jeśli konto magazynu obiektów blob ma hierarchiczną przestrzeń nazw, dane wyglądają podobnie do poprzedniego przykładu z wyjątkiem tych zmian:
- Klucz
data.api
jest ustawiony na ciągCreateFile
lubFlushWithClose
. - Klucz
contentOffset
jest uwzględniony w zestawie danych.
Uwaga
Jeśli aplikacje używają PutBlockList
operacji do przekazania nowego obiektu blob na konto, dane nie będą zawierać tych zmian.
[{
"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"
}]
Zdarzenie Microsoft.Storage.BlobDeleted (Data Lake Storage Gen2)
Jeśli konto magazynu obiektów blob ma hierarchiczną przestrzeń nazw, dane wyglądają podobnie do poprzedniego przykładu z wyjątkiem tych zmian:
- Klucz
data.api
jest ustawiony na ciągDeleteFile
. - Klucz
url
zawiera ścieżkędfs.core.windows.net
.
Uwaga
Jeśli aplikacje używają DeleteBlob
operacji do usunięcia obiektu blob z konta, dane nie będą zawierać tych zmian.
[{
"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"
}]
Zdarzenie 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"
}]
Microsoft.Storage.DirectoryCreated event (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"
}]
Microsoft.Storage.DirectoryRenamed — zdarzenie (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"
}]
Zdarzenie 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"
}]
Zdarzenia SFTP
Te zdarzenia są wyzwalane, jeśli włączysz hierarchiczną przestrzeń nazw na koncie magazynu, a klienci używają interfejsów API SFTP. Aby uzyskać więcej informacji na temat obsługi protokołu SFTP dla usługi Azure Blob Storage, zobacz Protokół SSH File Transfer Protocol (SFTP) w usłudze Azure Blob Storage.
Nazwa zdarzenia | opis |
---|---|
Microsoft.Storage.BlobCreated | Wyzwalane po utworzeniu lub zastąpieniu obiektu blob. W szczególności to zdarzenie jest wyzwalane, gdy klienci używają put operacji, która odpowiada SftpCreate interfejsom API i SftpCommit . Pusty obiekt blob jest tworzony po otwarciu pliku, a przekazana zawartość jest zatwierdzana po zamknięciu pliku. SFTP Resumable Uploads Jeśli funkcja w wersji zapoznawczej jest włączona, niektóre SftpWrite zdarzenia również zostaną wyzwolone podczas przekazywania. |
Microsoft.Storage.BlobDeleted | Wyzwalane po usunięciu obiektu blob. W szczególności to zdarzenie jest również wyzwalane, gdy klienci wywołują operację rm , która odpowiada interfejsowi SftpRemove API. |
Microsoft.Storage.BlobRenamed | Wyzwalane po zmianie nazwy obiektu blob. W szczególności to zdarzenie jest wyzwalane, gdy klienci używają rename operacji na plikach, która odpowiada interfejsowi SftpRename API. |
Microsoft.Storage.DirectoryCreated | Wyzwalane po utworzeniu katalogu. W szczególności to zdarzenie jest wyzwalane, gdy klienci używają mkdir operacji, która odpowiada interfejsowi SftpMakeDir API. |
Microsoft.Storage.DirectoryRenamed | Wyzwalane po zmianie nazwy katalogu. W szczególności to zdarzenie jest wyzwalane, gdy klienci używają rename operacji w katalogu, który odpowiada interfejsowi SftpRename API. |
Microsoft.Storage.DirectoryDeleted | Wyzwalane po usunięciu katalogu. W szczególności to zdarzenie jest wyzwalane, gdy klienci używają rmdir operacji, która odpowiada interfejsowi SftpRemoveDir API. |
Przykładowe zdarzenia
Po wyzwoleniu zdarzenia usługa Event Grid wysyła dane dotyczące tego zdarzenia do subskrybującego punktu końcowego. Ta sekcja zawiera przykładowy wygląd tych danych dla każdego zdarzenia magazynu obiektów blob.
Microsoft.Storage.BlobCreated event (SFTP)
Jeśli konto magazynu obiektów blob używa sfTP do tworzenia lub zastępowania obiektu blob, dane wyglądają podobnie do poprzedniego przykładu z wyjątkiem tych zmian:
Klucz
dataVersion
jest ustawiony na wartość3
.Klucz
data.api
jest ustawiony na ciągSftpCreate
,SftpWrite
lubSftpCommit
.Klucz
clientRequestId
nie jest uwzględniony.Klucz
contentType
jest ustawiony naapplication/octet-stream
wartość .Klucz
contentOffset
jest uwzględniony w zestawie danych.Klucz
identity
jest uwzględniony w zestawie danych. Odpowiada to użytkownikowi lokalnemu używanemu do uwierzytelniania SFTP.
Uwaga
Przekazywanie SFTP spowoduje wygenerowanie 2 zdarzeń. Jeden SftpCreate
dla początkowego pustego obiektu blob utworzonego podczas otwierania pliku i po SftpCommit
zatwierdzeniu zawartości pliku na końcu przekazywania. SFTP Resumable Uploads
Jeśli funkcja w wersji zapoznawczej jest włączona, niektóre SftpWrite
zdarzenia również zostaną wyzwolone podczas przekazywania.
[{
"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"
}]
Zdarzenie Microsoft.Storage.BlobDeleted (SFTP)
Jeśli konto magazynu obiektów blob używa sfTP do usunięcia obiektu blob, dane wyglądają podobnie do poprzedniego przykładu z wyjątkiem tych zmian:
Klucz
dataVersion
jest ustawiony na wartość2
.Klucz
data.api
jest ustawiony na ciągSftpRemove
.Klucz
clientRequestId
nie jest uwzględniony.Klucz
contentType
jest ustawiony naapplication/octet-stream
wartość .Klucz
identity
jest uwzględniony w zestawie danych. Odpowiada to użytkownikowi lokalnemu używanemu do uwierzytelniania 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"
}]
Zdarzenie Microsoft.Storage.BlobRenamed (SFTP)
Jeśli konto magazynu obiektów blob używa sfTP do zmiany nazwy obiektu blob, dane wyglądają podobnie do poprzedniego przykładu z wyjątkiem tych zmian:
Klucz
data.api
jest ustawiony na ciągSftpRename
.Klucz
clientRequestId
nie jest uwzględniony.Klucz
identity
jest uwzględniony w zestawie danych. Odpowiada to użytkownikowi lokalnemu używanemu do uwierzytelniania 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 event (SFTP)
Jeśli konto magazynu obiektów blob używa sfTP do utworzenia katalogu, dane wyglądają podobnie do poprzedniego przykładu z wyjątkiem tych zmian:
Klucz
dataVersion
jest ustawiony na wartość2
.Klucz
data.api
jest ustawiony na ciągSftpMakeDir
.Klucz
clientRequestId
nie jest uwzględniony.Klucz
identity
jest uwzględniony w zestawie danych. Odpowiada to użytkownikowi lokalnemu używanemu do uwierzytelniania 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 zdarzenie (SFTP)
Jeśli konto magazynu obiektów blob używa sfTP do zmiany nazwy katalogu, dane wyglądają podobnie do poprzedniego przykładu z wyjątkiem tych zmian:
Klucz
data.api
jest ustawiony na ciągSftpRename
.Klucz
clientRequestId
nie jest uwzględniony.Klucz
identity
jest uwzględniony w zestawie danych. Odpowiada to użytkownikowi lokalnemu używanemu do uwierzytelniania 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"
}]
Zdarzenie Microsoft.Storage.DirectoryDeleted (SFTP)
Jeśli konto magazynu obiektów blob używa sfTP do usunięcia katalogu, dane wyglądają podobnie do poprzedniego przykładu z wyjątkiem tych zmian:
Klucz
data.api
jest ustawiony na ciągSftpRemoveDir
.Klucz
clientRequestId
nie jest uwzględniony.Klucz
identity
jest uwzględniony w zestawie danych. Odpowiada to użytkownikowi lokalnemu używanemu do uwierzytelniania 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"
}]
Zdarzenia związane z zasadami
Te zdarzenia są wyzwalane po wykonaniu akcji zdefiniowanych przez zasady.
Nazwa zdarzenia | opis |
---|---|
Microsoft.Storage.BlobInventoryPolicyCompleted | Wyzwalany po zakończeniu przebiegu spisu dla reguły zdefiniowanej przez zasady spisu. To zdarzenie występuje również wtedy, gdy uruchomienie spisu zakończy się niepowodzeniem z powodu błędu użytkownika przed rozpoczęciem jego uruchamiania. Na przykład nieprawidłowe zasady lub błąd, który występuje, gdy kontener docelowy nie jest obecny, spowoduje wyzwolenie zdarzenia. |
Microsoft.Storage.LifecyclePolicyCompleted | Wyzwalane po wykonaniu akcji zdefiniowanych przez zasady zarządzania cyklem życia. |
Przykładowe zdarzenia
Po wyzwoleniu zdarzenia usługa Event Grid wysyła dane dotyczące tego zdarzenia do subskrybującego punktu końcowego. Ta sekcja zawiera przykładowy wygląd tych danych dla każdego zdarzenia magazynu obiektów blob.
Zdarzenie 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"
}
Zdarzenie 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"
}
Właściwości zdarzenia
Zdarzenie ma następujące dane najwyższego poziomu:
Właściwość | Type | opis |
---|---|---|
source |
string | Pełna ścieżka zasobu do źródła zdarzeń. To pole nie jest możliwe do zapisu. Ta wartość jest podawana przez usługę Event Grid. |
subject |
string | Zdefiniowana przez wydawcę ścieżka do tematu zdarzenia. |
type |
string | Jeden z zarejestrowanych typów zdarzeń dla tego źródła zdarzeń. |
time |
string | Czas generowania zdarzenia na podstawie czasu UTC dostawcy. |
id |
string | Unikatowy identyfikator zdarzenia. |
data |
obiekt | Dane zdarzeń usługi Blob Storage. |
specversion |
string | Wersja specyfikacji schematu CloudEvents. |
Obiekt danych ma następujące właściwości:
Właściwość | Type | opis |
---|---|---|
api |
string | Operacja, która wyzwoliła zdarzenie. |
clientRequestId |
string | identyfikator żądania dostarczonego przez klienta dla operacji interfejsu API magazynu. Ten identyfikator może służyć do korelowania z dziennikami diagnostycznymi usługi Azure Storage przy użyciu pola "client-request-id" w dziennikach i można go podać w żądaniach klientów przy użyciu nagłówka "x-ms-client-request-id". Zobacz Format dziennika. |
requestId |
string | Identyfikator żądania wygenerowanego przez usługę dla operacji interfejsu API magazynu. Może służyć do korelowania dzienników diagnostycznych usługi Azure Storage przy użyciu pola "request-id-header" w dziennikach i jest zwracany z inicjowania wywołania interfejsu API w nagłówku "x-ms-request-id". Zobacz Format dziennika. |
eTag |
string | Wartość, której można użyć do warunkowego uruchamiania operacji. |
contentType |
string | Typ zawartości określony dla obiektu blob. |
contentLength |
integer | Rozmiar obiektu blob w bajtach. |
blobType |
string | Typ obiektu blob. Prawidłowe wartości to "BlockBlob" lub "PageBlob". |
accessTier |
string | Warstwa docelowa obiektu blob. Pojawia się tylko dla zdarzenia BlobTierChanged. |
previousTier |
string | Warstwa źródłowa obiektu blob. Pojawia się tylko dla zdarzenia BlobTierChanged. Jeśli obiekt blob wywnioskuje warstwę z konta magazynu, to pole nie będzie wyświetlane. |
contentOffset |
Liczba | Przesunięcie w bajtach operacji zapisu wykonanej w punkcie, w którym aplikacja wyzwalania zdarzeń zakończyła zapisywanie w pliku. Pojawia się tylko dla zdarzeń wyzwalanych na kontach magazynu obiektów blob, które mają hierarchiczną przestrzeń nazw. |
destinationUrl |
string | Adres URL pliku, który będzie istniał po zakończeniu operacji. Na przykład jeśli nazwa pliku zostanie zmieniona, destinationUrl właściwość zawiera adres URL nowej nazwy pliku. Pojawia się tylko dla zdarzeń wyzwalanych na kontach magazynu obiektów blob, które mają hierarchiczną przestrzeń nazw. |
sourceUrl |
string | Adres URL pliku, który istnieje przed wykonaniem operacji. Na przykład jeśli nazwa pliku zostanie zmieniona, sourceUrl plik zawiera adres URL oryginalnej nazwy pliku przed operacją zmiany nazwy. Pojawia się tylko dla zdarzeń wyzwalanych na kontach magazynu obiektów blob, które mają hierarchiczną przestrzeń nazw. |
url |
string | Ścieżka do obiektu blob. Jeśli klient używa interfejsu API REST obiektu blob, adres URL ma następującą strukturę: <storage-account-name>.blob.core.windows.net\<container-name>\<file-name> . Jeśli klient używa interfejsu API REST usługi Data Lake Storage, adres URL ma następującą strukturę: <storage-account-name>.dfs.core.windows.net/<file-system-name>/<file-name> . |
recursive |
string | True aby uruchomić operację na wszystkich katalogach podrzędnych; w przeciwnym razie False . Pojawia się tylko dla zdarzeń wyzwalanych na kontach magazynu obiektów blob, które mają hierarchiczną przestrzeń nazw. |
sequencer |
string | Nieprzezroczysta wartość ciągu reprezentująca logiczną sekwencję zdarzeń dla dowolnej konkretnej nazwy obiektu blob. Użytkownicy mogą użyć standardowego porównania ciągów, aby zrozumieć względną sekwencję dwóch zdarzeń o tej samej nazwie obiektu blob. |
identity |
string | Wartość ciągu reprezentująca tożsamość skojarzona ze zdarzeniem. W przypadku protokołu SFTP jest to nazwa użytkownika lokalnego. |
storageDiagnostics |
obiekt | Dane diagnostyczne od czasu do czasu dołączone przez usługę Azure Storage. Jeśli jest obecny, powinny być ignorowane przez odbiorców zdarzeń. |
Samouczki i poradniki
Nazwa | opis |
---|---|
Szybki start: kierowanie zdarzeń usługi Blob Storage do niestandardowego internetowego punktu końcowego za pomocą interfejsu wiersza polecenia platformy Azure | Przedstawia sposób wysyłania zdarzeń usługi Blob Storage do elementu WebHook za pomocą interfejsu wiersza polecenia platformy Azure. |
Szybki start: kierowanie zdarzeń usługi Blob Storage do niestandardowego internetowego punktu końcowego za pomocą programu PowerShell | Przedstawia sposób wysyłania zdarzeń usługi Blob Storage do elementu WebHook za pomocą programu Azure PowerShell. |
Szybki start: tworzenie i kierowanie zdarzeń usługi Blob Storage za pomocą witryny Azure Portal | Pokazuje, jak za pomocą portalu wysyłać zdarzenia magazynu obiektów blob do elementu WebHook. |
Interfejs wiersza polecenia platformy Azure: subskrybowanie zdarzeń dla konta usługi Blob Storage | Przykładowy skrypt, który subskrybuje zdarzenie dla konta usługi Blob Storage. Wysyła zdarzenie do elementu WebHook. |
PowerShell: subskrybowanie zdarzeń dla konta usługi Blob Storage | Przykładowy skrypt, który subskrybuje zdarzenie dla konta usługi Blob Storage. Wysyła zdarzenie do elementu WebHook. |
Szablon usługi Resource Manager: tworzenie magazynu obiektów blob i subskrypcji | Wdraża konto magazynu obiektów Blob platformy Azure i subskrybuje zdarzenia dla tego konta magazynu. Wysyła zdarzenia do elementu WebHook. |
Omówienie: reagowanie na zdarzenia usługi Blob Storage | Omówienie integracji usługi Blob Storage z usługą Event Grid. |
Następne kroki
- Aby zapoznać się z wprowadzeniem do usługi Azure Event Grid, zobacz Co to jest usługa Event Grid?
- Aby uzyskać więcej informacji na temat tworzenia subskrypcji usługi Azure Event Grid, zobacz Schemat subskrypcji usługi Event Grid.
- Aby zapoznać się z wprowadzeniem do pracy ze zdarzeniami magazynu obiektów blob, zobacz Route Blob Storage events - Azure CLI (Kierowanie zdarzeń usługi Blob Storage — interfejs wiersza polecenia platformy Azure).