Dela via


Frågor om tabellen ACSCallSummaryUpdates

Information om hur du använder dessa frågor i Azure-portalen finns i Log Analytics-självstudien. Information om REST-API:et finns i Fråga.

Deltagare per samtal

Beräknar det genomsnittliga antalet deltagare per samtal.

ACSCallSummaryUpdates
// Get the distinct participants in a call
| summarize arg_max(CallUpdatesVersion, *) by CorrelationId, ParticipantId, EndpointId
// Count the participants and distinct calls
| summarize num_participants=count(), num_calls=dcount(CorrelationId)
// Calculate the average number of distinct participants per call
| extend avg_participants = toreal(num_participants) / toreal(num_calls)
| project num_participants, num_calls, avg_participants

Telefonnummer för deltagare

Visar telefonnummer för deltagarna i samtalet. (Telefonnummer kommer från ACSBillingUsage-tabellen).

ACSCallSummaryUpdates
// Get the calls with CallType as Group
| where CallType == 'Group'
| summarize arg_max(CallUpdatesVersion, *) by CorrelationId, ParticipantId, ParticipantStartTime, ParticipantDuration, EndpointType, CallType, CallStartTime, PstnParticipantCallType
| project CorrelationId, ParticipantId, ParticipantStartTime, ParticipantDuration, EndpointType, CallType, CallStartTime, PstnParticipantCallType
// Join with ACSBillingUsage data on ParticipantId
| join kind=leftouter (ACSBillingUsage
                        | where isnotempty(ParticipantId)
                        | project ParticipantId, UserIdA, UserIdB, StartTime, Quantity)
    on ParticipantId
// Combine with calls of CallType P2P
| union (ACSCallSummaryUpdates
| where CallType == 'P2P'
| summarize arg_max(CallUpdatesVersion, *) by CorrelationId, ParticipantId, ParticipantStartTime, ParticipantDuration, EndpointType, CallType, CallStartTime, PstnParticipantCallType
| project CorrelationId, ParticipantId, ParticipantStartTime, ParticipantDuration, EndpointType, CallType, CallStartTime, PstnParticipantCallType
// Join with ACSBillingUsage data on CorrelationId
| join kind=leftouter (ACSBillingUsage
                        | where isnotempty(ParticipantId)
                        | project CorrelationId, ParticipantId, UserIdA, UserIdB, StartTime, Quantity)
    on CorrelationId)
| order by CallStartTime, ParticipantStartTime

Deltagare i varje gruppsamtal

Skapar ett histogram över antalet deltagare i gruppanrop.

ACSCallSummaryUpdates
// Filter out all P2P calls to calculate only participants in Group calls
| where CallType == 'Group'
// Get the distinct participants in a call
| summarize arg_max(CallUpdatesVersion, *) by CorrelationId, ParticipantId
// Count the number of participants per call
| summarize num_participants=count() by CorrelationId
// Aggregate the numbers of participants per call (e.g. if there are three calls
// with 5 participants, this will produce a row [num_participants=5, participant_counts=3])
| summarize participant_counts=count() by num_participants
| order by num_participants asc 
| render columnchart with (xcolumn = num_participants, title="Number of participants per group call")

Anropstypförhållande

Skapar ett cirkeldiagram över andelen samtalstyper (P2P- och gruppanrop).

ACSCallSummaryUpdates
// Count distinct calls (dcount(CorrelationId)) per call type
| summarize call_types=dcount(CorrelationId) by CallType
| render piechart title="Call Type Ratio"

Histogram över samtalsvaraktighet

Genererar ett histogram med samtalsvaraktighet i sekunder.

ACSCallSummaryUpdates
// Get the distinct combinations of CorrelationId, CallDuration
| summarize arg_max(CallUpdatesVersion, *) by CorrelationId, CallDuration
// Count call duration bins (60 second intervals)
| summarize duration_counts=count() by bin(CallDuration, 60)
| order by CallDuration asc
| render columnchart with (xcolumn = CallDuration, title="Call duration histogram")

Percentiler för samtalslängd

Beräknar den genomsnittliga samtalstiden i sekunder, samt 50%, 90% och 99% percentiler för samtalstid.

