Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Belangrijk
Azure Data Lake Analytics is op 29 februari 2024 buiten gebruik gesteld. Meer informatie vindt u in deze aankondiging.
Voor gegevensanalyse kan uw organisatie gebruikmaken van Azure Synapse Analytics- of Microsoft Fabric-.
U-SQL biedt een uitbreidbaarheidsmodel met behulp van C#. In U-SQL-scripts is het eenvoudig om C#-functies aan te roepen en analytische functies uit te voeren die sql-achtige declaratieve taal niet ondersteunt. Zie de U-SQL-programmeerhandleiding voor meer informatie over U-SQL-uitbreidbaarheid.
In de praktijk kan elke code foutopsporing nodig hebben, maar het is moeilijk om fouten op te sporen in een gedistribueerde taak met aangepaste code in de cloud met beperkte logboekbestanden. Azure Data Lake Tools voor Visual Studio biedt een functie met de naam Failed Vertex Debug, waarmee u gemakkelijker fouten kunt opsporen die optreden in uw aangepaste code. Wanneer de U-SQL-taak mislukt, behoudt de service de foutstatus en helpt het hulpprogramma u bij het downloaden van de omgeving met cloudfouten naar de lokale computer voor foutopsporing. De lokale download legt de hele cloudomgeving vast, inclusief invoergegevens en gebruikerscode.
In de volgende video ziet u de debug-functie voor mislukte vertices in Azure Data Lake Tools voor Visual Studio.
Belangrijk
Visual Studio vereist de volgende twee updates voor het gebruik van deze functie: Microsoft Visual C++ 2015 Redistributable Update 3 en de Universal C Runtime voor Windows.
Mislukte download van vertex naar lokale computer
Wanneer u een mislukte taak opent in Azure Data Lake Tools voor Visual Studio, ziet u een gele waarschuwingsbalk met gedetailleerde foutberichten op het tabblad Fout.
Selecteer Downloaden om alle vereiste resources en invoerstromen te downloaden. Als het downloaden niet is voltooid, selecteert u Opnieuw.
Selecteer Openen nadat het downloaden is voltooid om een lokale foutopsporingsomgeving te genereren. Er wordt een nieuwe oplossing voor foutopsporing geopend en als u een bestaande oplossing hebt geopend in Visual Studio, moet u deze opslaan en sluiten voordat u foutopsporing uitvoert.
De foutopsporingsomgeving configureren
Opmerking
Voordat u fouten opspoort, controleert u Common Language Runtime-uitzonderingen in het venster Uitzonderingsinstellingen (Ctrl + Alt + E).
In het nieuw gestarte Visual Studio-exemplaar kunt u de door de gebruiker gedefinieerde C#-broncode al dan niet vinden:
Broncode is opgenomen in de oplossing voor foutopsporing
Er zijn twee gevallen waarin de C#-broncode wordt vastgelegd:
De gebruikerscode wordt gedefinieerd in het code-behind-bestand (meestal genoemd
Script.usql.csin een U-SQL-project).De gebruikerscode wordt gedefinieerd in het C#-klassebibliotheekproject voor de U-SQL-toepassing en geregistreerd als assembly met foutopsporingsgegevens.
Als de broncode wordt geïmporteerd in de oplossing, kunt u de Visual Studio-hulpprogramma's voor foutopsporing (watch, variables, enzovoort) gebruiken om het probleem op te lossen:
Druk op F5 om foutopsporing te starten. De code wordt uitgevoerd totdat deze door een uitzondering wordt gestopt.
Open het broncodebestand en stel onderbrekingspunten in en druk op F5 om stapsgewijs fouten in de code op te sporen.
Broncode is niet opgenomen in de oplossing voor foutopsporing
Als de gebruikerscode niet is opgenomen in het code-behind-bestand of als u de assembly niet hebt geregistreerd met foutopsporingsgegevens, wordt de broncode niet automatisch opgenomen in de oplossing voor foutopsporing. In dit geval hebt u extra stappen nodig om uw broncode toe te voegen:
Klik met de rechtermuisknop op Oplossing VertexDebug: > Bestaand project toevoegen > ... om de broncode van de assembly te vinden en het project toe te voegen aan de oplossing voor foutopsporing.
Haal het pad van de projectmap op voor het project FailedVertexDebugHost .
Right-Click de toegevoegde eigenschappen van het assemblybroncodeproject>, selecteert u het tabblad Opbouwen links en plakt u het gekopieerde pad dat eindigt op \bin\debug als uitvoerpad>. Het uiteindelijke uitvoerpad is
<DataLakeTemp path>\fd91dd21-776e-4729-a78b-81ad85a4fba6\loiu0t1y.mfo\FailedVertexDebug\FailedVertexDebugHost\bin\Debug\.
Na deze instellingen begint u met foutopsporing met F5 en onderbrekingspunten. U kunt ook de Visual Studio-foutopsporingsprogramma's (watch, variables, enzovoort) gebruiken om het probleem op te lossen.
Opmerking
Bouw het broncodeproject van de assembly telkens opnieuw op nadat u de code hebt gewijzigd om bijgewerkte .pdb-bestanden te genereren.
De taak opnieuw indienen
Na het debuggen, als het project succesvol wordt afgerond, wordt het volgende bericht weergegeven in het uitvoervenster:
The Program 'LocalVertexHost.exe' has exited with code 0 (0x0).
De mislukte taak opnieuw indienen:
Voor projecten met code-behind oplossingen kopieert u de C#-code naar het code-behind bronbestand (meestal
Script.usql.cs).Voor taken met assembly's klikt u met de rechtermuisknop op het broncodeproject van de assembly in de oplossing voor foutopsporing en registreert u de bijgewerkte .dll assembly's in uw Azure Data Lake-catalogus.
Verzend de U-SQL-taak opnieuw.