Azure Blob Storage sebagai sumber Event Grid

Artikel ini menyediakan properti dan skema untuk kejadian penyimpanan blob. Untuk pengantar skema peristiwa, lihat Skema peristiwa Azure Event Grid. Ini juga memberi Anda daftar mulai cepat dan tutorial untuk menggunakan Azure Blob Storage sebagai sumber peristiwa.

Catatan

Hanya akun penyimpanan jenis StorageV2 (tujuan umum v2), BlockBlobStorage, dan BlobStorage yang mendukung integrasi kejadian. Storage (tujuan umum v1)tidak mendukung integrasi dengan Event Grid.

Tipe kejadian yang tersedia

Peristiwa Blob Storage

Peristiwa ini dipicu saat klien membuat, mengganti, atau menghapus blob dengan memanggil API Blob REST.

Catatan

Kontainer $logs dan $blobchangefeed tidak terintegrasi dengan Event Grid, sehingga aktivitas dalam kontainer ini tidak akan menghasilkan peristiwa. Selain itu, menggunakan titik akhir dfs untuk akun yang diaktifkan (abfss://URI) namespace non-hierarkis tidak akan menghasilkan peristiwa, tetapi titik akhir blob (wasb:// URI) akan menghasilkan peristiwa.

Nama kejadian Deskripsi
Microsoft.Storage.BlobDeleted Terpicu ketika blob dibuat atau diganti.
Secara khusus, peristiwa ini dipicu ketika klien menggunakan operasi PutBlob, PutBlockList, atau CopyBlob yang tersedia di Blob REST API dan ketika Block Blob benar-benar berkomitmen.
Jika klien menggunakan operasi CopyBlob pada akun yang memiliki fitur namespace hierarki diaktifkan padanya, operasi CopyBlob bekerja sedikit berbeda. Dalam hal ini, peristiwa Microsoft.Storage.BlobCreated dipicu ketika operasi CopyBlobdimulai dan bukan ketika Block Blob benar-benar dilakukan.
Microsoft.Storage.BlobDeleted Terpicu ketika blob dihapus.
Secara khusus, peristiwa ini dipicu ketika klien memanggil DeleteBlob operasi yang tersedia di Blob REST API.
Microsoft.Storage.BlobTierChanged Dipicu saat tingkat akses blob diubah. Secara khusus, peristiwa ini dipicu ketika klien memanggil operasi Set Blob Tier yang tersedia di Blob REST API, peristiwa ini dipicu setelah perubahan tingkat selesai.
Microsoft.Storage.AsyncOperationInitiated Dipicu saat operasi yang melibatkan pemindahan atau penyalinan data dari arsip ke tingkat panas atau dingin dimulai. Secara khusus, peristiwa ini dipicu baik saat klien memanggil Set Blob Tier API untuk memindahkan blob dari tingkat arsip ke tingkat panas atau dingin, atau ketika klien memanggil Copy Blob API untuk menyalin data dari blob di tingkat arsip ke blob di tingkat panas atau dingin.

Contoh kejadian

Kejadian 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"
}]

Kejadian 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"
}]

Peristiwa 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",
		"url": "https://my-storage-account.blob.core.windows.net/testcontainer/Auto.jpg",
		"sequencer": "000000000000000000000000000089A4000000000018d6ea",
		"storageDiagnostics": {
			"batchId": "3418f7a9-7006-0014-00f6-406dc6000000"
		}
	},
  "specversion": "1.0"
}

Peristiwa 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"
}

Peristiwa Data Lake Storage Gen 2

Kejadian ini terpicu jika Anda mengaktifkan bidang nama hierarkis pada akun penyimpanan, dan klien menggunakan Azure Data Lake Storage Gen2 REST API. Untuk informasi selengkapnya tentang Azure Data Lake Storage Gen2, lihat Pengenalan Azure Data Lake Storage Gen2.

