Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
Van toepassing op: SQL Server 2016 (13.x) en latere versies
van Azure SQL Managed Instance
Meer informatie over het gebruik van uitgebreide gebeurtenissen voor het bewaken en oplossen van problemen met betrekking tot sql Server Machine Learning Services, SQL Server Launchpad en externe scripts voor Python- of R-taken.
Uitgebreide gebeurtenissen voor SQL Server Machine Learning Services
Als u een lijst met gebeurtenissen met betrekking tot SQL Server Machine Learning Services wilt weergeven, voert u de volgende query uit in SQL Server Management Studio (SSMS), de MSSQL-extensie voor Visual Studio Code, sqlcmd of uw favoriete hulpprogramma voor T-SQL-query's.
SELECT o.name AS event_name, o.description
FROM sys.dm_xe_objects o
JOIN sys.dm_xe_packages p
ON o.package_guid = p.guid
WHERE o.object_type = 'event'
AND p.name = 'SQLSatellite';
Zie Hulpprogramma's voor uitgebreide gebeurtenissen voor meer informatie over het gebruik van uitgebreide gebeurtenissen.
Aanvullende gebeurtenissen die specifiek zijn voor Machine Learning Services
Er zijn extra uitgebreide gebeurtenissen beschikbaar voor onderdelen die zijn gerelateerd aan en worden gebruikt door SQL Server Machine Learning Services, zoals het SQL Server Launchpad en BXLServer, en het satellietproces waarmee de Python- of R-runtime wordt gestart. Deze extra uitgebreide gebeurtenissen worden geactiveerd vanuit de externe processen; daarom moeten ze worden vastgelegd met behulp van een extern hulpprogramma.
Zie de sectie Gebeurtenissen verzamelen van externe processen voor meer informatie over hoe u dit doet.
Tabel met uitgebreide gebeurtenissen
| Event | Description | Opmerkingen |
|---|---|---|
| verbinding_accepteren | Treedt op wanneer een nieuwe verbinding wordt geaccepteerd. Deze gebeurtenis dient om alle verbindingspogingen te registreren. | |
| mislukt_starten | Het starten is mislukt. | Geeft een fout aan. |
| satelliet_onderbreek_verbinding | Verbindingsrecord afbreken | |
| satelliet_afbreken_ontvangen | Wordt geactiveerd wanneer een afbrekingsbericht wordt ontvangen via een satellietverbinding. | |
| satelliet_abort_verzonden | Wordt geactiveerd wanneer een afbreekbericht wordt verzonden via een satellietverbinding. | |
| satelliet_authenticatie_voltooiing | Wordt geactiveerd wanneer verificatie is voltooid voor een verbinding via TCP of named pipe. | |
| voltooiing van satellietautorisatie | Wordt geactiveerd wanneer de autorisatie voor een verbinding via TCP of Named Pipe is voltooid. | |
| sateliet_cleanup | Brandt wanneer satellietopruiming aanroept. | Alleen geactiveerd vanuit extern proces. Zie de instructies voor het verzamelen van gebeurtenissen van externe processen. |
| satelliet_data_chunk_verzonden | Wordt geactiveerd wanneer de satellietverbinding klaar is met het verzenden van één gegevenssegment. | De gebeurtenis rapporteert het aantal verzonden rijen, het aantal kolommen, het aantal gebruikte SNI-pakketten en de tijd die is verstreken in milliseconden tijdens het verzenden van het segment. De informatie kan u helpen begrijpen hoeveel tijd er wordt besteed aan het doorgeven van verschillende typen gegevens en hoeveel pakketten worden gebruikt. |
| satellietgegevensontvangstvoltooiing | Wordt geactiveerd wanneer alle vereiste gegevens door een query worden ontvangen via de satellietverbinding. | Alleen geactiveerd vanuit extern proces. Zie de instructies voor het verzamelen van gebeurtenissen van externe processen. |
| voltooing satellietgegevensverzending | Wordt geactiveerd wanneer alle vereiste gegevens voor een sessie via de satellietverbinding worden verzonden. | |
| satellietgegevens_verzenden_start | Wordt geactiveerd wanneer de gegevensoverdracht wordt gestart. | Gegevensoverdracht begint net voordat het eerste gegevenssegment wordt verzonden. |
| satellietfout | Wordt gebruikt voor het traceren van sql-satellietfout | |
| satelliet_ongeldige_formaat_bericht | De grootte van het bericht is ongeldig | |
| samengevoegde_satellietbericht | Wordt gebruikt voor het traceren van berichtensamenvoeging op de netwerklaag | |
| satelliet_bericht_ringbuffer_record | bufferrecord voor berichtring | |
| satellietberichtoverzicht | samenvattingsinformatie over berichten | |
| satelliet_bericht_versie_conlicterend | Het versieveld van het bericht komt niet overeen | |
| satellietberichten | Wordt gebruikt voor het traceren van berichtengebeurtenis (bind, unbind, enzovoort) | |
| satelliet_deels_bericht | Wordt gebruikt voor het traceren van gedeeltelijke berichten op de netwerklaag | |
| satelliet_schema_ontvangen | Wordt geactiveerd wanneer het schemabericht wordt ontvangen en gelezen door SQL. | |
| satellietschema_verzonden | Wordt geactiveerd wanneer een schemabericht door de satelliet wordt verzonden. | Alleen geactiveerd vanuit extern proces. Zie de instructies voor het verzamelen van gebeurtenissen van externe processen. |
| satellietdienst_start_geplaatst | Wordt geactiveerd wanneer het startbericht van de service wordt geplaatst op Launchpad. | Dit vertelt Launchpad om het externe proces te starten, en bevat een ID voor de nieuwe sessie. |
| satelliet_onverwacht_bericht_ontvangen | Wordt geactiveerd wanneer een onverwacht bericht wordt ontvangen. | Geeft een fout aan. |
| stack_trace | Treedt op wanneer een geheugendump van het proces wordt aangevraagd. | Geeft een fout aan. |
| trace_event | Wordt gebruikt voor traceringsdoeleinden | Deze gebeurtenissen kunnen SQL Server-, Launchpad- en externe procestraceringsberichten bevatten. Dit omvat uitvoer naar stdout en stderr van R. |
| launchpad_launch_start | Wanneer het lanceerplatform begint met het lanceren van een satelliet, wordt het geactiveerd. | Alleen geactiveerd vanuit Launchpad. Zie de instructies voor het verzamelen van gebeurtenissen van launchpad.exe. |
| platform_herstart_verzonden | Brandt wanneer de lanceerbasis de satelliet heeft gelanceerd en een hervattingsbericht naar SQL Server heeft verzonden. | Alleen geactiveerd vanuit Launchpad. Zie de instructies voor het verzamelen van gebeurtenissen van launchpad.exe. |
| satelliet_data_chunk_verzonden | Wordt geactiveerd wanneer de satellietverbinding klaar is met het verzenden van één gegevenssegment. | Bevat informatie over het aantal kolommen, het aantal rijen, het aantal pakketten en de tijd die is verstreken voor het verzenden van het segment. |
| satellite_sessie-ID_niet-overeenkomende | De sessie-id van het bericht is niet zoals verwacht |
Gebeurtenissen verzamelen van externe processen
SQL Server Machine Learning Services start enkele services die buiten het SQL Server-proces worden uitgevoerd. Als u gebeurtenissen met betrekking tot deze externe processen wilt vastleggen, moet u een configuratiebestand voor het traceren van gebeurtenissen maken en het bestand in dezelfde map plaatsen als het uitvoerbare bestand voor het proces.
Belangrijk
Vanaf SQL Server 2019 is het isolatiemechanisme gewijzigd. Daarom moet u de juiste machtigingen verlenen aan de map waarin het configuratiebestand voor het traceren van gebeurtenissen wordt opgeslagen. Zie de sectie Bestandsmachtigingen in SQL Server 2019 op Windows voor meer informatie over het instellen van deze machtigingen: Isolatiewijzigingen voor Machine Learning Services.
SQL Server Launchpad
Als u gebeurtenissen met betrekking tot Launchpad wilt vastleggen, plaatst u het .xml bestand in de map Binn voor het SQL Server-exemplaar. In een standaardinstallatie is dit:
C:\Program Files\Microsoft SQL Server\MSSQL_version_number.MSSQLSERVER\MSSQL\Binn.BXLServer is het satellietproces dat ondersteuning biedt voor SQL-uitbreidbaarheid met externe scripttalen, zoals R of Python. Er wordt een afzonderlijk exemplaar van BxlServer gestart voor elk exemplaar van een externe taal.
Als u gebeurtenissen met betrekking tot BXLServer wilt vastleggen, plaatst u het .xml-bestand in de installatiemap van R of Python. In een standaardinstallatie is dit:
R:
C:\Program Files\Microsoft SQL Server\MSSQL_version_number.MSSQLSERVER\R_SERVICES\library\RevoScaleR\rxLibs\x64.Python:
C:\Program Files\Microsoft SQL Server\MSSQL_version_number.MSSQLSERVER\PYTHON_SERVICES\Lib\site-packages\revoscalepy\rxLibs.
Het configuratiebestand moet dezelfde naam hebben als het uitvoerbare bestand, met behulp van de indeling [naam].xevents.xml". Met andere woorden: de bestanden moeten als volgt worden benoemd:
Launchpad.xevents.xmlbxlserver.xevents.xml
Het configuratiebestand zelf heeft de volgende indeling:
<?xml version="1.0" encoding="utf-8"?>
<event_sessions>
<event_session name="[session name]" maxMemory="1" dispatchLatency="1" MaxDispatchLatency="2 SECONDS">
<description owner="you">Xevent for launchpad or bxl server.</description>
<event package="SQLSatellite" name="[XEvent Name 1]" />
<event package="SQLSatellite" name="[XEvent Name 2]" />
<target package="package0" name="event_file">
<parameter name="filename" value="[SessionName].xel" />
<parameter name="max_file_size" value="10" />
<parameter name="max_rollover_files" value="10" />
</target>
</event_session>
</event_sessions>
- Als u de tracering wilt configureren, bewerkt u de tijdelijke aanduiding voor de sessienaam , de tijdelijke aanduiding voor de bestandsnaam (
[SessionName].xel) en de namen van de gebeurtenissen die u wilt vastleggen, bijvoorbeeld[XEvent Name 1],[XEvent Name 1]). - Een willekeurig aantal gebeurtenispakkettags kan worden weergegeven en wordt verzameld zolang het naamkenmerk juist is.
Voorbeeld: Launchpad-gebeurtenissen vastleggen
In het volgende voorbeeld ziet u de definitie van een gebeurtenistracering voor de Launchpad-service:
<?xml version="1.0" encoding="utf-8"?>
<event_sessions>
<event_session name="sqlsatelliteut" maxMemory="1" dispatchLatency="1" MaxDispatchLatency="2 SECONDS">
<description owner="hay">Xevent for sql tdd runner.</description>
<event package="SQLSatellite" name="launchpad_launch_start" />
<event package="SQLSatellite" name="launchpad_resume_sent" />
<target package="package0" name="event_file">
<parameter name="filename" value="launchpad_session.xel" />
<parameter name="max_file_size" value="10" />
<parameter name="max_rollover_files" value="10" />
</target>
</event_session>
</event_sessions>
- Plaats het .xml bestand in de binn-map voor het SQL Server-exemplaar.
- Dit bestand moet de naam
Launchpad.xevents.xmlhebben.
Voorbeeld: BXLServer-gebeurtenissen vastleggen
In het volgende voorbeeld ziet u de definitie van een gebeurtenistracering voor het uitvoerbare BXLServer-bestand.
<?xml version="1.0" encoding="utf-8"?>
<event_sessions>
<event_session name="sqlsatelliteut" maxMemory="1" dispatchLatency="1" MaxDispatchLatency="2 SECONDS">
<description owner="hay">Xevent for sql tdd runner.</description>
<event package="SQLSatellite" name="satellite_abort_received" />
<event package="SQLSatellite" name="satellite_authentication_completion" />
<event package="SQLSatellite" name="satellite_cleanup" />
<event package="SQLSatellite" name="satellite_data_receive_completion" />
<event package="SQLSatellite" name="satellite_data_send_completion" />
<event package="SQLSatellite" name="satellite_data_send_start" />
<event package="SQLSatellite" name="satellite_schema_sent" />
<event package="SQLSatellite" name="satellite_unexpected_message_received" />
<event package="SQLSatellite" name="satellite_data_chunk_sent" />
<target package="package0" name="event_file">
<parameter name="filename" value="satellite_session.xel" />
<parameter name="max_file_size" value="10" />
<parameter name="max_rollover_files" value="10" />
</target>
</event_session>
</event_sessions>
- Plaats het .xml bestand in dezelfde map als het uitvoerbare BXLServer-bestand.
- Dit bestand moet de naam
bxlserver.xevents.xmlhebben.