Grup sumber daya Azure sebagai sumber Event Grid
Artikel ini menyediakan properti dan skema untuk peristiwa grup sumber daya. Untuk pengantar skema peristiwa, lihat Skema peristiwa Azure Event Grid.
Langganan dan grup sumber daya Azure mengeluarkan jenis peristiwa yang sama. Jenis peristiwa terkait dengan perubahan atau tindakan sumber daya. Perbedaan utamanya adalah grup sumber daya mengeluarkan peristiwa untuk sumber daya dalam grup sumber daya, dan langganan Azure mengeluarkan peristiwa untuk sumber daya di seluruh langganan.
Peristiwa sumber daya dibuat untuk operasi PUT, PATCH, POST, dan DELETE yang dikirim ke management.azure.com
. Operasi GET tidak membuat peristiwa. Operasi yang dikirim ke sarana data (seperti myaccount.blob.core.windows.net
) tidak membuat peristiwa. Peristiwa tindakan menyediakan data peristiwa untuk operasi seperti mencantumkan kunci untuk sumber daya.
Saat Anda berlangganan peristiwa untuk grup sumber daya, titik akhir Anda menerima semua peristiwa untuk grup sumber daya tersebut. Peristiwa dapat mencakup peristiwa yang ingin Anda lihat, seperti memperbarui komputer virtual, tetapi juga peristiwa yang tidak penting untuk Anda, seperti menulis entri baru dalam riwayat penyebaran. Anda dapat menerima semua peristiwa di titik akhir dan menulis kode yang memproses peristiwa yang ingin Anda tangani. Atau, Anda dapat mengatur filter saat membuat langganan peristiwa.
Untuk menangani peristiwa secara terprogram, Anda dapat mengurutkan peristiwa dengan melihat nilai operationName
. Misalnya, titik akhir peristiwa Anda mungkin hanya memproses peristiwa untuk operasi yang sama dengan Microsoft.Compute/virtualMachines/write
atau Microsoft.Storage/storageAccounts/write
.
Subjek peristiwa adalah ID sumber daya untuk sumber daya yang menjadi target operasi. Agar dapat memfilter peristiwa untuk sumber daya, berikan ID sumber daya tersebut saat membuat langganan peristiwa. Untuk memfilter menurut jenis sumber daya, gunakan nilai dalam format berikut: /subscriptions/<subscription-id>/resourcegroups/<resource-group>/providers/Microsoft.Compute/virtualMachines
Tipe kejadian yang tersedia
Grup sumber daya mengeluarkan peristiwa pengelolaan dari Azure Resource Manager, seperti saat VM dibuat atau akun penyimpanan dihapus.
Jenis peristiwa | Deskripsi |
---|---|
Microsoft.Resources.ResourceActionCancel | Muncul saat tindakan atau sumber daya dibatalkan. |
Microsoft.Resources.ResourceActionFailure | Muncul saat tindakan atau sumber daya gagal. |
Microsoft.Resources.ResourceActionSuccess | Muncul saat tindakan atau sumber daya berhasil. |
Microsoft.Resources.ResourceDeleteCancel | Muncul saat operasi penghapusan dibatalkan. Peristiwa ini terjadi saat penyebaran templat dibatalkan. |
Microsoft.Resources.ResourceDeleteFailure | Muncul saat operasi penghapusan gagal. |
Microsoft.Resources.ResourceDeleteSuccess | Muncul saat operasi penghapusan berhasil. |
Microsoft.Resources.ResourceWriteCancel | Muncul saat operasi pembuatan atau pembaruan dibatalkan. |
Microsoft.Resources.ResourceWriteFailure | Muncul saat operasi pembuatan atau pembaruan gagal. |
Microsoft.Resources.ResourceWriteSuccess | Muncul saat operasi pembuatan atau pembaruan berhasil. |
Contoh peristiwa
Contoh berikut menampilkan skema untuk peristiwa ResourceWriteSuccess. Skema yang sama digunakan untuk peristiwa ResourceWriteFailure dan ResourceWriteCancel dengan nilai yang berbeda untuk eventType
.
[{
"subject": "/subscriptions/{subscription-id}/resourcegroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}",
"source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}",
"type": "Microsoft.Resources.ResourceWriteSuccess",
"time": "2018-07-19T18:38:04.6117357Z",
"id": "4db48cba-50a2-455a-93b4-de41a3b5b7f6",
"data": {
"authorization": {
"scope": "/subscriptions/{subscription-id}/resourcegroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}",
"action": "Microsoft.Storage/storageAccounts/write",
"evidence": {
"role": "Subscription Admin"
}
},
"claims": {
"aud": "{audience-claim}",
"iss": "{issuer-claim}",
"iat": "{issued-at-claim}",
"nbf": "{not-before-claim}",
"exp": "{expiration-claim}",
"_claim_names": "{\"groups\":\"src1\"}",
"_claim_sources": "{\"src1\":{\"endpoint\":\"{URI}\"}}",
"http://schemas.microsoft.com/claims/authnclassreference": "1",
"aio": "{token}",
"http://schemas.microsoft.com/claims/authnmethodsreferences": "rsa,mfa",
"appid": "{ID}",
"appidacr": "2",
"http://schemas.microsoft.com/2012/01/devicecontext/claims/identifier": "{ID}",
"e_exp": "{expiration}",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname": "{last-name}",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname": "{first-name}",
"ipaddr": "{IP-address}",
"name": "{full-name}",
"http://schemas.microsoft.com/identity/claims/objectidentifier": "{ID}",
"onprem_sid": "{ID}",
"puid": "{ID}",
"http://schemas.microsoft.com/identity/claims/scope": "user_impersonation",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier": "{ID}",
"http://schemas.microsoft.com/identity/claims/tenantid": "{ID}",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name": "{user-name}",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn": "{user-name}",
"uti": "{ID}",
"ver": "1.0"
},
"correlationId": "{ID}",
"resourceProvider": "Microsoft.Storage",
"resourceUri": "/subscriptions/{subscription-id}/resourcegroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}",
"operationName": "Microsoft.Storage/storageAccounts/write",
"status": "Succeeded",
"subscriptionId": "{subscription-id}",
"tenantId": "{tenant-id}"
},
"specversion": "1.0"
}]
Contoh berikut menampilkan skema untuk peristiwa ResourceDeleteSuccess. Skema yang sama digunakan untuk peristiwa ResourceDeleteFailure dan ResourceDeleteCancel dengan nilai yang berbeda untuk eventType
.
[{
"subject": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}",
"source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}",
"type": "Microsoft.Resources.ResourceDeleteSuccess",
"time": "2018-07-19T19:24:12.763881Z",
"id": "19a69642-1aad-4a96-a5ab-8d05494513ce",
"data": {
"authorization": {
"scope": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}",
"action": "Microsoft.Storage/storageAccounts/delete",
"evidence": {
"role": "Subscription Admin"
}
},
"claims": {
"aud": "{audience-claim}",
"iss": "{issuer-claim}",
"iat": "{issued-at-claim}",
"nbf": "{not-before-claim}",
"exp": "{expiration-claim}",
"_claim_names": "{\"groups\":\"src1\"}",
"_claim_sources": "{\"src1\":{\"endpoint\":\"{URI}\"}}",
"http://schemas.microsoft.com/claims/authnclassreference": "1",
"aio": "{token}",
"http://schemas.microsoft.com/claims/authnmethodsreferences": "rsa,mfa",
"appid": "{ID}",
"appidacr": "2",
"http://schemas.microsoft.com/2012/01/devicecontext/claims/identifier": "{ID}",
"e_exp": "262800",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname": "{last-name}",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname": "{first-name}",
"ipaddr": "{IP-address}",
"name": "{full-name}",
"http://schemas.microsoft.com/identity/claims/objectidentifier": "{ID}",
"onprem_sid": "{ID}",
"puid": "{ID}",
"http://schemas.microsoft.com/identity/claims/scope": "user_impersonation",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier": "{ID}",
"http://schemas.microsoft.com/identity/claims/tenantid": "{ID}",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name": "{user-name}",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn": "{user-name}",
"uti": "{ID}",
"ver": "1.0"
},
"correlationId": "{ID}",
"httpRequest": {
"clientRequestId": "{ID}",
"clientIpAddress": "{IP-address}",
"method": "DELETE",
"url": "https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}?api-version=2018-02-01"
},
"resourceProvider": "Microsoft.Storage",
"resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}",
"operationName": "Microsoft.Storage/storageAccounts/delete",
"status": "Succeeded",
"subscriptionId": "{subscription-id}",
"tenantId": "{tenant-id}"
},
"specversion": "1.0"
}]
Contoh berikut menampilkan skema untuk peristiwa ResourceActionSuccess. Skema yang sama digunakan untuk peristiwa ResourceActionFailure dan ResourceActionCancel dengan nilai yang berbeda untuk eventType
.
[{
"subject": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey",
"source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}",
"type": "Microsoft.Resources.ResourceActionSuccess",
"time": "2018-10-08T22:46:22.6022559Z",
"id": "{ID}",
"data": {
"authorization": {
"scope": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey",
"action": "Microsoft.EventHub/namespaces/AuthorizationRules/listKeys/action",
"evidence": {
"role": "Contributor",
"roleAssignmentScope": "/subscriptions/{subscription-id}",
"roleAssignmentId": "{ID}",
"roleDefinitionId": "{ID}",
"principalId": "{ID}",
"principalType": "ServicePrincipal"
}
},
"claims": {
"aud": "{audience-claim}",
"iss": "{issuer-claim}",
"iat": "{issued-at-claim}",
"nbf": "{not-before-claim}",
"exp": "{expiration-claim}",
"aio": "{token}",
"appid": "{ID}",
"appidacr": "2",
"http://schemas.microsoft.com/identity/claims/identityprovider": "{URL}",
"http://schemas.microsoft.com/identity/claims/objectidentifier": "{ID}",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier": "{ID}", "http://schemas.microsoft.com/identity/claims/tenantid": "{ID}",
"uti": "{ID}",
"ver": "1.0"
},
"correlationId": "{ID}",
"httpRequest": {
"clientRequestId": "{ID}",
"clientIpAddress": "{IP-address}",
"method": "POST",
"url": "https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey/listKeys?api-version=2017-04-01"
},
"resourceProvider": "Microsoft.EventHub",
"resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey",
"operationName": "Microsoft.EventHub/namespaces/AuthorizationRules/listKeys/action",
"status": "Succeeded",
"subscriptionId": "{subscription-id}",
"tenantId": "{tenant-id}"
},
"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 grup sumber daya. |
specversion |
string | Versi spesifikasi skema CloudEvents. |
Objek data memiliki properti berikut:
Properti | Tipe | Deskripsi |
---|---|---|
authorization |
object | Otorisasi yang diminta untuk operasi. |
claims |
object | Properti klaim. Untuk mengetahui informasi selengkapnya, lihat Spesifikasi JWT. |
correlationId |
string | ID operasi untuk pemecahan masalah. |
httpRequest |
object | Detail operasi. Objek ini hanya disertakan saat memperbarui sumber daya yang ada atau menghapus sumber daya. |
resourceProvider |
string | Penyedia sumber daya untuk operasi. |
resourceUri |
string | URI sumber daya dalam operasi. |
operationName |
string | Operasi yang dilakukan. |
status |
string | Status operasi. |
subscriptionId |
string | ID langganan sumber daya. |
tenantId |
string | ID tenant sumber daya. |
Tutorial dan cara kerja
Judul | Deskripsi |
---|---|
Tutorial: memantau perubahan mesin virtual dengan Azure Event Grid dan Logic Apps | Aplikasi logika memantau perubahan ke mesin virtual dan mengirim email tentang perubahan tersebut. |
Azure CLI: berlangganan peristiwa untuk grup sumber daya | Contoh skrip yang berlangganan peristiwa untuk grup sumber daya. Ini mengirim peristiwa ke WebHook. |
Azure CLI: berlangganan peristiwa untuk grup sumber daya dan memfilter sumber daya | Sampel skrip yang berlangganan peristiwa untuk grup sumber daya dan memfilter peristiwa untuk satu sumber daya. |
PowerShell: berlangganan peristiwa untuk grup sumber daya | Contoh skrip yang berlangganan peristiwa untuk grup sumber daya. Ini mengirim peristiwa ke WebHook. |
PowerShell: berlangganan peristiwa untuk grup sumber daya dan memfilter sumber daya | Sampel skrip yang berlangganan peristiwa untuk grup sumber daya dan memfilter peristiwa untuk satu sumber daya. |
Templat Resource Manajer: langganan sumber daya | Berlangganan peristiwa untuk langganan atau grup sumber daya Azure. Ini mengirim peristiwa ke WebHook. |
Langkah berikutnya
- Untuk pengenalan Azure Event Grid, lihat Apa itu Event Grid?
- Untuk informasi selengkapnya tentang cara membuat langganan Azure Event Grid, lihat Skema langganan Event Grid.