Problemen met invoerverbindingen oplossen
In dit artikel worden veelvoorkomende problemen beschreven met Azure Stream Analytics invoer verbindingen, het oplossen van invoer problemen en het oplossen van de problemen. Voor een groot aantal probleemoplossings stappen moeten resource logboeken zijn ingeschakeld voor uw Stream Analytics-taak. Als u geen resource Logboeken hebt ingeschakeld, raadpleegt u problemen oplossen Azure stream Analytics met behulp van resource logboeken.
Invoer gebeurtenissen niet ontvangen door taak
De connectiviteit voor invoer en uitvoer testen. Controleer de verbinding met de invoer en uitvoer met behulp van de knop verbinding testen voor elke invoer en uitvoer.
Controleer de ingevoerde gegevens.
Gebruik de knop voorbeeld gegevens voor elke invoer. Down load de voorbeeld gegevens van de invoer.
Inspecteer de voorbeeld gegevens om inzicht te krijgen in het schema en de gegevens typen.
Controleer de metrische gegevens van de Event hub om er zeker van te zijn dat er gebeurtenissen worden verzonden. Metrische bericht waarden moeten groter zijn dan nul als Event Hubs berichten ontvangt.
Zorg ervoor dat u een tijds bereik hebt geselecteerd in de invoer voorbeeld. Kies tijds bereik selecteren en voer een voorbeeld duur in voordat u uw query test.
Ongeldige invoergebeurtenissen veroorzaken deserialisatiefouten
Problemen met deserialisatie worden veroorzaakt wanneer de invoer stroom van uw Stream Analytics-taak ongeldige berichten bevat. Een verkeerd ingedeeld bericht kan bijvoorbeeld worden veroorzaakt door een ontbrekend haakje of een accolade in een JSON-object of een onjuiste time stamp notatie in het veld tijd.
Wanneer een Stream Analytics taak een onjuist gevormd bericht van een invoer ontvangt, wordt het bericht niet meer verzonden en ontvangt u een waarschuwing. Er wordt een waarschuwings symbool weer gegeven op de tegel invoer van uw stream Analytics taak. Het volgende waarschuwings symbool bestaat al zolang de taak de status wordt uitgevoerd heeft:

Resource logboeken inschakelen om de details van de fout en het bericht (Payload) te bekijken die de fout hebben veroorzaakt. Er zijn verschillende redenen waarom het deserialiseren van fouten kan optreden. Zie invoer gegevens foutenvoor meer informatie over specifieke fouten in de deserialisatie. Als resource logboeken niet zijn ingeschakeld, is er een korte melding beschikbaar in de Azure Portal.

Als de nettolading van het bericht groter is dan 32 KB of een binaire indeling heeft, voert u de CheckMalformedEvents. cs-code uit die beschikbaar is in de GitHub-voor beelden-opslag plaats. Deze code leest de partitie-ID, offset en drukt de gegevens af die zich in die offset bevinden.
De taak overschrijdt de maximum aantal ontvangers van Event hub
Een best practice voor het gebruik van Event Hubs is het gebruik van meerdere consumenten groepen voor de schaal baarheid van taken. Het aantal lezers in de Stream Analytics-taak voor een specifieke invoer is van invloed op het aantal lezers in één consumer groep. Het exacte aantal ontvangers is gebaseerd op interne implementatie Details voor de scale-out-topologie logica en wordt niet extern weer gegeven. Het aantal lezers dat kan veranderen wanneer een taak wordt gestart of tijdens taak upgrades.
De volgende fout berichten worden weer gegeven wanneer het aantal ontvangers het maximum overschrijdt. Het fout bericht bevat een lijst met bestaande verbindingen die zijn gemaakt met Event hub onder een Consumer groep. De code AzureStreamAnalytics geeft aan dat de verbindingen van de Azure streaming-service zijn.
The streaming job failed: Stream Analytics job has validation errors: Job will exceed the maximum amount of Event Hub Receivers.
The following information may be helpful in identifying the connected receivers: Exceeded the maximum number of allowed receivers per partition in a consumer group which is 5. List of connected receivers –
AzureStreamAnalytics_c4b65e4a-f572-4cfc-b4e2-cf237f43c6f0_1,
AzureStreamAnalytics_c4b65e4a-f572-4cfc-b4e2-cf237f43c6f0_1,
AzureStreamAnalytics_c4b65e4a-f572-4cfc-b4e2-cf237f43c6f0_1,
AzureStreamAnalytics_c4b65e4a-f572-4cfc-b4e2-cf237f43c6f0_1,
AzureStreamAnalytics_c4b65e4a-f572-4cfc-b4e2-cf237f43c6f0_1.
Notitie
Wanneer het aantal lezers wijzigt tijdens een taak upgrade, worden tijdelijke waarschuwingen naar audit logboeken geschreven. Stream Analytics taken worden automatisch hersteld van deze tijdelijke problemen.
Een Consumer groep toevoegen in Event Hubs
Voer de volgende stappen uit om een nieuwe consumenten groep toe te voegen in uw Event Hubs-exemplaar:
Meld u aan bij Azure Portal.
Zoek uw event hub.
Selecteer Event hubs onder de kop entities .
Selecteer de Event hub op naam.
Selecteer op de pagina Event hubs-exemplaar , onder de kop entiteiten , consumenten groepen. Er wordt een gebruikers groep met de naam $default weer gegeven.
Selecteer + consumenten groep om een nieuwe consumenten groep toe te voegen.

