Azure Container Registry als event grid-bron

Dit artikel bevat de eigenschappen en het schema voor Container Registry-gebeurtenissen. Zie het Gebeurtenisschema van Azure Event Grid voor een inleiding tot gebeurtenisschema's.

Beschikbare gebeurtenistypen

Azure Container Registry verzendt de volgende gebeurtenistypen:

Gebeurtenistype Beschrijving
Microsoft.ContainerRegistry.ImagePushed Gegenereerd wanneer een afbeelding wordt gepusht.
Microsoft.ContainerRegistry.ImageDeleted Wordt gegenereerd wanneer een afbeelding wordt verwijderd.
Microsoft.ContainerRegistry.ChartPushed Verhoogd wanneer een Helm-grafiek wordt gepusht.
Microsoft.ContainerRegistry.ChartDeleted Wordt gegenereerd wanneer een Helm-grafiek wordt verwijderd.

Voorbeeld van een gebeurtenis

In het volgende voorbeeld ziet u het schema van een gepushte afbeeldingsgebeurtenis:

[{
  "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"
}]

Het schema voor een verwijderde afbeeldings gebeurtenis is vergelijkbaar:

[{
  "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"
}]

Het schema voor een gepushte grafiekgebeurtenis is vergelijkbaar met het schema voor een gepushte gebeurtenis met een afbeelding, maar bevat geen aanvraagobject:

[{
  "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"
}]

Het schema voor een verwijderde grafiekgebeurtenis is vergelijkbaar met het schema voor een verwijderde gebeurtenis met een afbeelding, maar bevat geen aanvraagobject:

[{
  "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"
}]

Eigenschappen van gebeurtenis

Een gebeurtenis bevat de volgende gegevens op het hoogste niveau:

Eigenschap Type Omschrijving
source tekenreeks Volledig resourcepad naar de gebeurtenisbron. Dit veld kan niet worden geschreven. Event Grid biedt deze waarde.
subject tekenreeks Het door de uitgever gedefinieerde pad naar het gebeurtenisonderwerp.
type tekenreeks Een van de geregistreerde gebeurtenistypen voor deze gebeurtenisbron.
time tekenreeks Het tijdstip waarop de gebeurtenis wordt gegenereerd op basis van de UTC-tijd van de provider.
id tekenreeks Unieke id voor de gebeurtenis.
data object Blob Storage-gebeurtenisgegevens.
specversion tekenreeks CloudEvents schemaspecificatieversie.

Het gegevensobject heeft de volgende eigenschappen:

Eigenschap Type Omschrijving
id tekenreeks De gebeurtenis-id.
timestamp tekenreeks Het tijdstip waarop de gebeurtenis heeft plaatsgevonden.
action tekenreeks De actie die de opgegeven gebeurtenis omvat.
target object Het doel van de gebeurtenis.
request object De aanvraag die de gebeurtenis heeft gegenereerd.

Het doelobject heeft de volgende eigenschappen:

Eigenschap Type Omschrijving
mediaType tekenreeks Het MIME-type van het object waarnaar wordt verwezen.
size geheel getal Het aantal bytes van de inhoud. Hetzelfde als het veld Lengte.
digest tekenreeks De samenvatting van de inhoud, zoals gedefinieerd door de HTTP API-specificatie van register V2.
length geheel getal Het aantal bytes van de inhoud. Hetzelfde als het veld Grootte.
repository tekenreeks De naam van de opslagplaats.
tag tekenreeks De tagnaam.
name tekenreeks De grafieknaam.
version tekenreeks De grafiekversie.

Het aanvraagobject heeft de volgende eigenschappen:

Eigenschap Type Omschrijving
id tekenreeks De id van de aanvraag waarmee de gebeurtenis is gestart.
addr tekenreeks Het IP-adres of de hostnaam en mogelijk de poort van de clientverbinding die de gebeurtenis heeft gestart. Deze waarde is de RemoteAddr van de standaard HTTP-aanvraag.
host tekenreeks De extern toegankelijke hostnaam van het registerexemplaren, zoals opgegeven door de HTTP-hostheader op binnenkomende aanvragen.
method tekenreeks De aanvraagmethode waarmee de gebeurtenis is gegenereerd.
useragent tekenreeks De header van de gebruikersagent van de aanvraag.

Het connectedRegistry-object heeft de volgende eigenschappen:

Eigenschap Type Omschrijving
name tekenreeks De naam van het verbonden register dat deze gebeurtenis heeft gegenereerd.

Zelfstudies en handleidingen

Title Beschrijving
Quickstart: Container Registry-gebeurtenissen verzenden Laat zien hoe u Azure CLI gebruikt om Container Registry-gebeurtenissen te verzenden.

Volgende stappen