Azure Container Registry som en Event Grid-källa
Den här artikeln innehåller egenskaper och schema för Container Registry-händelser. En introduktion till händelsescheman finns i Händelseschema för Azure Event Grid.
Tillgängliga händelsetyper
Azure Container Registry genererar följande händelsetyper:
Händelsetyp | beskrivning |
---|---|
Microsoft.ContainerRegistry.ImagePushed | Upphöjt när en bild skickas. |
Microsoft.ContainerRegistry.ImageDeleted | Upphöjt när en bild tas bort. |
Microsoft.ContainerRegistry.ChartPushed | Upphöjt när ett Helm-diagram pushas. |
Microsoft.ContainerRegistry.ChartDeleted | Utlöses när ett Helm-diagram tas bort. |
Exempelhändelse
I följande exempel visas schemat för en push-överförd bildhändelse:
[{
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"source": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.ContainerRegistry/registries/<name>",
"subject": "aci-helloworld:v1",
"type": "Microsoft.ContainerRegistry.ImagePushed",
"time": "2018-04-25T21:39:47.6549614Z",
"data": {
"id": "31c51664-e5bd-416a-a5df-e5206bc47ed0",
"timestamp": "2018-04-25T21:39:47.276585742Z",
"action": "push",
"target": {
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"size": 3023,
"digest": "sha256:213bbc182920ab41e18edc2001e06abcca6735d87782d9cef68abd83941cf0e5",
"length": 3023,
"repository": "aci-helloworld",
"tag": "v1"
},
"request": {
"id": "7c66f28b-de19-40a4-821c-6f5f6c0003a4",
"host": "demo.azurecr.io",
"method": "PUT",
"useragent": "docker/18.03.0-ce go/go1.9.4 git-commit/0520e24 os/windows arch/amd64 UpstreamClient(Docker-Client/18.03.0-ce \\\\(windows\\\\))"
}
},
"specversion": "1.0"
}]
Schemat för en borttagen bildhändelse liknar följande:
[{
"id": "f06e3921-301f-42ec-b368-212f7d5354bd",
"source": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.ContainerRegistry/registries/<name>",
"subject": "aci-helloworld",
"type": "Microsoft.ContainerRegistry.ImageDeleted",
"time": "2018-04-26T17:56:01.8211268Z",
"data": {
"id": "f06e3921-301f-42ec-b368-212f7d5354bd",
"timestamp": "2018-04-26T17:56:00.996603117Z",
"action": "delete",
"target": {
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"digest": "sha256:213bbc182920ab41e18edc2001e06abcca6735d87782d9cef68abd83941cf0e5",
"repository": "aci-helloworld"
},
"request": {
"id": "aeda5b99-4197-409f-b8a8-ff539edb7de2",
"host": "demo.azurecr.io",
"method": "DELETE",
"useragent": "python-requests/2.18.4"
}
},
"specversion": "1.0"
}]
Schemat för ett diagram som push-överförts liknar schemat för en avbildningsförd push-händelse, men det innehåller inte något objekt för begäran:
[{
"id": "ea3a9c28-5b17-40f6-a500-3f02b6829277",
"source": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.ContainerRegistry/registries/<name>",
"subject": "mychart:1.0.0",
"type": "Microsoft.ContainerRegistry.ChartPushed",
"time": "2019-03-12T22:16:31.5164086Z",
"data": {
"id":"ea3a9c28-5b17-40f6-a500-3f02b682927",
"timestamp":"2019-03-12T22:16:31.0087496+00:00",
"action":"chart_push",
"target":{
"mediaType":"application/vnd.acr.helm.chart",
"size":25265,
"digest":"sha256:7f060075264b5ba7c14c23672698152ae6a3ebac1c47916e4efe19cd624d5fab",
"repository":"repo",
"tag":"mychart-1.0.0.tgz",
"name":"mychart",
"version":"1.0.0"
}
},
"specversion": "1.0"
}]
Schemat för en diagramborttagningshändelse liknar schemat för en borttagen bildhändelse, men det innehåller inget objekt för begäran:
[{
"id": "39136b3a-1a7e-416f-a09e-5c85d5402fca",
"source": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.ContainerRegistry/registries/<name>",
"subject": "mychart:1.0.0",
"type": "Microsoft.ContainerRegistry.ChartDeleted",
"time": "019-03-12T22:42:08.7034064Z",
"data": {
"id":"ea3a9c28-5b17-40f6-a500-3f02b682927",
"timestamp":"2019-03-12T22:42:08.3783775+00:00",
"action":"chart_delete",
"target":{
"mediaType":"application/vnd.acr.helm.chart",
"size":25265,
"digest":"sha256:7f060075264b5ba7c14c23672698152ae6a3ebac1c47916e4efe19cd624d5fab",
"repository":"repo",
"tag":"mychart-1.0.0.tgz",
"name":"mychart",
"version":"1.0.0"
}
},
"specversion": "1.0"
}]
Händelseegenskaper
En händelse har följande data på den översta nivån:
Property | Type | Description |
---|---|---|
source |
sträng | Fullständig resurssökväg till händelsekällan. Det här fältet kan inte skrivas. Event Grid ger det här värdet. |
subject |
sträng | Utgivardefinierad sökväg till händelseobjektet. |
type |
sträng | En av de registrerade händelsetyperna för den här händelsekällan. |
time |
sträng | Den tid då händelsen genereras baserat på leverantörens UTC-tid. |
id |
sträng | Unik identifierare för händelsen. |
data |
objekt | Händelsedata för Blob Storage. |
specversion |
sträng | CloudEvents schemaspecifikationsversion. |
Dataobjektet har följande egenskaper:
Property | Type | Description |
---|---|---|
id |
sträng | Händelse-ID:t. |
timestamp |
sträng | Tidpunkten då händelsen inträffade. |
action |
sträng | Åtgärden som omfattar den angivna händelsen. |
target |
objekt | Målet för händelsen. |
request |
objekt | Begäran som genererade händelsen. |
Målobjektet har följande egenskaper:
Property | Type | Description |
---|---|---|
mediaType |
sträng | MIME-typen för det refererade objektet. |
size |
integer | Antalet byte av innehållet. Samma som fältet Längd. |
digest |
sträng | Sammanfattningen av innehållet enligt definitionen i HTTP API-specifikationen för Registry V2. |
length |
integer | Antalet byte av innehållet. Samma som fältet Storlek. |
repository |
sträng | Lagringsplatsens namn. |
tag |
sträng | Taggnamnet. |
name |
sträng | Diagramnamnet. |
version |
sträng | Diagramversionen. |
Begärandeobjektet har följande egenskaper:
Property | Type | Description |
---|---|---|
id |
sträng | ID för begäran som initierade händelsen. |
addr |
sträng | IP-adressen eller värdnamnet och eventuellt porten för klientanslutningen som initierade händelsen. Det här värdet är RemoteAddr från http-standardbegäran. |
host |
sträng | Registerinstansens externt tillgängliga värdnamn enligt http-värdhuvudet för inkommande begäranden. |
method |
sträng | Den begärandemetod som genererade händelsen. |
useragent |
sträng | Användaragentens huvud för begäran. |
Objektet connectedRegistry har följande egenskaper:
Property | Type | Description |
---|---|---|
name |
sträng | Namnet på det anslutna registret som genererade den här händelsen. |
Självstudier och instruktioner
Title | Description |
---|---|
Snabbstart: skicka containerregisterhändelser | Visar hur du använder Azure CLI för att skicka Container Registry-händelser. |
Nästa steg
- En introduktion till Azure Event Grid finns i Vad är Event Grid?
- Mer information om hur du skapar en Azure Event Grid-prenumeration finns i Event Grid-prenumerationsschema.