Usługa Azure Container Registry jako źródło usługi Event Grid
Ten artykuł zawiera właściwości i schemat zdarzeń usługi Container Registry. Aby zapoznać się ze schematami zdarzeń, zobacz Schemat zdarzeń usługi Azure Event Grid.
Dostępne typy zdarzeń
Usługa Azure Container Registry emituje następujące typy zdarzeń:
Typ zdarzenia | opis |
---|---|
Microsoft.ContainerRegistry.ImagePushed | Podniesione po wypchnięciu obrazu. |
Microsoft.ContainerRegistry.ImageDeleted | Wywoływane po usunięciu obrazu. |
Microsoft.ContainerRegistry.ChartPushed | Podniesione po wypchnięciu wykresu Helm. |
Microsoft.ContainerRegistry.ChartDeleted | Podniesione po usunięciu wykresu programu Helm. |
Przykładowe zdarzenie
Poniższy przykład przedstawia schemat zdarzenia wypychanego obrazu:
[{
"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 usuniętego zdarzenia obrazu jest podobny:
[{
"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 zdarzenia wypychanego wykresu jest podobny do schematu zdarzenia wypychanego z obrazem, ale nie zawiera obiektu żądania:
[{
"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 usuniętego zdarzenia wykresu jest podobny do schematu zdarzenia usuniętego z obrazu, ale nie zawiera obiektu żądania:
[{
"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"
}]
Właściwości zdarzenia
Zdarzenie ma następujące dane najwyższego poziomu:
Właściwość | Type | opis |
---|---|---|
source |
string | Pełna ścieżka zasobu do źródła zdarzeń. To pole nie jest możliwe do zapisu. Ta wartość jest podawana przez usługę Event Grid. |
subject |
string | Zdefiniowana przez wydawcę ścieżka do tematu zdarzenia. |
type |
string | Jeden z zarejestrowanych typów zdarzeń dla tego źródła zdarzeń. |
time |
string | Czas generowania zdarzenia na podstawie czasu UTC dostawcy. |
id |
string | Unikatowy identyfikator zdarzenia. |
data |
obiekt | Dane zdarzeń usługi Blob Storage. |
specversion |
string | Wersja specyfikacji schematu CloudEvents. |
Obiekt danych ma następujące właściwości:
Właściwość | Type | opis |
---|---|---|
id |
string | Identyfikator zdarzenia. |
timestamp |
string | Godzina wystąpienia zdarzenia. |
action |
string | Akcja obejmująca podane zdarzenie. |
target |
obiekt | Element docelowy zdarzenia. |
request |
obiekt | Żądanie, które wygenerowało zdarzenie. |
Obiekt docelowy ma następujące właściwości:
Właściwość | Type | opis |
---|---|---|
mediaType |
string | Typ MIME obiektu, do których odwołuje się odwołanie. |
size |
integer | Liczba bajtów zawartości. Tak samo jak pole Długość. |
digest |
string | Skrót zawartości zdefiniowanej przez specyfikację interfejsu API HTTP rejestru w wersji 2. |
length |
integer | Liczba bajtów zawartości. Tak samo jak pole Rozmiar. |
repository |
string | Nazwa repozytorium. |
tag |
string | Nazwa tagu. |
name |
string | Nazwa wykresu. |
version |
string | Wersja wykresu. |
Obiekt żądania ma następujące właściwości:
Właściwość | Type | opis |
---|---|---|
id |
string | Identyfikator żądania, które zainicjowało zdarzenie. |
addr |
string | Adres IP lub nazwa hosta i prawdopodobnie port połączenia klienta, które zainicjowało zdarzenie. Ta wartość to RemoteAddr ze standardowego żądania HTTP. |
host |
string | Zewnętrznie dostępna nazwa hosta wystąpienia rejestru określona przez nagłówek hosta HTTP dla żądań przychodzących. |
method |
string | Metoda żądania, która wygenerowała zdarzenie. |
useragent |
string | Nagłówek agenta użytkownika żądania. |
Obiekt connectedRegistry ma następujące właściwości:
Właściwość | Type | opis |
---|---|---|
name |
string | Nazwa połączonego rejestru, który wygenerował to zdarzenie. |
Samouczki i poradniki
Nazwa | opis |
---|---|
Szybki start: wysyłanie zdarzeń rejestru kontenerów | Przedstawia sposób wysyłania zdarzeń usługi Container Registry za pomocą interfejsu wiersza polecenia platformy Azure. |
Następne kroki
- Aby zapoznać się z wprowadzeniem do usługi Azure Event Grid, zobacz Co to jest usługa Event Grid?
- Aby uzyskać więcej informacji na temat tworzenia subskrypcji usługi Azure Event Grid, zobacz Schemat subskrypcji usługi Event Grid.