تخزين Azure كائن ثنائي كبير الحجم كمصدر شبكة الأحداث
توفر هذه المقالة خصائص ومخطط أحداث تخزين كائن ثنائي كبير الحجم. للحصول على مقدمة لمخططات الأحداث، راجع مخطط حدث Azure Event Grid. كما أنه يوفر لك قائمة من البدايات السريعة والبرامج التعليمية لاستخدام Azure تخزين كائن ثنائي كبير الحجم كمصدر للحدث.
إشعار
حسابات التخزين فقط من نوع StorageV2 (الأغراض العامة v2)، BlockBlobStorage، و BlobStorage دعم تكامل الحدث. التخزين (v1 للأغراض العامة)لا يدعم التكامل مع شبكة الأحداث.
أنواع الأحداث المتاحة
أحداث تخزين الكائنات الثنائية كبيرة الحجم
يتم تشغيل هذه الأحداث عندما يقوم العميل بإنشاء أو استبدال أو حذف كائن ثنائي كبير الحجم عن طريق استدعاء Blob REST APIs.
إشعار
لم يتم دمج حاويات$logs
و$blobchangefeed
مع Event Grid، لذا لن يؤدي النشاط في هذه الحاويات إلى إنشاء أحداث. أيضًا، لن يؤدي استخدام نقطة نهاية dfs (abfss://URI)
للحسابات التي تم تمكين مساحة أسماء هرمية إلى إنشاء أحداث، ولكن نقطة نهاية blob (wasb:// URI)
ستنشئ أحداثًا.
اسم الحدث | الوصف |
---|---|
Microsoft.Storage.BlobCreated | يتم تشغيله عند إنشاء كائن ثنائي كبير الحجم أو استبداله. على وجه التحديد، يتم تشغيل هذا الحدث عندما يستخدم العملاء العمليات PutBlob وPutBlockList أوCopyBlob المتوفرة في Blob REST API و عندما يتم تنفيذ Block Blob تماماً. إذا استخدم العملاء العملية CopyBlob على الحسابات التي تم تمكين ميزة مساحة الاسم الهرمية عليها، فإن العملية CopyBlob تعمل بشكل مختلف قليلاً. في هذه الحالة، يتم تشغيل حدث Microsoft.Storage.Blob Created عندما CopyBlob يتم بدء العملية وليس عند تنفيذ Block Blob تماماً. |
Microsoft.Storage.BlobDeleted | يتم تشغيله عند حذف كائن ثنائي كبير الحجم. على وجه التحديد، يتم تشغيل هذا الحدث عند استدعاء العملاء للعملية DeleteBlob المتاحة في Blob REST API. |
Microsoft.Storage.BlobTierChanged | يتم تشغيله عند تغيير طبقة وصول كائن ثنائي كبير الحجم. وبوجه خاص، عند استدعاء العملاء Set Blob Tier العملية المتاحة في BLOB REST API، يتم تشغيل هذا الحدث بعد اكتمال تغيير المستوى. |
Microsoft.Storage.AsyncOperationInitiated | يتم تشغيله عند بدء عملية تتضمن نقل البيانات أو نسخها من الأرشيف إلى المستويات الساخنة أو الباردة. وبوجه خاص، يتم تشغيل هذا الحدث إما عندما يتصل العملاء Set Blob Tier API لنقل النقطة من مستوى الأرشيف إلى الطبقة الساخنة أو الباردة، أو عندما يتصل العملاء Copy Blob بواجهة برمجة التطبيقات لنسخ البيانات من النقطة في طبقة الأرشيف إلى النقطة في الطبقة الساخنة أو الباردة. |
مثال الأحداث
حدث إنشاء كائن ثنائي الحجم في Microsoft.Storage
[{
"source": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/test-container/blobs/new-file.txt",
"type": "Microsoft.Storage.BlobCreated",
"time": "2017-06-26T18:41:00.9584103Z",
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"data": {
"api": "PutBlockList",
"clientRequestId": "6d79dbfb-0e37-4fc4-981f-442c9ca65760",
"requestId": "831e1650-001e-001b-66ab-eeb76e000000",
"eTag": "0x8D4BCC2E4835CD0",
"contentType": "text/plain",
"contentLength": 524288,
"blobType": "BlockBlob",
"accessTier": "Default",
"url": "https://my-storage-account.blob.core.windows.net/testcontainer/new-file.txt",
"sequencer": "00000000000004420000000000028963",
"storageDiagnostics": {
"batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
}
},
"specversion": "1.0"
}]
حدث حذف كائن ثنائي الحجم في Microsoft.Storage
[{
"source": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/testcontainer/blobs/file-to-delete.txt",
"type": "Microsoft.Storage.BlobDeleted",
"time": "2017-11-07T20:09:22.5674003Z",
"id": "4c2359fe-001e-00ba-0e04-58586806d298",
"data": {
"api": "DeleteBlob",
"requestId": "4c2359fe-001e-00ba-0e04-585868000000",
"contentType": "text/plain",
"blobType": "BlockBlob",
"accessTier": "Default",
"url": "https://my-storage-account.blob.core.windows.net/testcontainer/file-to-delete.txt",
"sequencer": "0000000000000281000000000002F5CA",
"storageDiagnostics": {
"batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
}
},
"specversion": "1.0"
}]
حدث تغيير طبقات Microsoft.Storage.Blob
{
"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
{
"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 Gen 2
يتم تشغيل هذه الأحداث إذا قمت بتمكين مساحة أسماء هرمية على حساب التخزين، ويستخدم العملاء واجهات برمجة التطبيقات ل Azure Data Lake Storage Gen2 REST. للحصول على مزيدٍ من المعلومات عن ADLS Gen2، راجع مقدمة إلى ADLS Gen2.
اسم الحدث | الوصف |
---|---|
Microsoft.Storage.BlobCreated | يتم تشغيله عند إنشاء كائن ثنائي كبير الحجم أو استبداله. وبوجه خاص، يتم تشغيل هذا الحدث عند استخدام العملاء CreateFile والعمليات FlushWithClose المتوفرة في Api تخزين Azure Data Lake Storage Gen2. |
Microsoft.Storage.BlobDeleted | يتم تشغيله عند حذف كائن ثنائي كبير الحجم. على وجه التحديد، يتم تشغيل الحدث أيضاً عند استدعاء العملاء للعملية DeleteFile المتوفرة في Azure Data Lake Storage Gen2 REST API. |
Microsoft.Storage.BlobRenamed | يتم تشغيله عند القيام بحذف كائن ثنائي كبير الحجم. على وجه التحديد، يتم تشغيل الحدث عندما يستخدم العملاء العملية RenameFile المتوفرة في Azure Data Lake Storage Gen2 REST API. |
Microsoft.Storage.DirectoryCreated | يتم تشغيله عند إنشاء الدليل. على وجه التحديد، يتم تشغيل الحدث عندما يستخدم العملاء العملية CreateDirectory المتوفرة في Azure Data Lake Storage Gen2 REST API. |
Microsoft.Storage.DirectoryRenamed | يتم تشغيله عند إعادة تسمية الدليل. على وجه التحديد، يتم تشغيل الحدث عندما يستخدم العملاء العملية RenameDirectory المتوفرة في Azure Data Lake Storage Gen2 REST API. |
Microsoft.Storage.DirectoryDeleted | يتم تشغيله عند حذف الدليل. على وجه التحديد، يتم تشغيل الحدث عندما يستخدم العملاء العملية DeleteDirectory المتوفرة في Azure Data Lake Storage Gen2 REST API. |
إشعار
بالنسبة ل Azure Data Lake Storage Gen2، إذا كنت تريد التأكد من تشغيل الحدث Microsoft.Storage.BlobCreated فقط عند تنفيذ Blob الكتلة تماماً، تصفية الحدث FlushWithClose
لاستدعاء API REST. يؤدي استدعاء API هذا إلى تشغيل حدث Microsoft.Storage.BlobCreated فقط بعد أن تلتزم البيانات بالكامل بـ Block Blob. لمعرفة كيفية إنشاء عامل تصفية، راجع "تصفية الأحداث لشبكة الأحداث".
مثال الأحداث
حدث إنشاء كائن ثنائي الحجم في Microsoft.Storage (Data Lake Storage Gen2)
إذا كان حساب تخزين البيانات الثنائية الكبيرة يحتوي على مساحة أسماء هرمية، فإن البيانات تبدو مشابهة للمثال السابق باستثناء هذه التغييرات:
- يتم تعيين المفتاح
data.api
على السلسلةCreateFile
أوFlushWithClose
. - تم تضمين المفتاح
contentOffset
في مجموعة البيانات.
إشعار
إذا استخدمت التطبيقات PutBlockList
العملية لتحميل نقطة جديدة إلى الحساب، فلن تحتوي البيانات على هذه التغييرات.
[{
"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 (Data Lake Storage Gen2)
إذا كان حساب تخزين البيانات الثنائية الكبيرة يحتوي على مساحة أسماء هرمية، فإن البيانات تبدو مشابهة للمثال السابق باستثناء هذه التغييرات:
- يتم تعيين المفتاح
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 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 (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 (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"
}]
حدث 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"
}]
أحداث SFTP
يتم تشغيل هذه الأحداث إذا قمت بتمكين مساحة أسماء هرمية على حساب التخزين، وكان العملاء يستخدمون SFTP APIs. لمزيد من المعلومات بشأن دعم SFTP لموقع تخزين Azure Blob، راجع بروتوكول نقل ملفات SSH (SFTP) في موقع تخزين Azure Blob.
اسم الحدث | الوصف |
---|---|
Microsoft.Storage.BlobCreated | يتم تشغيله عند إنشاء blob أو الكتابة فوقه. على وجه التحديد، يتم تشغيل هذا الحدث عندما يستخدم العملاء العملية put ، والتي تتوافق مع واجهات برمجة التطبيقات SftpCreate وSftpCommit . يتم إنشاء blob فارغ عند فتح الملف والتزام المحتويات التي تم تحميلها عند إغلاق الملف. إذا تم تمكين ميزة المعاينة SFTP Resumable Uploads ، أيضا تشغيل بعض SftpWrite الأحداث أثناء التحميل. |
Microsoft.Storage.BlobDeleted | يتم تشغيله عند حذف كائن ثنائي كبير الحجم. على وجه التحديد، يتم تشغيل هذا الحدث أيضاً عندما يقوم العملاء باستدعاء العملية rm ، والتي تتوافق مع SftpRemove API. |
Microsoft.Storage.BlobRenamed | يتم تشغيله عند القيام بحذف كائن ثنائي كبير الحجم. على وجه التحديد، يتم تشغيل هذا الحدث عندما يستخدم العملاء العملية rename على الملفات، والتي تتوافق مع SftpRename API. |
Microsoft.Storage.DirectoryCreated | يتم تشغيله عند إنشاء الدليل. على وجه التحديد، يتم تشغيل هذا الحدث عندما يستخدم العملاء العملية mkdir ، والتي تتوافق مع SftpMakeDir API. |
Microsoft.Storage.DirectoryRenamed | يتم تشغيله عند إعادة تسمية الدليل. على وجه التحديد، يتم تشغيل هذا الحدث عندما يستخدم العملاء العملية rename على دليل يتوافق مع SftpRename API. |
Microsoft.Storage.DirectoryDeleted | يتم تشغيله عند حذف الدليل. على وجه التحديد، يتم تشغيل هذا الحدث عندما يستخدم العملاء العملية rmdir ، والتي تتوافق مع SftpRemoveDir API. |
مثال الأحداث
عندما يتم تشغيل حدث، ترسل خدمة Event Grid بيانات حول هذا الحدث إلى نقطة نهاية الاشتراك. يحتوي هذا القسم على مثال لما ستبدو عليه هذه البيانات لكل حدث تخزين blob.
حدث Microsoft.Storage.BlobCreated (SFTP)
إذا كان حساب تخزين blob يستخدم بروتوكول SFTP لإنشاء blob أو الكتابة فوقه، فستبدو البيانات مشابهة للمثال السابق باستثناء هذه التغييرات:
تم تعيين المفتاح
dataVersion
على قيمة3
.data.api
يتم تعيين المفتاح إلى السلسلةSftpCreate
أوSftpWrite
أوSftpCommit
.clientRequestId
المفتاح غير مضمن.تم تعيين المفتاح
contentType
علىapplication/octet-stream
.تم تضمين المفتاح
contentOffset
في مجموعة البيانات.تم تضمين المفتاح
identity
في مجموعة البيانات. يتوافق هذا مع المستخدم المحلي المستخدم لمصادقة SFTP.
إشعار
ستنشئ تحميلات SFTP حدثين. واحد 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 event (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)
إذا كان حساب تخزين البيانات الثنائية الكبيرة يستخدم بروتوكول 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)
إذا كان حساب تخزين البيانات الثنائية الكبيرة يستخدم بروتوكول 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"
}]
الأحداث المتعلقة بالنهج
يتم تشغيل هذه الأحداث عند تنفيذ الإجراءات المحددة بواسطة النهج.
اسم الحدث | الوصف |
---|---|
Microsoft.Storage.BlobInventoryPolicyCompleted | يتم تشغيله عند اكتمال تشغيل المخزون لقاعدة تم تعريفها لنهج مخزون. يحدث هذا الحدث أيضاً في حالة فشل تشغيل المخزون مع خطأ مستخدم قبل بدء تشغيله. على سبيل المثال، سيؤدي نهج غير صالح أو خطأ يحدث عندما لا تكون حاوية الوجهة موجودة إلى تشغيل الحدث. |
Microsoft.Storage.LifecyclePolicyCompleted | يتم تشغيله عند تنفيذ الإجراءات المحددة بواسطة نهج إدارة دورة الحياة. |
مثال الأحداث
عندما يتم تشغيل حدث، ترسل خدمة Event Grid بيانات حول هذا الحدث إلى نقطة نهاية الاشتراك. يحتوي هذا القسم على مثال لما ستبدو عليه هذه البيانات لكل حدث تخزين 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"
}
خصائص الحدث
ويحتوي الحدث على بيانات المستوى الأعلى التالية:
الخاصية | نوع | الوصف |
---|---|---|
source |
سلسلة | مسار المورد الكامل إلى مصدر الحدث. هذا الحقل غير قابل للكتابة. توفر شبكة الأحداث هذه القيمة. |
subject |
سلسلة | مسار يحدده الناشر لموضوع الحدث. |
type |
سلسلة | أحد أنواع الأحداث المسجلة لمصدر الحدث الماثل. |
time |
سلسلة | الوقت الذي يتم إنشاء الحدث استناداً إلى وقت UTC الموفر. |
id |
سلسلة | المعرف الفريد للحدث. |
data |
كائن | بيانات حدث تخزين البيانات الثنائية الكبيرة. |
specversion |
سلسلة | إصدار مواصفات مخطط CloudEvents. |
كائن البيانات له الخصائص التالية:
الخاصية | نوع | الوصف |
---|---|---|
api |
سلسلة | العملية التي تسببت في الحدث. |
clientRequestId |
سلسلة | معرّف طلب مقدم من العميل لعملية وAPI للتخزين. يمكن استخدام هذا المعرف للارتباط بسجلات تشخيص Azure Storage باستخدام حقل "معرف طلب العميل" في السجلات، ويمكن توفيره في طلبات العميل باستخدام عنوان "x-ms-client-request-id". راجع نموذج السجل. |
requestId |
سلسلة | معرف طلب إنشاء خدمة لعملية تشغيل تخزين API. يمكن استخدامه للارتباط بسجلات تشخيص Azure Storage باستخدام حقل "عنوان معرف الطلب" في السجلات ويتم إرجاعه من بدء استدعاء API في عنوان "x-ms-request-id". راجع نموذج السجل. |
eTag |
سلسلة | القيمة التي يمكنك استخدامها لتشغيل العمليات وفقاً للشروط. |
contentType |
سلسلة | نوع المحتوى المحدد لـكائن ثنائي كبير الحجم. |
contentLength |
integer | حجم كائن ثنائي كبير الحجم بالبايت. |
blobType |
سلسلة | نوع كائن ثنائي كبير الحجم. القيم الصالحة هي إما "BlockBlob" أو "PageBlob". |
accessTier |
سلسلة | المستوى الهدف للكائن الثنائي كبير الحجم. يظهر فقط للحدث BlobTierChanged. |
previousTier |
سلسلة | الطبقة المصدر للكائن الثنائي كبير الحجم. يظهر فقط للحدث BlobTierChanged. إذا كان الكائن الثنائي كبير الحجم يستنتج الطبقة من حساب التخزين، فلن يظهر هذا الحقل. |
contentOffset |
رقم | الإزاحة بالبايت لعملية الكتابة المأخوذة عند النقطة التي أكمل فيها تطبيق بدء الحدث الكتابة إلى الملف. يظهر فقط للأحداث التي تم تشغيلها على حسابات تخزين كائن ثنائي كبير الحجم التي تحتوي على مساحة أسماء هرمية. |
destinationUrl |
سلسلة | عنوان url الخاص بالملف الذي سيوجد بعد اكتمال العملية. على سبيل المثال، إذا تمت إعادة تسمية ملف، destinationUrl تحتوي الخاصية على عنوان url اسم الملف الجديد. يظهر فقط للأحداث التي تم تشغيلها على حسابات تخزين كائن ثنائي كبير الحجم التي تحتوي على مساحة أسماء هرمية. |
sourceUrl |
سلسلة | عنوان url الخاص بالملف الموجود قبل إتمام العملية. على سبيل المثال، إذا تمت إعادة تسمية ملف، sourceUrl يحتوي على عنوان url اسم الملف الأصلي قبل عملية إعادة تسمية. يظهر فقط للأحداث التي تم تشغيلها على حسابات تخزين كائن ثنائي كبير الحجم التي تحتوي على مساحة أسماء هرمية. |
url |
سلسلة | المسار إلى كائن ثنائي كبير الحجم. إذا كان العميل يستخدم Blob REST API، فإن عنوان url له البنية التالية: <storage-account-name>.blob.core.windows.net\<container-name>\<file-name> . إذا كان العميل يستخدم Azure Data Lake Storage API، فسيكون لعنوان URL البنية التالية: <storage-account-name>.dfs.core.windows.net/<file-system-name>/<file-name> . |
recursive |
سلسلة | True لتشغيل العملية على كافة الأدلة الفرعية ؛ وإلاFalse . يظهر فقط للأحداث التي تم تشغيلها على حسابات تخزين كائن ثنائي كبير الحجم التي تحتوي على مساحة أسماء هرمية. |
sequencer |
سلسلة | قيمة سلسلة غير شفافة تمثل التسلسل المنطقي للأحداث لأي اسم كائن ثنائي كبير الحجم معين. يمكن للمستخدمين استخدام مقارنة سلسلة قياسية لفهم التسلسل النسبي لحدثين على نفس اسم كائن ثنائي كبير الحجم. |
identity |
سلسلة | قيمة سلسلة تمثل الهوية المرتبطة بالحدث. بالنسبة إلى SFTP، هذا هو اسم المستخدم المحلي. |
storageDiagnostics |
كائن | يتم تضمين البيانات التشخيصية أحياناً بواسطة خدمة Azure Storage. عندما تكون موجودة، يجب تجاهلها من قبل مستهلكي الحدث. |
البرامج التعليمية والدروس المعرفية
المسمى الوظيفي | الوصف |
---|---|
التشغيل السريع: توجيه أحداث تخزين Blob إلى نقطة نهاية ويب مخصصة باستخدام Azure CLI | تعرض كيفية استخدام Azure CLI لإرسال أحداث تخزين كائن ثنائي كبير الحجم إلى WebHook. |
التشغيل السريع: توجيه أحداث تخزين كائن ثنائي كبير الحجم إلى نقطة نهاية ويب مخصصة باستخدام PowerShell | يوضح كيفية استخدام Azure PowerShell لإرسال أحداث تخزين البيانات الثنائية الكبيرة إلى WebHook. |
التشغيل السريع: لإنشاء وتوجيه الأحداث المخصصة باستخدام مدخل Microsoft Azure | تعرض كيفية استخدام المدخل لإرسال أحداث تخزين كائن ثنائي كبير الحجم إلى WebHook. |
Azure CLI: الاشتراك في الأحداث لحساب تخزين Blob | نموذج برنامج نصي يشترك في حدث لحساب تخزين Blob. يُرسل الحدث إلى WebHook. |
PowerShell: الاشتراك في الأحداث لحساب تخزين Blob | نموذج برنامج نصي يشترك في حدث لحساب تخزين Blob. يُرسل الحدث إلى WebHook. |
Resource Manager template: لإنشاء تخزين Blob والاشتراك | توزيع حساب تخزين Azure Blob والاشتراك في أحداث حساب التخزين هذا. يرسل الأحداث إلى WebHook. |
نظرة عامة: التفاعل مع أحداث تخزين Blob | نظرة عامة بخصوص دمج تخزين Blob مع شبكة الأحداث. |
الخطوات التالية
- للحصول على مقدمة حول Azure Event Grid، راجع ما المقصود بشبكة الأحداث؟
- لمزيد من المعلومات حول إنشاء اشتراك Azure Event Grid، راجع مخطط اشتراك شبكة الأحداث.
- للحصول على مقدمة حول العمل مع أحداث تخزين البيانات الثنائية الكبيرة، راجع أحداث مسار تخزين البيانات الثنائية الكبيرة - Azure CLI .