ACSCallSummaryUpdates
// Get the distinct combinations of CorrelationId, CallDuration
| summarize arg_max(CallUpdatesVersion, *) by CorrelationId, CallDuration
// Calculate average and percentiles (50%, 90%, and 99%) of call durations (in seconds)
| summarize avg(CallDuration), percentiles(CallDuration, 50, 90, 99)

Dagliga samtal

Genererar ett histogram över anrop som gjorts per dag under den senaste veckan.

ACSCallSummaryUpdates
// To filter out calls made over a week ago, uncomment the next line
// | where CallStartTime > ago(7d)
// Get the distinct combinations of CorrelationId and CallStartTime
| summarize arg_max(CallUpdatesVersion, *) by CorrelationId, CallStartTime
// Adds a new column with the call start day
| extend day = floor(CallStartTime, 1d)
// Count the number of calls per day
| summarize event_count=count() by day
| sort by day asc
| render columnchart title="Number of calls per day"

Samtal varje timme

Genererar ett histogram över anrop som gjorts per timme under den senaste dagen.

ACSCallSummaryUpdates
// Get the distinct combinations of CorrelationId and CallStartTime
| summarize arg_max(CallUpdatesVersion, *) by CorrelationId, CallStartTime
// Adds a new column with the call start hour
| extend hour = floor(CallStartTime, 1h)
// Count the number of calls per hour
| summarize event_count=count() by hour
| sort by hour asc
| render columnchart title="Number of calls per hour in last day"

Slutpunkter per samtal

Beräknar det genomsnittliga antalet distinkta slutpunkter per anrop.

ACSCallSummaryUpdates
// Get the distinct combinations of CorrelationId and EndpointId
| summarize arg_max(CallUpdatesVersion, *) by CorrelationId, EndpointId
// Count all endpoints and distinct calls
| summarize num_endpoints=count(), num_calls=dcount(CorrelationId)
// Calculate the average number of distinct endpoints per call
| extend avg_endpoints = toreal(num_endpoints) / toreal(num_calls)
| project num_endpoints, num_calls, avg_endpoints

SDK-versionsförhållande

Skapar ett cirkeldiagram över andelen SDK-versioner som används av deltagarna.

ACSCallSummaryUpdates
// Get the distinct participants in a call
| summarize arg_max(CallUpdatesVersion, *) by CorrelationId, ParticipantId, EndpointId, SdkVersion
// Count participants that are using a particular SDK
| summarize sdk_counts=count() by SdkVersion
| order by SdkVersion asc
| render piechart title="SDK Version Ratio"

Operativsystemets versionsförhållande

Skapar ett cirkeldiagram över andelen os-versioner som används av deltagarna.

ACSCallSummaryUpdates
// Get the distinct participants in a call
| summarize arg_max(CallUpdatesVersion, *) by CorrelationId, ParticipantId, EndpointId, OsVersion
// Simplified OS version name by searching for a specific OS keyword
// and performs a different string split operation per OS type
| extend simple_os = case(  indexof(OsVersion, "Android") != -1, tostring(split(OsVersion, ";")[0]),
                            indexof(OsVersion, "Darwin") != -1, tostring(split(OsVersion, ":")[0]),
                            indexof(OsVersion, "Windows") != -1, tostring(split(OsVersion, ".")[0]),
                            OsVersion
                        )
// Count the participants that are using a particular OS version
| summarize os_counts=count() by simple_os
| order by simple_os asc
| render piechart title="OS Version Ratio"

Flöden per samtal

Beräknar det genomsnittliga antalet flöden per samtal.

ACSCallDiagnosticsUpdates
// Count the streams and distinct calls
| summarize num_streams=count(), num_calls=dcount(CorrelationId)
// Calculate the average number of streams per call
| extend avg_streams = toreal(num_streams) / toreal(num_calls)

Dataströmmar per anrops-histogram

Producerar ett histogram över antal strömmar per samtal.

ACSCallDiagnosticsUpdates
// Counts the number of streams per call 
| summarize streams_per_call=count() by CorrelationId
// Aggregates the numbers of streams per call (e.g. if there are 7 calls that have 6 streams,
// this will produce a row [streams_per_call=6, stream_counts=7])
| summarize stream_counts=count() by streams_per_call
| order by streams_per_call asc
| render columnchart title="Streams per call histogram"