Nama kejadian Deskripsi
Microsoft.Storage.BlobDeleted Terpicu ketika blob dibuat atau diganti.
Secara khusus, peristiwa ini dipicu ketika klien menggunakan operasi CreateFile dan FlushWithClose yang tersedia di Azure Data Lake Storage Gen2 REST API.
Microsoft.Storage.BlobDeleted Terpicu ketika blob dihapus.
Secara khusus, peristiwa ini dipicu ketika klien menggunakan operasi DeleteFileyang tersedia di Azure Data Lake Storage Gen2 REST API.
Microsoft.Storage.BlobRenamed Terpicu ketika blob dihapus.
Secara khusus, peristiwa ini dipicu ketika klien menggunakan operasi RenameFileyang tersedia di Azure Data Lake Storage Gen2 REST API.
Microsoft.Storage.DirectoryCreated Terpicu ketika blob dihapus.
Secara khusus, peristiwa ini dipicu ketika klien menggunakan operasi CreateDirectoryyang tersedia di Azure Data Lake Storage Gen2 REST API.
Microsoft.Storage.DirectoryRenamed Terpicu ketika blob dihapus.
Secara khusus, peristiwa ini dipicu ketika klien menggunakan operasi RenameDirectoryyang tersedia di Azure Data Lake Storage Gen2 REST API.
Microsoft.Storage.DirectoryDeleted Terpicu ketika blob dihapus.
Secara khusus, peristiwa ini dipicu ketika klien menggunakan operasi DeleteDirectoryyang tersedia di Azure Data Lake Storage Gen2 REST API.

Catatan

Untuk Azure Data Lake Storage Gen2, jika Anda ingin memastikan bahwa kejadian Microsoft.Storage.BlobCreated hanya dipicu ketika Block Blob benar-benar diterapkan, filter peristiwa untuk panggilan REST API FlushWithClose. Panggilan API ini memicu peristiwa Microsoft.Storage.BlobCreated hanya setelah data diterapkan penuh pada Block Blob. Untuk mempelajari cara membuat filter, lihat Memfilter kejadian untuk Event Grid.

Contoh kejadian

Peristiwa Microsoft.Storage.BlobCreated (Data Lake Storage Gen2)

Jika akun penyimpanan blob memiliki ruang nama hierarkis, data terlihat mirip dengan contoh sebelumnya dengan pengecualian perubahan ini:

  • Kunci data.api diatur ke string CreateFile atau FlushWithClose.
  • Kunci contentOffset disertakan dalam kumpulan data.

Catatan

Jika aplikasi menggunakan operasi PutBlockList untuk mengunggah blob baru ke akun, data tidak akan berisi perubahan ini.

[{
  "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"
}]

Kejadian Microsoft.Storage.BlobCreated (Data Lake Storage Gen2)

Jika akun penyimpanan blob memiliki ruang nama hierarkis, data terlihat mirip dengan contoh sebelumnya dengan pengecualian perubahan ini:

  • Kunci data.api diatur ke string DeleteFile.
  • Kunci url berisi jalur dfs.core.windows.net.

Catatan

Jika aplikasi menggunakan operasi DeleteBlob untuk mengunggah blob baru ke akun, data tidak akan berisi perubahan ini.

[{
  "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"
}]

Peristiwa 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"
}]

Peristiwa Microsoft.Storage.DirectoryBuat (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"
}]

Peristiwa 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"
}]

Peristiwa 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"
}]

Peristiwa SFTP

Peristiwa ini terpicu jika Anda mengaktifkan bidang nama hierarkis pada akun penyimpanan, dan klien menggunakan SFTP API. Untuk mempelajari selengkapnya tentang dukungan SFTP di Azure Blob Storage, lihat Dukungan Protokol Transfer File SSH (SFTP) di Azure Blob Storage.