Wanneer u de invoer in de Stream Analytics taak hebt gemaakt om te verwijzen naar de Event hub, hebt u de Consumer groep opgegeven. $Default wordt gebruikt wanneer er geen is opgegeven. Nadat u een nieuwe consumenten groep hebt gemaakt, bewerkt u de Event hub-invoer in de Stream Analytics taak en geeft u de naam van de nieuwe consumenten groep op.
De lezers per partitie overschrijden de Event Hubs limiet
Als uw streaming-query syntaxis meerdere keren verwijst naar dezelfde invoer Event hub-bron, kan de taak engine meerdere lezers per query van diezelfde consumenten groep gebruiken. Wanneer er te veel verwijzingen naar dezelfde consumenten groep zijn, kan de taak de limiet van vijf overschrijden en een fout gegenereerd. In deze omstandigheden kunt u verder delen door meerdere invoer in meerdere consumenten groepen te gebruiken met behulp van de oplossing die in de volgende sectie wordt beschreven.
Scenario's waarin het aantal lezers per partitie de Event Hubs limiet van vijf tekens overschrijden, zijn onder andere:
Meerdere SELECT-instructies: als u meerdere SELECT-instructies gebruikt die naar dezelfde Event hub invoer verwijzen, zorgt elke SELECT-instructie ervoor dat een nieuwe ontvanger wordt gemaakt.
UNION: wanneer u een UNION gebruikt, is het mogelijk dat er meerdere invoer waarden zijn die verwijzen naar dezelfde Event hub en consumenten groep.
SELF-lid: wanneer u een SELF-KOPPELINGs bewerking gebruikt, is het mogelijk om hetzelfde Event hub meerdere keren te gebruiken.
De volgende aanbevolen procedures kunnen helpen bij het beperken van scenario's waarin het aantal lezers per partitie de Event Hubs limiet van vijf overschrijdt.
Uw query splitsen in meerdere stappen met behulp van een WITH-component
De WITH-component geeft een tijdelijke benoemde resultatenset waarnaar kan worden verwezen door een FROM-component in de query. U definieert de WITH-component in het uitvoerings bereik van één SELECT-instructie.
In plaats van deze query bijvoorbeeld:
SELECT foo
INTO output1
FROM inputEventHub
SELECT bar
INTO output2
FROM inputEventHub
…
Gebruikt u deze query:
WITH data AS (
SELECT * FROM inputEventHub
)
SELECT foo
INTO output1
FROM data
SELECT bar
INTO output2
FROM data
…
Zorg ervoor dat invoer gegevens aan verschillende consumenten groepen zijn gebonden
Voor query's waarin drie of meer invoer waarden zijn gekoppeld aan dezelfde Event Hubs consumenten groep, maakt u afzonderlijke consumenten groepen. Hiervoor moet u aanvullende Stream Analytics invoer maken.
Afzonderlijke invoer maken met verschillende consumenten groepen
U kunt afzonderlijke invoer maken met verschillende consumenten groepen voor dezelfde event hub. De volgende SAMENVOEG query is een voor beeld waarbij InputOne en InputTwo naar dezelfde event hub-bron verwijzen. Elke query kan afzonderlijke invoer hebben met verschillende consumenten groepen. De SAMENVOEG query is maar een voor beeld.
WITH
DataOne AS
(
SELECT * FROM InputOne
),
DataTwo AS
(
SELECT * FROM InputTwo
),
SELECT foo FROM DataOne
UNION
SELECT foo FROM DataTwo
De lezers per partitie overschrijden de IoT Hub limiet
Stream Analytics-taken gebruiken het ingebouwde Event hub-compatibele eind punt van IOT hub om verbinding te maken en gebeurtenissen van IOT hub te lezen. Als uw Lees bewerking per partitie de limieten van IoT Hub overschrijdt, kunt u de oplossingen voor Event hub gebruiken om deze op te lossen. U kunt een Consumer groep maken voor het ingebouwde eind punt via IoT Hub Portal-eindpunt sessie of via de IOT hub SDK.
Hulp vragen
Probeer voor meer hulp onze micro soft Q&een vraag pagina voor Azure stream Analytics.