how to know where the network out total egress data has gone?

Nivedita 20 Reputation points
2026-08-05T14:37:09.0766667+00:00

We have configured Azure VNet Flow Logs with Traffic Analytics and receive an Azure Monitor alert when a VM's Network Out exceeds 10 GB within 6 hours.

Our requirement is to quickly identify the top egress destination IPs and bytes transferred for the alert period.

We found that NTANetAnalytics provides only aggregated data, AzureDiagnostics does not contain the required flow details, and the raw Storage Account flow logs require manual parsing.

Is there a native Azure feature, Log Analytics table, or KQL query that can show the top egress destination IPs and traffic volume for a VM during a specified time window without manually parsing the raw flow logs?

Azure Network Watcher
Azure Network Watcher

An Azure service that is used to monitor, diagnose, and gain insights into network performance and health.

0 comments No comments

Answer accepted by question author
Jose Benjamin Solis Nolasco 10,891 Reputation points Volunteer Moderator
2026-08-05T14:53:47.3366667+00:00

Welcome to Microsoft Q&A,

Hello @Nivedita I hope you are doing well,

If your VNet Flow Logs are being ingested into Log Analytics, first check whether tables such as AzureNetworkAnalytics_CL or NetworkWatcherFlowEvent are available. If they are, you can use a KQL query to filter the alert time window and your VM's source IP, then summarize the total bytes by destination IP to identify the top egress destinations.

If those tables are not available, Azure does not currently provide a native Log Analytics table with per-flow details. In that case, the raw VNet Flow Logs stored in the Storage Account (or a custom ingestion pipeline into Log Analytics) are required to perform this analysis.

but there isnt a native way in azure in this moment...

References:

If my answer helped you, please consider marking it as accepted. This helps others in the community find similar solutions.

Was this answer helpful?

1 person found this answer helpful.

1 additional answer

Sort by: Most helpful
  1. AI answer

    2026-08-05T14:37:30.0766667+00:00

    Yes. The native option is to query the NTANetAnalytics table in the Log Analytics workspace used by Traffic Analytics.

    NTANetAnalytics contains aggregated flow log data with enhanced network analytics information, including fields such as source and destination IPs, bytes, protocol, ports, and time fields. Traffic analytics is designed for analyzing traffic patterns, troubleshooting connectivity, and identifying top communicating endpoints.

    For a VM and alert time window, use a query like this to get the top egress destinations by total bytes:

    NTANetAnalytics
    | where TimeGenerated between (datetime(2024-01-01T00:00:00Z) .. datetime(2024-01-01T06:00:00Z))
    | where SrcIP == "<VM private IP>"
    | summarize TotalBytes=sum(BytesSrcToDest), FlowCount=count() by DestIP, DestPort, L4Protocol
    | order by TotalBytes desc
    

    If the traffic is going through an Azure Load Balancer, NTANetAnalytics can also be filtered by DestLoadBalancer:

    NTANetAnalytics
    | where DestLoadBalancer == '<Subscription ID>/<Resource Group name>/<Load Balancer name>'
    

    Important limitations from the available documentation:

    • NTANetAnalytics is aggregated data, not per-packet or raw-flow detail.
    • Traffic analytics aggregates flows that share the same source IP, destination IP, destination port, NSG name, NSG rule, flow direction, and protocol.
    • Source port is excluded from aggregation.
    • In Azure Monitor logs, only the reduced aggregated record is shown.
    • To see all individual flows, the documented method is to use the blob_id field and inspect the raw flow log blobs in storage.
    • Traffic analytics ingestion can take up to 1 hour.

    So, for the requirement of quickly identifying top egress destination IPs and bytes transferred during an alert window, the native Azure answer is NTANetAnalytics with KQL. If exact non-aggregated per-flow records are required, the documented path is still the raw storage blobs referenced by blob_id.


    References:

    AI-generated content may be incorrect. Read our transparency notes for more information.

    Was this answer helpful?

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.