An Azure service that is used to monitor, diagnose, and gain insights into network performance and health.
Hello @ Swarada Jalukar,
Thanks for reaching out to Microsoft Q&A.
It looks like you’re building a checkpointing solution around the PT1H.json NSG flow-logs blobs and want to know whether Azure is appending records or rewriting the whole file every minute. Here’s what happens under the covers:
- Append vs. Rewrite
- Azure NSG/VNet flow logs are stored as block blobs. Every 1-minute interval, the platform issues new PutBlock calls to add just the delta (new records) and then updates the blob’s block list.
- In practice, that means new flow entries are appended to the existing blob rather than replacing the entire JSON file each minute.
- Record count monotonicity
- Because it’s append-only during the active hour, the total record count in a PT1H.json will never drop. It only grows as each minute’s data arrives.
- Exceptional blob recreation scenarios
- Under normal operations there’s no mid-hour rewrite or truncate. However, you will see a fresh blob if you: • Disable & re-enable NSG/VNet flow logging • Rotate storage account keys without re-enabling logging • Delete the blob/container manually
- Rare platform-side failures or storage account misconfigurations could trigger a retry that looks like a rewrite, but those aren’t expected in a healthy setup.
Reference:
https://learn.microsoft.com/en-us/azure/network-watcher/flow-logs-read
https://learn.microsoft.com/en-us/azure/network-watcher/nsg-flow-logs-overview
If the answer is helpful, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".