Övervaka och optimera lokala datagatewayprestanda
Övervakning av gatewayprestanda (offentlig förhandsversion)
För att övervaka prestanda har gatewayadministratörer traditionellt varit beroende av att manuellt övervaka prestandaräknare via verktyget Prestandaövervakare i Windows. Vi erbjuder nu ytterligare frågeloggning och en PBI-mallfil för gatewayprestanda för att visualisera resultatet. Den här funktionen ger nya insikter om gatewayanvändning. Du kan använda den för att felsöka långsamma frågor.
Kommentar
Den här funktionen är för närvarande endast tillgänglig för den lokala datagatewayen i standardläget. Det är inte tillgängligt för personligt läge.
Kommentar
Gatewaydiagnostik samlar inte in diagnostik som är direkt relaterad till den (virtuella) datorn och dess nätverk, till exempel bandbredd eller svarstid. Den här diagnostiken kan dock påverka gatewayens prestanda. Du kan använda verktyg för resursövervakning för att övervaka datorn.
Prestandaloggning
Den här funktionen är nu aktiverad som standard.
Kommentar
- För närvarande missas ibland frågor från premiumkapacitet till gatewayen i den här loggningen. Vi arbetar aktivt med att åtgärda det här problemet.
- För närvarande loggas inte sidnumrerade rapportfrågor i Power BI med det här verktyget.
Konfigurera prestandaloggning
Det finns andra värden i konfigurationsfilen C:\Program Files\On-premises data gateway\Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config
som du kan uppdatera efter behov:
- ReportFilePath: Avgör sökvägen där de fyra loggfilerna lagras. Som standard är den här sökvägen antingen \Users\PBIEgwService\AppData\Local\Microsoft\On-premises data gateway\Report eller \Windows\ServiceProfiles\PBIEgwService\AppData\Local\Microsoft\On-premises data gateway\Report. Sökvägen beror på operativsystemversionen. Om du använder ett annat tjänstkonto för gatewayen än PBIEgwService ersätter du den här delen av sökvägen med namnet på tjänstkontot.
- ReportFileCount: Avgör antalet loggfiler av varje typ som ska behållas. Standardvärdet är 10.
- ReportFileSizeInBytes: Avgör storleken på filen som ska underhållas. Standardvärdet är 104 857 600.
- QueryExecutionAggregationTimeInMinutes: Avgör hur många minuter frågekörningsinformationen aggregeras för. Standardvärdet är 5.
- SystemCounterAggregationTimeInMinutes: Avgör hur många minuter systemräknaren aggregeras för. Standardvärdet är 5.
När du har ändrat konfigurationsfilen startar du om gatewayen för att dessa konfigurationsvärden ska börja gälla. Rapportfilerna genereras nu på den plats som du angav för ReportFilePath.
Kommentar
Det kan ta upp till 10 minuter plus den tid som angetts för QueryExecutionAggregationTimeInMinutes i konfigurationsfilen tills filerna börjar visas i mappen.
Förstå prestandaloggar
När du aktiverar den här funktionen skapas fyra nya loggfiler:
- Frågekörningsrapporten
- Startrapporten för frågan
- Sammansättningsrapport för frågekörning
- Rapporten System Counter Aggregation
Frågekörningsrapporten innehåller detaljerad information om frågekörning. Följande attribut samlas in.
Attribut | beskrivning |
---|---|
GatewayObjectId | Unik identifierare för gatewayen. |
RequestId | Unik identifierare för en gatewaybegäran. Det kan vara samma för flera frågor. |
DataSource | Innehåller både datakällans typ och datakälla. |
QueryTrackingId | Unik identifierare för en fråga. Det kan dock upprepas om en fråga misslyckas och görs ett nytt försök. |
QueryExecutionEndTimeUTC | Tid då frågekörningen slutfördes. |
QueryExecutionDuration (ms) | Varaktighet för en frågekörning. |
QueryType | Typ av fråga. Frågan som skickas kan till exempel vara en Power BI-uppdatering eller DirectQuery. Eller så kan det vara frågor från Power Apps och Power Automate. |
DataProcessingEndTimeUTC | Tid då databearbetningsaktiviteter som buffring, datahämtning, komprimering och databearbetning har slutförts. |
DataProcessingDuration (ms) | Varaktighet för databearbetningsaktiviteter som buffring, datahämtning, komprimering och databearbetning. |
Framgång | Anger om frågan lyckades eller misslyckades. |
ErrorMessage | Om frågan misslyckades anger du felmeddelandet. |
SpoolingDiskWritingDuration (ms) | Anger hur lång tid gatewayen har för att skriva alla data till disken |
SpoolingDiskReadingDuration (ms) | Anger hur lång tid gatewayen har för att läsa alla data till disken |
SpoolingTotalDataSize (byte) | Storlek(komprimerad) för de data som skrivs till/läser från disk |
DataReadingAndSerializationDuration (ms) | Anger hur lång tid gatewayen tar att läsa data från datakällan och serialisera dem till paket. |
DiskRead (byte/s) | Anger byte som lästs av gatewayen per sekund. DiskRead(byte/sek) = SpoolingTotalDataSize/SpoolingDiskReadingDuration |
DiskWrite (byte/s) | Anger byte som skrivits av gatewayen per sekund. DiskWrite(byte/sek) = SpoolingTotalDataSize/SpoolingDiskWritingDuration |
Frågestartrapporten innehåller frågan och frågans starttid. Följande attribut samlas in.
Attribut | beskrivning |
---|---|
GatewayObjectId | Unik identifierare för gatewayen. |
RequestId | Unik identifierare för en gatewaybegäran. Det kan vara samma för flera frågor. |
DataSource | Innehåller både datakällans typ och datakälla. |
QueryTrackingId | Unik identifierare för en fråga. Det kan dock upprepas om en fråga misslyckas och görs ett nytt försök. |
QueryExecutionStartTimeUTC | Tid då frågekörningen startade. |
QueryType | Typ av fråga. Frågan som skickas kan till exempel vara en Power BI-uppdatering eller DirectQuery. Eller så kan det vara frågor från Power Apps och Power Automate. |
QueryText | Slutför frågan som kodas med base64. |
EvaluationContext | Innehåller artifactId (dvs. datasetid för semantiska modeller, dataflowsId osv.) tillsammans med ytterligare spårnings-ID:n beroende på artefakten. Observera att det här fältet endast fylls i för arbetsbelastningar som stöds i Fabric, Power Platform, Azure Analysis Services och vissa anslutningsappar i Azure Logic Apps. Dessa inkluderar: Semantiska modeller, Dataflöde Gen2 och Power Platform-dataflöden. Den innehåller även Azure Logic Apps-arbetsbelastningar för Mashup Query-, HTTP- och File Azure-anslutningsappar. Värdet innehåller olika spårnings-ID:t beroende på vilken arbetsbelastning som används. Power BI och Fabric Dataflows Gen 1 och Power BI Sidnumrerade rapporter stöds inte. |
Aggregeringsrapporten för frågekörning innehåller frågeinformation aggregerad till ett tidsintervall av GatewayObjectId, DataSource, Success och QueryType. Standardvärdet är 5 minuter, men du kan justera det. Följande attribut samlas in.
Attribut | beskrivning |
---|---|
GatewayObjectId | Unik identifierare för gatewayen. |
AggregationStartTimeUTC | Start av det tidsfönster för vilket frågeattribut aggregerades. |
AggregationEndTimeUTC | Slutet av det tidsfönster för vilket frågeattribut aggregerades. |
DataSource | Innehåller både datakällans typ och datakälla. |
Framgång | Anger om frågan lyckades eller misslyckades. |
AverageQueryExecutionDuration (ms) | Genomsnittlig frågekörningstid för aggregeringstidsfönstret. |
MaxQueryExecutionDuration (ms) | Maximal frågekörningstid för aggregeringstidsfönstret. |
MinQueryExecutionDuration (ms) | Minsta frågekörningstid för aggregeringstidsfönstret. |
QueryType | Typ av fråga. Frågan som skickas kan till exempel vara en Power BI-uppdatering eller DirectQuery. Eller så kan det vara frågor från Power Apps och Power Automate. |
AverageDataProcessingDuration (ms) | Genomsnittlig tid för databearbetningsaktiviteter som buffring, datahämtning, komprimering och databearbetning för aggregeringstidsfönstret. |
MaxDataProcessingDuration (ms) | Maximal tid för databearbetningsaktiviteter som buffring, datahämtning, komprimering och databearbetning för aggregeringstidsfönstret. |
MinDataProcessingDuration (ms) | Minsta tid för databearbetningsaktiviteter som buffring, datahämtning, komprimering och databearbetning för aggregeringstidsfönstret. |
Antal | Antal frågor. |
Rapporten System Counter Aggregation innehåller systemräknarvärden aggregerade till ett tidsintervall. Standardvärdet är 5 minuter, men du kan justera det. Följande attribut samlas in.
Attribut | beskrivning |
---|---|
GatewayObjectId | Unik identifierare för gatewayen. |
AggregationStartTimeUTC | Start av tidsfönstret för systemräknarna som aggregerades. |
AggregationEndTimeUTC | Slutet av tidsfönstret för systemräknarna som aggregerades. |
CounterName | Systemräknare gäller var och en för en server som är värd för en gatewaynod och inkluderar: • SystemCPUPercent: CPU som används på servern som en procentandel av den totala tillgängliga processorn. • SystemMEMUsedPercent: Minne som används på servern som en procentandel av det totala tillgängliga minnet. • GatewayCPUPercent: Summan av den procentandel cpu som används av gatewayprocessen på varje kärna. Om du vill få procentandelen av processorn som används på servern delar du GatewayCPUPercent med antalet kärnor. • GatewayMEMKb: Summan av det totala minnet i kilobyte som används av gatewayprocessen. |
Max | Maximalt värde för systemräknaren för aggregeringstidsfönstret. |
Min | Minsta värde för systemräknaren för aggregeringstidsfönstret. |
Medel | Genomsnittligt värde för systemräknaren för aggregeringstidsfönstret. |
Visualisera gatewayprestanda
Nu kan du visualisera de data som finns i loggfilerna.
Ladda ned PBI-mallen gatewayprestanda och öppna den med hjälp av Power BI Desktop.
I dialogrutan som öppnas kontrollerar du att mappsökvägen matchar värdet i ReportFilePath.
Välj Läs in och mallfilen börjar läsa in data från dina loggfiler. Alla visuella objekt fylls i med hjälp av data i rapporterna.
Du kan också spara den här filen som en PBIX och publicera den till din tjänst för automatiska uppdateringar. Mer information finns i Publicera semantiska modeller och rapporter från Power BI Desktop.
Du kan också anpassa den här mallfilen efter dina behov. Mer information om Power BI-mallar finns i det här blogginlägget från Microsoft Power BI.
Övervaka lagring av spool
Som standard finns spoollagring för gatewayen på C:\Users\PBIEgwService\AppData\Local\Microsoft\On-premises data gateway\Spooler. Se till att övervaka den här platsen för att säkerställa att det finns tillräckligt med ledigt diskutrymme. Mer information: Gateway-buffringsdata
Långsamma frågor
Långvariga frågor kan kräva ytterligare ändringar i datakällan eller ytterligare optimering av själva frågan. Detta kan vara antingen för Power BI-uppdateringar eller för direkta databasfrågor, till exempel Power BI DirectQuery, Power Apps eller Azure Logic Apps.
Som standard utför gatewayen grundläggande loggning. Om du undersöker långsamma frågor kan du, förutom att använda funktionen för prestandaövervakning, tillfälligt aktivera Ytterligare loggning för att samla in ytterligare logginformation, inklusive kombinationsmotorloggar, frågesträngar och utförlig spårning på detaljnivå. Dessa loggar skrivs till samma plats som dina vanliga gatewayloggar. Det gör du genom att välja Diagnostik>Ytterligare loggning i den lokala datagatewayappen.
Om du aktiverar den här inställningen ökar loggstorleken avsevärt, baserat på gatewayanvändning. Vi rekommenderar att du inaktiverar ytterligare loggning när du har granskat loggarna. Vi rekommenderar inte att du lämnar den här inställningen aktiverad under normal gatewayanvändning.
Optimera prestanda genom att strömma data
Som standard buffrar den lokala datagatewayen data innan de returneras till den semantiska modellen, vilket kan orsaka långsammare prestanda under datainläsnings- och uppdateringsåtgärder. Standardbeteendet kan åsidosättas.
I filen C:\Program Files\On-Premises data gateway\Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config anger du inställningen StreamBeforeRequestCompletes till True och sparar sedan.
<setting name="StreamBeforeRequestCompletes" serializeAs="String"> <value>True</value> </setting>
Starta om gatewayen i Tjänstinställningar för >Lokal datagateway.
Kommentar
Aktivering av StreamBeforeRequestCompletes kan orsaka problem med frågetillförlitlighet när du använder långsamma datakällor eller med instabila/begränsade nätverksanslutningar.
Optimera prestanda genom att undanta specifika mappar från antivirusgenomsökning
För att undvika potentiella prestandaeffekter kan vissa mappar undantas från antivirusgenomsökning när du använder ett antivirusprogram på filnivå på servern där en lokal datagateway är installerad. Om dessa mappar inte utesluts kan du observera prestandapåverkan och potentiellt andra oväntade beteenden eftersom dessa mappar tar emot en stor mängd skrivåtgärder och är i grunden datapipelines för den lokala datagatewayen.
Mappar som kan behöva undantas från antivirusgenomsökning på den lokala datagatewayservern
Kommentar
Följande platshållare Drive representerar bokstaven på den enhet där den lokala datagatewayen är installerad. Vanligtvis är drivrutinsbrevet C. Följande platshållare ServiceAccount representerar tjänstkontot som kör den lokala datagatewayen. Standardkontot är PBIEgwService.
- Loggningskatalog: Enhet:\Windows\ServiceProfiles\ ServiceAccount \AppData\Local\Microsoft\Lokal datagateway
- Spool Storage-katalog: Enhet:\Windows\ServiceProfiles\ ServiceAccount \AppData\Local\Microsoft\On-premises data gateway\Spooler