Nama kejadian Deskripsi
Microsoft.Storage.BlobDeleted Dipicu ketika blob dibuat atau ditimpa.
Khususnya, peristiwa ini dipicu ketika klien menggunakan operasi put, yang sesuai dengan API SftpCreate dan SftpCommit. Blob kosong dibuat saat file dibuka dan konten yang diunggah diterapkan saat file ditutup.
Microsoft.Storage.BlobDeleted Terpicu ketika blob dihapus.
Khususnya, peristiwa ini juga dipicu ketika klien memanggil operasi rm, yang sesuai dengan API SftpRemove.
Microsoft.Storage.BlobRenamed Terpicu ketika blob dihapus.
Khususnya, peristiwa ini dipicu ketika klien menggunakan operasi rename pada file, yang sesuai dengan API SftpRename.
Microsoft.Storage.DirectoryCreated Terpicu ketika blob dihapus.
Khususnya, peristiwa ini dipicu ketika klien menggunakan operasi mkdir, yang sesuai dengan API SftpMakeDir.
Microsoft.Storage.DirectoryRenamed Terpicu ketika blob dihapus.
Khususnya, peristiwa ini dipicu ketika klien menggunakan operasi rename pada direktori, yang sesuai dengan API SftpRename.
Microsoft.Storage.DirectoryDeleted Terpicu ketika blob dihapus.
Khususnya, peristiwa ini dipicu ketika klien menggunakan operasi rmdir, yang sesuai dengan API SftpRemoveDir.

Contoh kejadian

Lalu, ketika suatu kejadian dipicu, layanan Event Grid akan mengirim data tentang kejadian itu ke titik akhir. Bagian ini berisi contoh tampilan data tersebut untuk setiap peristiwa penyimpanan blob.

Peristiwa Microsoft.Storage.BlobCreated (SFTP)

Jika akun penyimpanan blob menggunakan SFTP untuk membuat atau menimpa blob, maka data akan terlihat mirip dengan contoh sebelumnya dengan pengecualian perubahan berikut:

  • Kunci dataVersion diatur ke nilai 3.

  • Kunci data.api diatur ke string SftpCreate atau SftpCommit.

  • Kunci clientRequestId tidak disertakan.

  • Kunci contentType diatur ke application/octet-stream.

  • Kunci contentOffset disertakan dalam kumpulan data.

  • Kunci identity disertakan dalam kumpulan data. Ini sesuai dengan pengguna lokal yang digunakan untuk autentikasi SFTP.

Catatan

Unggahan SFTP akan menghasilkan 2 peristiwa. Satu SftpCreate untuk blob kosong awal yang dibuat saat membuka file dan satu SftpCommit saat konten file ditulis.

[{
  "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"
}]

Peristiwa Microsoft.Storage.BlobDeleted (SFTP)

Jika akun penyimpanan blob menggunakan SFTP untuk menghapus blob, maka data akan terlihat mirip dengan contoh sebelumnya dengan pengecualian perubahan berikut:

  • Kunci dataVersion diatur ke nilai 2.

  • Kunci data.api diatur ke string SftpRemove.

  • Kunci clientRequestId tidak disertakan.

  • Kunci contentType diatur ke application/octet-stream.

  • Kunci identity disertakan dalam kumpulan data. Ini sesuai dengan pengguna lokal yang digunakan untuk autentikasi 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"
}]

Peristiwa Microsoft.Storage.BlobRenamed (SFTP)

Jika akun penyimpanan blob menggunakan SFTP untuk mengganti nama blob, maka data akan terlihat mirip dengan contoh sebelumnya dengan pengecualian perubahan berikut:

  • Kunci data.api diatur ke string SftpRename.

  • Kunci clientRequestId tidak disertakan.

  • Kunci identity disertakan dalam kumpulan data. Ini sesuai dengan pengguna lokal yang digunakan untuk autentikasi 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"
}]

Peristiwa Microsoft.Storage.DirectoryCreated (SFTP)

Jika akun penyimpanan blob menggunakan SFTP untuk membuat direktori, maka data akan terlihat mirip dengan contoh sebelumnya dengan pengecualian perubahan berikut:

  • Kunci dataVersion diatur ke nilai 2.

  • Kunci data.api diatur ke string SftpMakeDir.

  • Kunci clientRequestId tidak disertakan.

  • Kunci identity disertakan dalam kumpulan data. Ini sesuai dengan pengguna lokal yang digunakan untuk autentikasi 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"
}]

