Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Analisi di flusso di Azure supporta l'elaborazione di eventi nei formati di dati Protobuf (Protocol Buffer). È possibile usare il deserializzatore Protobuf predefinito durante la configurazione degli input. Per usare il deserializzatore predefinito, specificare il file di definizione Protobuf, il tipo di messaggio e lo stile del prefisso.
Nota
Analisi di flusso di Azure non supporta il registro schemi per i formati di dati Protobuf (Protocol Buffer).
Procedura per configurare un processo di Analisi di flusso
Per configurare il processo di Analisi di flusso per deserializzare gli eventi in Protobuf:
Dopo aver creato il processo di Analisi di flusso, selezionare Input.
Selezionare Aggiungi input e quindi selezionare l'input da configurare per aprire il riquadro per la configurazione di input.
Selezionare Formato di serializzazione eventi per visualizzare un elenco a discesa e quindi selezionare Protobuf.
Completare la configurazione usando le indicazioni seguenti:
Nome proprietà Descrizione File di definizione Protobuf File che specifica la struttura e i tipi di dati degli eventi Protobuf Tipo di messaggio Tipo di messaggio da deserializzare Stile prefisso Impostazione che determina per quanto tempo un messaggio deve deserializzare correttamente gli eventi Protobuf
Per altre informazioni sui tipi di dati Protobuf, vedere la documentazione ufficiale relativa ai buffer del protocollo.
Limiti
Il deserializzatore Protobuf accetta un solo file di definizione Protobuf alla volta. Le importazioni nei file di definizione Protobuf personalizzate non sono supportate. Ad esempio:
Questo file di definizione Protobuf fa riferimento a un altro file di definizione Protobuf nelle importazioni. Poiché il deserializzatore Protobuf avrebbe solo il file di definizione Protobuf corrente e non sa quale carseat.proto è, non sarebbe in grado di deserializzare correttamente.
Quando un file di definizione Protobuf contiene uno spazio dei nomi o un pacchetto, il tipo di messaggio deve includerlo. Ad esempio:
Nel deserializzatore Protobuf nel portale, il tipo di messaggio deve essere
Namespacetest.Volunteer
invece del solitoVolunteer
.Se il pacchetto o lo spazio dei nomi originale è tutto maiuscolo o minuscolo, il tipo di messaggio deve includerlo con il primo carattere del pacchetto o dello spazio dei nomi in lettere maiuscole. Ad esempio, se lo spazio dei nomi è
nameSpaceTest
, usarenameSpaceTest.Volunteer
. Questa regola si applica a un tipo di messaggio senza uno spazio dei nomi o un pacchetto.È necessario specificare il messaggio nel file di definizione protobuf senza la
Optional
parola chiave . In Proto 3 tutti i campi sono facoltativi. Ad esempio:Questo file di definizione Protobuf mostra un messaggio con
Optional
parola chiave. Per deserializzare correttamente, è necessario rimuovere la parola chiave :Quando si inviano messaggi serializzati tramite
google.protobuf
, il tipo di prefisso deve essere impostato subase128
perché è il tipo più compatibile con più tipi.I messaggi di servizio non sono supportati nei deserializzatori Protobuf. Il processo genera un'eccezione se si tenta di usare un messaggio di servizio. Ad esempio:
Questi tipi di dati non sono supportati:
Any
-
One of
(correlati alle enumerazioni) Durations
Struct
-
Field Mask
(non supportato da protobuf-net) List Value
Value
Null Value
Empty
Nota
Per assistenza diretta sull'uso del deserializzatore Protobuf, inviare un messaggio di posta elettronica a askasa@microsoft.com.