Registro Azure Container come origine di Griglia di eventi
Questo articolo illustra le proprietà e lo schema per gli eventi del Registro contenitori. Per un'introduzione agli schemi di eventi, vedere Schema di eventi di Griglia di eventi di Azure.
Tipi di evento disponibili
Registro Azure Container genera i tipi di evento seguenti:
Tipo di evento | Descrizione |
---|---|
Microsoft.ContainerRegistry.ImagePushed | Generato quando viene eseguito il push di un'immagine. |
Microsoft.ContainerRegistry.ImagePushed | Generato quando un'immagine viene eliminata. |
Microsoft.ContainerRegistry.ChartPushed | Generato quando viene eseguito il push di un grafico Helm. |
Microsoft.ContainerRegistry.ChartDeleted | Generato quando viene eliminato un grafico Helm. |
Evento di esempio
L'esempio seguente illustra lo schema di esecuzione del push di un'immagine:
[{
"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"
}]
Lo schema per l'eliminazione di un'immagine è simile:
[{
"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"
}]
Lo schema per un evento di cui è stato eseguito il push del grafico è simile allo schema per un evento di cui è stato eseguito il push dell'immagine, ma non include un oggetto richiesta:
[{
"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"
}]
Lo schema per un evento di cui è stata eseguita l'eliminazione del grafico è simile allo schema per un evento di cui è stata eseguita l'eliminazione dell'immagine, ma non include un oggetto richiesta:
[{
"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"
}]
Proprietà dell'evento
Un evento presenta i seguenti dati di primo livello:
Proprietà | Type | Descrizione |
---|---|---|
source |
stringa | Percorso completo della risorsa all'origine evento. Questo campo non è scrivibile. Questo valore viene specificato da Griglia di eventi. |
subject |
string | Percorso definito dall'editore all'oggetto dell'evento. |
type |
string | Uno dei tipi di evento registrati per l'origine evento. |
time |
string | Ora di generazione dell'evento in base all'ora UTC del provider. |
id |
string | Identificatore univoco per l'evento. |
data |
oggetto | Dati relativi all'evento di archiviazione BLOB. |
specversion |
string | Versione della specifica dello schema CloudEvents. |
Di seguito sono elencate le proprietà dell'oggetto dati:
Proprietà | Type | Descrizione |
---|---|---|
id |
stringa | L'ID evento. |
timestamp |
string | L'ora in cui si è verificato l'evento. |
action |
string | L'azione che comprende l'evento specificato. |
target |
oggetto | L'URL di destinazione dell'evento. |
request |
oggetto | La richiesta che ha generato l'evento. |
Di seguito sono elencate le proprietà dell'oggetto di destinazione:
Proprietà | Type | Descrizione |
---|---|---|
mediaType |
stringa | Tipo MIME dell'oggetto di riferimento. |
size |
integer | Numero di byte del contenuto. Uguale al campo Length. |
digest |
string | Digest del contenuto, definito dalla specifica API HTTP del registro contenitori V2. |
length |
integer | Numero di byte del contenuto. Uguale al campo Size. |
repository |
string | Nome del repository. |
tag |
string | Nome tag. |
name |
string | Nome del grafico. |
version |
string | Versione del grafico. |
Di seguito sono elencate le proprietà dell'oggetto della richiesta:
Proprietà | Type | Descrizione |
---|---|---|
id |
stringa | ID della richiesta che ha avviato l'evento. |
addr |
string | L'IP o nome host e possibilmente la porta della connessione client che ha avviato l'evento. Questo valore è il RemoteAddr. dalla richiesta http standard. |
host |
string | Nome host accessibile esternamente dell'istanza del registro, specificato dall'intestazione host http nelle richieste in ingresso. |
method |
string | Metodo di richiesta che ha generato l'evento. |
useragent |
string | Intestazione agente utente della richiesta. |
L'oggetto connectedRegistry ha le proprietà seguenti:
Proprietà | Type | Descrizione |
---|---|---|
name |
stringa | Nome del registro connesso che ha generato questo evento. |
Esercitazioni e procedure
Posizione | Descrizione |
---|---|
Guida introduttiva: inviare eventi del registro contenitori | Illustra come usare l'interfaccia della riga di comando di Azure per inviare gli eventi di Registro Azure Container. |
Passaggi successivi
- Per un'introduzione a Griglia di eventi di Azure, vedere Informazioni su Griglia di eventi
- Per altre informazioni sulla creazione di una sottoscrizione di Griglia di eventi di Azure, vedere Schema di sottoscrizione per Griglia di eventi.