تخزين 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",
    "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",
    "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",
		"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 فارغ عند فتح الملف والتزام المحتويات التي تم تحميلها عند إغلاق الملف.
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 أو SftpCommit.

  • clientRequestId المفتاح غير مضمن.

  • تم تعيين المفتاح contentType على application/octet-stream.

  • تم تضمين المفتاح contentOffset في مجموعة البيانات.

  • تم تضمين المفتاح identity في مجموعة البيانات. يتوافق هذا مع المستخدم المحلي المستخدم لمصادقة SFTP.

إشعار

ستنشئ تحميلات SFTP حدثين. واحد SftpCreate للنسخة الأولية الفارغة التي تم إنشاؤها عند فتح الملف وواحدة SftpCommit عند كتابة محتويات الملف.

[{
  "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": ""
        },
        "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".
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 مع شبكة الأحداث.

الخطوات التالية