Debug guidato dai dati mediante il diagramma di processoData-driven debugging by using the job diagram

Il diagramma di processo nel pannello Monitoraggio del portale di Azure consente di visualizzare la pipeline di processo.The job diagram on the Monitoring blade in the Azure portal can help you visualize your job pipeline. Mostra gli input, gli output e i passaggi delle query.It shows inputs, outputs, and query steps. È possibile usare il diagramma di processo per esaminare le metriche per ogni passaggio, al fine di isolare più rapidamente l'origine di un problema durante la sua risoluzione.You can use the job diagram to examine the metrics for each step, to more quickly isolate the source of a problem when you troubleshoot issues.

Uso del diagramma di processoUsing the job diagram

Nel portale di Azure, durante un processo di Analisi di flusso, sotto SUPPORTO E RISOLUZIONE DEI PROBLEMI selezionare Diagramma del processo:In the Azure portal, while in a Stream Analytics job, under SUPPORT + TROUBLESHOOTING, select Job diagram:

Diagramma di processo con metriche - posizione

Selezionare ciascun passaggio della query per vedere la sezione corrispondente nel riquadro di modifica query.Select each query step to see the corresponding section in a query editing pane. Viene visualizzato il grafico della metrica relativo al passaggio in un riquadro inferiore della pagina.A metric chart for the step is displayed in a lower pane on the page.

Diagramma di processo con metriche - processo di base

Per vedere le partizioni dell'input di Hub eventi di Azure, selezionare ...To see the partitions of the Azure Event Hubs input, select . . . Si apre il menu di scelta rapida.A context menu appears. È possibile vedere anche la fusione dell'input.You also can see the input merger.

Diagramma di processo con metriche - espandere la partizione

Per vedere il grafico delle metrica per una singola partizione, selezionare il nodo della partizione.To see the metric chart for only a single partition, select the partition node. Le metriche sono visualizzate nella parte inferiore della pagina.The metrics are shown at the bottom of the page.

Diagramma di processo con metriche - altre metriche

Per vedere il grafico delle metriche per una fusione, selezionare il nodo della fusione.To see the metrics chart for a merger, select the merger node. Il diagramma seguente mostra che nessun evento è stato eliminato o regolato.The following chart shows that no events were dropped or adjusted.

Diagramma di processo con metriche - griglia

Per vedere i dettagli del valore e ora delle metriche, puntare sul grafico.To see the details of the metric value and time, point to the chart.

Diagramma di processo con metriche - puntare con il mouse

Risolvere i problemi mediante le metricheTroubleshoot by using metrics

La metrica QueryLastProcessedTime indica quando un determinato passaggio ha ricevuto dati.The QueryLastProcessedTime metric indicates when a specific step received data. Osservando la topologia, è possibile procedere a ritroso dal processore di output per vedere quale passaggio non riceve dati.By looking at the topology, you can work backward from the output processor to see which step is not receiving data. Se un passaggio non riceve dati, andare al passaggio di query subito prima.If a step is not getting data, go to the query step just before it. Controllare se il passaggio di query precedente ha un intervallo di tempo e se è trascorso un tempo sufficiente perché possa emettere dati.Check whether the preceding query step has a time window, and if enough time has passed for it to output data. (Notare che gli intervalli di tempo vengono bloccati all'ora).(Note that time windows are snapped to the hour.)

Se il passaggio di query precedente è un processore di input, usare le metriche di input per rispondere alle seguenti domande mirate.If the preceding query step is an input processor, use the input metrics to help answer the following targeted questions. Esse consentono di determinare se un processo sta ricevendo dati dalle sue origini di input.They can help you determine whether a job is getting data from its input sources. Se viene eseguito il partizionamento della query, esaminare ogni partizione.If the query is partitioned, examine each partition.

Quanti dati vengono letti?How much data is being read?

  • InputEventsSourcesTotal è il numero di unità di dati lette.InputEventsSourcesTotal is the number of data units read. Ad esempio il numero di BLOB.For example, the number of blobs.
  • InputEventsTotal è il numero di eventi letti.InputEventsTotal is the number of events read. Questa metrica è disponibile per ogni partizione.This metric is available per partition.
  • InputEventsInBytesTotal è il numero di byte letti.InputEventsInBytesTotal is the number of bytes read.
  • InputEventsLastArrivalTime viene aggiornato con l'ora di accodamento di ogni evento ricevuto.InputEventsLastArrivalTime is updated with every received event's enqueued time.

L'ora viene spostata in avanti?Is time moving forward? Se vengono letti eventi reali, potrebbe non essere generata la punteggiatura.If actual events are read, punctuation might not be issued.

  • InputEventsLastPunctuationTime specifica quando è stata generata la punteggiatura per indicare lo spostamento in avanti dell'ora.InputEventsLastPunctuationTime indicates when a punctuation was issued to keep time moving forward. Se la punteggiatura non viene generata, il flusso di dati può bloccarsi.If punctuation is not issued, data flow can get blocked.

Sono presenti errori nell'input?Are there any errors in the input?

  • InputEventsEventDataNullTotal è un conteggio degli eventi con dati Null.InputEventsEventDataNullTotal is a count of events that have null data.
  • InputEventsSerializerErrorsTotal è un conteggio degli eventi che non è stato possibile deserializzare correttamente.InputEventsSerializerErrorsTotal is a count of events that could not be deserialized correctly.
  • InputEventsDegradedTotal è un conteggio degli eventi che sono stati interessati da un problema diverso dalla deserializzazione.InputEventsDegradedTotal is a count of events that had an issue other than with deserialization.

Vengono eliminati o modificati eventi?Are events being dropped or adjusted?

  • InputEventsEarlyTotal è il numero degli eventi con un timestamp applicazione precedente il limite massimo.InputEventsEarlyTotal is the number of events that have an application timestamp before the high watermark.
  • InputEventsLateTotal è il numero degli eventi con un timestamp applicazione successivo al limite massimo.InputEventsLateTotal is the number of events that have an application timestamp after the high watermark.
  • InputEventsDroppedBeforeApplicationStartTimeTotal è il numero degli eventi eliminati prima dell'ora di inizio del processo.InputEventsDroppedBeforeApplicationStartTimeTotal is the number events dropped before the job start time.

Si sta verificando un ritardo nella lettura dei dati?Are we falling behind in reading data?

  • InputEventsSourcesBackloggedTotal indica quanti altri messaggi devono essere letti per gli input di Hub eventi e dell'hub IoT di Azure.InputEventsSourcesBackloggedTotal tells you how many more messages need to be read for Event Hubs and Azure IoT Hub inputs.

Ottenere aiutoGet help

Per ottenere assistenza aggiuntiva, provare ad accedere al forum di Analisi di flusso di Azure.For additional assistance, try our Azure Stream Analytics forum.

Passaggi successiviNext steps