Comando .show commands
.show commands
devuelve una tabla con comandos de administración completados. Estos comandos están disponibles para consultar durante 30 días.
Nota:
Este comando es útil para investigar problemas de rendimiento, ya que muestra los recursos consumidos por cada comando de administración. Ver ejemplos.
Permisos
Un administrador de base de datos o un monitor de base de datos pueden ver cualquier comando que se invocó en su base de datos. Otros usuarios solo pueden ver sus comandos.
Sintaxis
.show
commands
Devoluciones
La tabla de devolución tiene dos columnas con detalles de consumo de recursos de cada comando completado.
TotalCpu
- El tiempo total del reloj de CPU (modo de usuario + modo kernel) consumido por este comando.ResourceUtilization
: contiene toda la información de uso de recursos relacionada con ese comando, incluido TotalCpu.
El consumo de recursos al que se realiza el seguimiento incluye actualizaciones de datos y cualquier consulta asociada al comando de administrador actual.
Actualmente, solo algunos de los comandos de administración están cubiertos por la tabla de comandos (.ingest
, .set
, .append
, .set-or-replace
, .set-or-append
). Gradualmente, se agregan más comandos a la tabla de comandos.
Salida del ejemplo
ClientActivityId | CommandType | Texto | Base de datos | StartedOn | LastUpdatedOn | Duration | Estado | RootActivityId | Usuario | FailureReason | Application | Principal | TotalCpu | ResourceUtilization | WorkloadGroup |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
KD2RunCommand; a069f9e3-6062-4a0e-aa82-75a1b5e16fb4 | ExtensionesMerge | .merge async Operations ... | BD1 | 2017-09-05 11:08:07.5738569 | 2017-09-05 11:08:09.1051161 | 00:00:01.5312592 | Completado | b965d809-3f3e-4f44-bd2b-5e1f49ac46c5 | AAD app ID=5ba8cec2-9a70-e92c98cad651 | Kusto.Azure.DM.Svc | aadapp=5ba8cec2-9a70-e92c98cad651 | 00:00:03.5781250 | { "ScanExtentsStatistics": { "MinDataScannedTime": null, "MaxDataScannedTime": null }, "CacheStatistics": { Memory": { "Misses": 2, "Hits": 20 }, "Disk": { "Misses": 2, "Hits": 0 } }, "MemoryPeak": 159620640, "TotalCpu": "00:00:03.5781250" } | internal | |
KE. RunCommand; 710e08ca-2cd3-4d2d-b7bd-2738d335aa50 | DataIngestPull | .ingest en MyTableName ... | TestDB | 2017-09-04 16:00:37.0915452 | 2017-09-04 16:04:37.2834555 | 00:04:00.1919103 | Con error | a8986e9e-943f-81b0270d6fae4 | cooper@fabrikam.com | Se ha eliminado la conexión de socket. | Kusto.Explorer | aaduser=... | 00:00:00 | { "ScanExtentsStatistics": { "MinDataScannedTime": null, "MaxDataScannedTime": null }, "CacheStatistics": { "Memory": { "Misses": 0, Hits": 0 }, "Disk": { "Misses": 0, "Hits": 0 } }, "MemoryPeak": 0, "TotalCpu": "00:00:00"} | default |
KD2RunCommand; 97db47e6-93e2-4306-8b7d-670f2c3307ff | ExtensionesRebuild | .merge async Operations ... | DB2 | 2017-09-18 13:29:38.5945531 | 2017-09-18 13:29:39.9451163 | 00:00:01.3505632 | Completado | d5ebb755-d5df-4e94-b240-9accdf06c2d1 | AAD app ID=5ba8cec2-9a70-e92c98cad651 | Kusto.Azure.DM.Svc | aadapp=5ba8cec2-9a70-e92c98cad651 | 00:00:00.8906250 | { "ScanExtentsStatistics": { "MinDataScannedTime": null, "MaxDataScannedTime": null }, "CacheStatistics": { Memory": { "Misses": 0, "Hits": 1 }, "Disk": { "Misses": 0, "Hits": 0 } }, "MemoryPeak": 88828560, "TotalCpu": "00:00:00.8906250"} | internal |
Ejemplos
Extracción de datos de la ResourceUtilization
columna
Para acceder a una de las propiedades de la ResourceUtilization
columna, llame a en ResourcesUtilization
.PropertyName.
Nota:
ResourceUtilization
es una columna dinámica. Para trabajar con sus valores, primero debe convertirlo en un tipo de datos específico. Use una función de conversión como tolong
, toint
, totimespan
.
Por ejemplo:
.show commands
| where CommandType == "TableAppend"
| where StartedOn > ago(1h)
| extend MemoryPeak = tolong(ResourcesUtilization.MemoryPeak)
| top 3 by MemoryPeak desc
| project StartedOn, MemoryPeak, TotalCpu, Text
Salida
StartedOn | MemoryPeak | TotalCpu | Texto |
---|---|---|---|
2017-09-28 12:11:27.8155381 | 800396032 | 00:00:04.5312500 | .append Server_Boots <| let bootStartsSourceTable = SessionStarts; ... |
2017-09-28 11:21:26.7304547 | 750063056 | 00:00:03.8218750 | .set-or-append WebUsage <| database('CuratedDB'). WebUsage_v2 | summarize ... | proyecto... |
2017-09-28 12:16:17.4762522 | 676289120 | 00:00:00.0625000 | .set-or-append AtlasClusterEventStats with(...) <| Atlas_Temp(datetime(2017-09-28 12:13:28.7621737), datetime(2017-09-28 12:14:28.8168492)) |
Consulta de la TotalCpu
columna
Las 10 primeras consultas que consumen CPU en el último día.
.show commands
| where StartedOn > ago(1d)
| top 10 by TotalCpu
| project StartedOn, CommandType, ClientActivityId, TotalCpu
Todas las consultas de las últimas 10 horas cuyo TotalCpu pasó 3 minutos.
.show commands
| where StartedOn > ago(10h) and TotalCpu > 3m
| project StartedOn, CommandType, ClientActivityId, TotalCpu
| order by TotalCpu
Todas las consultas de las últimas 24 horas cuyo TotalCpu pasó 5 minutos, agrupado por usuario y entidad de seguridad.
.show commands
| where StartedOn > ago(24h)
| summarize TotalCount=count(), CountAboveThreshold=countif(TotalCpu > 2m), AverageCpu = avg(TotalCpu), MaxTotalCpu=max(TotalCpu), (50th_Percentile_TotalCpu, 95th_Percentile_TotalCpu)=percentiles(TotalCpu, 50, 95) by User, Principal
| extend PercentageAboveThreshold = strcat(substring(CountAboveThreshold * 100 / TotalCount, 0, 5), "%")
| order by CountAboveThreshold desc
| project User, Principal, CountAboveThreshold, TotalCount, PercentageAboveThreshold, MaxTotalCpu, AverageCpu, 50th_Percentile_TotalCpu, 95th_Percentile_TotalCpu
Gráfico de tiempo: cpu media frente al percentil 95 frente a CPU máxima.
.show commands
| where StartedOn > ago(1d)
| summarize MaxCpu_Minutes=max(TotalCpu)/1m, 95th_Percentile_TotalCpu_Minutes=percentile(TotalCpu, 95)/1m, AverageCpu_Minutes=avg(TotalCpu)/1m by bin(StartedOn, 1m)
| render timechart
Consulta de la MemoryPeak
columna
Las 10 consultas principales del último día con los valores más altos MemoryPeak
.
.show commands
| where StartedOn > ago(1d)
| extend MemoryPeak = tolong(ResourcesUtilization.MemoryPeak)
| project StartedOn, CommandType, ClientActivityId, TotalCpu, MemoryPeak
| top 10 by MemoryPeak
Diagrama de tiempo de memoria media frente al percentil 95 frente a memoria máxima.
.show commands
| where StartedOn > ago(1d)
| project MemoryPeak = tolong(ResourcesUtilization.MemoryPeak), StartedOn
| summarize Max_MemoryPeak=max(MemoryPeak), 95th_Percentile_MemoryPeak=percentile(MemoryPeak, 95), Average_MemoryPeak=avg(MemoryPeak) by bin(StartedOn, 1m)
| render timechart
Contenido relacionado
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de