Peristiwa Microsoft.Storage.DirectoryRenamed (SFTP)

Jika akun penyimpanan blob menggunakan SFTP untuk mengganti nama direktori, maka data akan terlihat mirip dengan contoh sebelumnya dengan pengecualian perubahan berikut:

  • Kunci data.api diatur ke string SftpRename.

  • Kunci clientRequestId tidak disertakan.

  • Kunci identity disertakan dalam kumpulan data. Ini sesuai dengan pengguna lokal yang digunakan untuk autentikasi 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"
}]

Peristiwa Microsoft.Storage.DirectoryDeleted (SFTP)

Jika akun penyimpanan blob menggunakan SFTP untuk menghapus direktori, maka data akan terlihat mirip dengan contoh sebelumnya dengan pengecualian perubahan berikut:

  • Kunci data.api diatur ke string SftpRemoveDir.

  • Kunci clientRequestId tidak disertakan.

  • Kunci identity disertakan dalam kumpulan data. Ini sesuai dengan pengguna lokal yang digunakan untuk autentikasi 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"
}]

Peristiwa ini dipicu saat tindakan yang ditentukan oleh kebijakan dilakukan.

Nama kejadian Deskripsi
Microsoft.Storage.BlobInventoryPolicyCompleted Dipicu saat inventaris berjalan menyelesaikan aturan yang ditetapkan sebagai kebijakan inventaris . Kejadian ini juga terjadi jika inventaris yang dijalankan gagal dengan kesalahan pengguna sebelum inventaris tersebut mulai dijalankan. Misalnya, kebijakan yang tidak valid, atau kesalahan yang terjadi ketika kontainer tujuan tidak ada akan memicu peristiwa.
Microsoft.Storage.LifecyclePolicyCompleted Dipicu saat tindakan yang ditentukan oleh kebijakan manajemen siklus hidup dilakukan.

Contoh kejadian

Lalu, ketika suatu kejadian dipicu, layanan Event Grid akan mengirim data tentang kejadian itu ke titik akhir. Bagian ini berisi contoh tampilan data tersebut untuk setiap peristiwa penyimpanan blob.

Peristiwa 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"
}

Peristiwa 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": ""
        },
        "tierToArchiveSummary": {
            "totalObjectsCount": 0,
            "successCount": 0,
            "errorList": ""
        }
    },
    "specversion": "1.0"
}

Properti kejadian

Sebuah peristiwa memiliki data tingkat atas berikut ini:

Properti Tipe Deskripsi
source string Jalur sumber daya lengkap ke sumber kejadian. Bidang ini tidak dapat ditulis. Event Grid memberikan nilai ini.
subject string Jalur yang ditentukan penerbit ke subjek kejadian.
type string Salah satu jenis kejadian terdaftar untuk sumber kejadian ini.
time string Waktu peristiwa dibuat berdasarkan waktu UTC penyedia.
id string Pengidentifikasi unik untuk peristiwa tersebut.
data object Data peristiwa penyimpanan blob.
specversion string Versi spesifikasi skema CloudEvents.

Objek data memiliki properti berikut:

