Share via


Schema CloudEvents v1.0 con Griglia di eventi di Azure

Griglia di eventi di Azure supporta in modo nativo gli eventi in Implementazione JSON dell'associazione di protocolli CLOUDEvents v1.0 e HTTP. CloudEvents è una specifica aperta per la descrizione dei dati degli eventi.

CloudEvents semplifica l'interoperabilità fornendo uno schema di eventi comune per la pubblicazione e l'utilizzo degli eventi basati sul cloud. Questo schema consente strumenti uniformi, modi standard per il routing e la gestione degli eventi e modi universali per la deserializzazione dello schema di eventi esterni. Con uno schema comune, è possibile integrare più facilmente il lavoro tra le piattaforme.

CloudEvents viene compilato da diversi collaboratori, tra cui Microsoft, tramite Cloud Native Computing Foundation. È attualmente disponibile come versione 1.0.

Questo articolo descrive lo schema CloudEvents con Griglia di eventi.

Evento di esempio con lo schema CloudEvents

Ecco un esempio di evento Archiviazione BLOB di Azure nel formato CloudEvents:

{
    "specversion": "1.0",
    "type": "Microsoft.Storage.BlobCreated",  
    "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-account}",
    "id": "9aeb0fdf-c01e-0131-0922-9eb54906e209",
    "time": "2019-11-18T15:13:39.4589254Z",
    "subject": "blobServices/default/containers/{storage-container}/blobs/{new-file}",    
    "data": {
        "api": "PutBlockList",
        "clientRequestId": "4c5dd7fb-2c48-4a27-bb30-5361b5de920a",
        "requestId": "9aeb0fdf-c01e-0131-0922-9eb549000000",
        "eTag": "0x8D76C39E4407333",
        "contentType": "image/png",
        "contentLength": 30699,
        "blobType": "BlockBlob",
        "url": "https://gridtesting.blob.core.windows.net/testcontainer/{new-file}",
        "sequencer": "000000000000000000000000000099240000000000c41c18",
        "storageDiagnostics": {
            "batchId": "681fe319-3006-00a8-0022-9e7cde000000"
        }
    }
}

Una descrizione dettagliata dei campi disponibili, dei relativi tipi e delle definizioni in CloudEvents v1.0 è disponibile qui.

I valori delle intestazioni per gli eventi recapitati nello schema CloudEvents e nello schema Griglia di eventi sono gli stessi, ad eccezione di content-type. Per lo schema CloudEvents, tale valore intestazione è "content-type":"application/cloudevents+json; charset=utf-8". Per lo schema Griglia di eventi, tale valore intestazione è "content-type":"application/json; charset=utf-8".

Griglia di eventi per CloudEvents

È possibile usare Griglia di eventi sia per l'input che per l'output degli eventi nello schema CloudEvents. È possibile usare CloudEvents per gli eventi di sistema, ad esempio gli eventi di archiviazione BLOB, gli eventi dell'hub IoT e gli eventi personalizzati. Oltre a supportare CloudEvents, Griglia di eventi supporta un formato di eventi proprietario, non successivo, ma completamente funzionale di Griglia di eventi. La tabella seguente descrive la trasformazione supportata quando si usano i formati CloudEvents e Griglia di eventi come schema di input negli argomenti e come schema di output nelle sottoscrizioni di eventi. Non è possibile usare uno schema di output di Griglia di eventi quando si usa CloudEvents come schema di input perché CloudEvents supporta gli attributi di estensione non supportati dallo schema di Griglia di eventi.

Schema di input Schema di output.
Formato CloudEvents Formato CloudEvents
Formato di Griglia di eventi Formato CloudEvents
Formato di Griglia di eventi Formato di Griglia di eventi

Per tutti gli schemi di eventi, Griglia di eventi richiede la convalida durante la pubblicazione in un argomento di Griglia di eventi e quando si crea una sottoscrizione di eventi. Per altre informazioni, vedere Event Grid security and authentication (Sicurezza e autenticazione di Griglia di eventi).

Passaggi successivi

Vedere Come usare lo schema CloudEvents v1.0 con Griglia di eventi.