Frågor för tabellen WVDConnections
Information om hur du använder dessa frågor i Azure Portal finns i Log Analytics-självstudien. Information om REST-API:et finns i Fråga.
Anslutningsfel
Visa en lista över kontrollpunkter och fel för varje anslutningsförsök, tillsammans med detaljerad information för alla användare.
//You can also uncomment the where clause to filter to a specific user if you are troubleshooting an issue.
WVDConnections
//| where UserName == "upn.here@contoso.com"
| project-away TenantId,SourceSystem
| summarize arg_max(TimeGenerated, *), StartTime = min(iff(State=='Started', TimeGenerated , datetime(null) )), ConnectTime = min(iff(State=='Connected', TimeGenerated , datetime(null) )) by CorrelationId
| join kind=leftouter
(
WVDErrors
|summarize Errors=make_list(pack('Code', Code, 'CodeSymbolic', CodeSymbolic, 'Time', TimeGenerated, 'Message', Message ,'ServiceError', ServiceError, 'Source', Source)) by CorrelationId
) on CorrelationId
| join kind=leftouter
(
WVDCheckpoints
| summarize Checkpoints=make_list(pack('Time', TimeGenerated, 'Name', Name, 'Parameters', Parameters, 'Source', Source)) by CorrelationId
| mv-apply Checkpoints on
(
order by todatetime(Checkpoints['Time']) asc
| summarize Checkpoints=make_list(Checkpoints)
)
) on CorrelationId
| project-away CorrelationId1, CorrelationId2
| order by TimeGenerated desc
Sessionens varaktighet
Visar en lista över varaktigheten och anslutningstypen för varje användares anslutningar.
// The "State" field provides information on the connection stage of an actitivity.
// The delta between "Connected" and "Completed" provides the connection duration.
WVDConnections
| where State == "Connected"
| project CorrelationId , UserName, ConnectionType , StartTime=TimeGenerated
| join kind=inner
(
WVDConnections
| where State == "Completed"
| project EndTime=TimeGenerated, CorrelationId
) on CorrelationId
| project Duration = EndTime - StartTime, ConnectionType, UserName
| sort by Duration desc
De 10 främsta användarna efter genomsnittlig anslutningstid
Visar 10 användare med den längsta genomsnittliga anslutningsvaraktigheten.
// Connection activities have 3 states, this query demonstrates how to calculate the connection duration.
WVDConnections
| where State == "Connected"
| project CorrelationId, UserName, ConnectionType, StartTime=TimeGenerated
| join kind=inner
(
WVDConnections
| where State == "Completed"
| project EndTime=TimeGenerated, CorrelationId
) on CorrelationId
| project Duration = EndTime - StartTime, ConnectionType, UserName
| summarize AVGDuration=avg(Duration) by UserName
| sort by AVGDuration desc
| limit 10
De 10 mest aktiva användarna
Visar de 10 främsta användarna efter den totala anslutningsvaraktigheten.
// The connection duration is the delta between "Connected" and "Completed" state.
WVDConnections
| where State == "Connected"
| project CorrelationId , UserName, ConnectionType , StartTime=TimeGenerated
| join kind=inner
(
WVDConnections
| where State == "Completed"
| project EndTime=TimeGenerated, CorrelationId
) on CorrelationId
| extend SessionDuration = EndTime - StartTime
| summarize TotalConnectionTime = sum(SessionDuration) by UserName, ConnectionType
| top 10 by TotalConnectionTime desc
Genomsnittlig anslutningstid per värdpool
Rangordnar värdpooler efter genomsnittlig anslutningsvaraktighet.
// Characterize the usage pattern of all hostpools in the current Log Analytics scope
WVDConnections
| where State == "Connected"
| project ResourceAlias, CorrelationId, StartTime=TimeGenerated, _ResourceId
| join kind = leftouter
(
WVDConnections
| where State == "Completed"
| project EndTime=TimeGenerated, CorrelationId
) on CorrelationId
// If connection hasn't completed yet, it is still running so the end time can be assumed to be now (duration so far)
| project Duration = coalesce(EndTime, now()) - StartTime, _ResourceId
| summarize AvgDuration=avg(Duration) by _ResourceId
| parse _ResourceId with "/subscriptions/" subscription "/resourcegroups/" ResourceGroup "/providers/microsoft.desktopvirtualization/hostpools/" HostPool
| project ResourceGroup, HostPool, AvgDuration
| sort by AvgDuration desc
Information om operativsystem på klientsidan efter antal användare
Skapar ett stapeldiagram över operativsystem som används på klientenheter som ansluter till distributionen.
// Use this query to understand which OS version users have installed on the devices they are connecting from.
WVDConnections
| summarize UserCount=dcount(UserName) by ClientOS
| sort by UserCount desc
| render barchart
Information om klientanvändning i Azure Virtual Desktop
Lista över klienttyper och versioner som används av användare som ansluter till distributionen.
WVDConnections
| summarize UserCount=dcount(UserName) by ClientType, ClientVersion
| sort by ClientVersion, ClientType, UserCount desc
Genomsnittlig inloggningstid för session
Visar en lista över genomsnittlig sessionsinloggningstid efter värdpool och sessionstillstånd.
WVDConnections
| where TimeGenerated > ago(24h)
| where State == "Started"
| project CorrelationId , UserName, ConnectionType , StartTime=TimeGenerated, _ResourceId
| join kind=inner
(
WVDConnections
| where State == "Connected"
| project ConnectTime=TimeGenerated, CorrelationId
) on CorrelationId
| join kind=inner
(
WVDCheckpoints
| where Name =~ "LoadBalancedNewConnection"
| extend LoadBalanceOutcome=tostring(parse_json(Parameters).LoadBalanceOutcome)
) on CorrelationId
| project Duration = ConnectTime - StartTime, _ResourceId, Session=case(LoadBalanceOutcome in ("Active", "Disconnected"), "ExistingSession", LoadBalanceOutcome == "Pending", "Creating", LoadBalanceOutcome)
// Exclude connections that are happening while another connection kicked off the session creation, since results will be inconclusive
| where Session != "Creating"
| summarize AvgDuration=avg(Duration) by _ResourceId, Session
| parse _ResourceId with "/subscriptions/" subscription "/resourcegroups/" ResourceGroup "/providers/microsoft.desktopvirtualization/hostpools/" HostPool
| project ResourceGroup, HostPool, Session, AvgDuration
| sort by AvgDuration desc