Properti Tipe Deskripsi
api string Operasi yang memicu peristiwa tersebut.
clientRequestId string ID permintaan yang disediakan klien untuk operasi API penyimpanan. ID ini dapat digunakan untuk berkorelasi dengan log diagnostik Azure Storage menggunakan bidang "client-request-id" di log, dan dapat disediakan dalam permintaan klien menggunakan header "x-ms-client-request-id". Lihat Format Log.
requestId string ID permintaan yang dihasilkan layanan untuk operasi API penyimpanan. Dapat digunakan untuk berkorelasi dengan log diagnostik Azure Storage menggunakan bidang "request-id-header" di log dan dikembalikan dari memulai panggilan API di header 'x-ms-request-id'. Lihat Format Log.
eTag string Nilai yang dapat Anda gunakan untuk menjalankan operasi secara kondisional.
contentType string Jenis konten yang ditentukan untuk blob.
contentLength Integer Ukuran blob dalam byte.
blobType string Jenis blob. Nilai yang valid adalah "BlockBlob" atau "PageBlob".
contentOffset number Pengimbangan dalam byte dari operasi tulis diambil pada titik di mana aplikasi pemicu peristiwa selesai menulis ke file.
Muncul hanya untuk peristiwa yang dipicu pada akun penyimpanan blob yang memiliki ruang nama hierarkis.
destinationUrl string Url file yang akan ada setelah operasi selesai. Misalnya, jika file diganti namanya, destinationUrl properti berisi url nama file baru.
Muncul hanya untuk peristiwa yang dipicu pada akun penyimpanan blob yang memiliki ruang nama hierarkis.
sourceUrl string Url file yang akan ada setelah operasi selesai. Misalnya, jika file diganti namanya, file sourceUrl berisi url nama file asli sebelum operasi ganti nama.
Muncul hanya untuk peristiwa yang dipicu pada akun penyimpanan blob yang memiliki ruang nama hierarkis.
url string Jalan menuju blob.
Jika klien menggunakan API Blob REST, maka url memiliki struktur ini: <storage-account-name>.blob.core.windows.net\<container-name>\<file-name>.
Jika klien menggunakan API Blob REST, maka url memiliki struktur ini: <storage-account-name>.dfs.core.windows.net/<file-system-name>/<file-name>.
recursive string True untuk menjalankan operasi pada semua direktori anak; jika tidak, False.
Muncul hanya untuk peristiwa yang dipicu pada akun penyimpanan blob yang memiliki ruang nama hierarkis.
sequencer string Nilai string buram yang mewakili urutan peristiwa logis untuk nama blob tertentu. Anda dapat menggunakan perbandingan string standar untuk memahami urutan relatif dari dua kejadian pada nama blob yang sama.
identity string Nilai string mewakili identitas yang terkait dengan peristiwa. Untuk SFTP, ini adalah nama pengguna lokalnya.
storageDiagnostics object Data diagnostik sesekali disertakan oleh layanan Azure Storage. Ketika ada, harus diabaikan oleh konsumen kejadian.

Tutorial dan cara kerja

Judul Deskripsi
Mulai Cepat: Merutekan kejadian penyimpanan Blob ke titik akhir web dengan Azure CLI Memperlihatkan cara menggunakan Azure CLI untuk mengirim peristiwa penyimpanan blob ke WebHook.
Mulai Cepat: Merutekan kejadian penyimpanan Blob ke titik akhir web dengan PowerShell Memperlihatkan cara menggunakan Azure PowerShell untuk mengirim peristiwa penyimpanan blob ke WebHook.
Mulai cepat: membuat dan merutekan kejadian penyimpanan Blob dengan portal Microsoft Azure Memperlihatkan cara menggunakan Azure CLI untuk mengirim peristiwa penyimpanan blob ke WebHook.
Azure CLI: berlangganan kejadian untuk akun penyimpanan Blob Sampel skrip yang berlangganan pada kejadian untuk akun penyimpanan Blob. Hal ini mengirim kejadian ke WebHook.
PowerShell: berlangganan kejadian untuk akun penyimpanan Blob Sampel skrip yang berlangganan pada kejadian untuk akun penyimpanan Blob. Hal ini mengirim kejadian ke WebHook.
Template Azure Resource Manager: Membuat penyimpanan dan langganan Blob Menerapkan akun penyimpanan Azure Blob dan berlangganan pada kejadian untuk akun penyimpanan tersebut. Ini mengirim peristiwa ke WebHook.
Ringkasan: Bereaksi terhadap peristiwa penyimpanan Blob Gambaran umum mengintegrasikan penyimpanan Blob dengan Event Grid.

Langkah berikutnya