AzureStatic-verified

Flow Logs that Are On, Kept, and Analysed

enabled = false creates a flow log that logs nothing; a retention policy that is off keeps the JSON blobs until somebody deletes the storage account; and without Traffic Analytics nobody ever opens them. Every target is created enabled, retention defaults to 90 days, and Traffic Analytics is on whenever a workspace is given - raw blobs with no aggregation have to be asked for.

terraformAzureazure

Compare Network Flow Logs across clouds →

azure-flow-logsvizier v1.2.0

Verification

Static-verified

Passed: validated and lint-clean (provider-schema-validated for AWS/Azure/GCP; Terraform-language lint elsewhere).

Conformance

  • Static validation (fmt · validate · tflint)
  • Security scan clean (Checkov)
  • Plan tests (mocked: validation rules · outputs)

Provenance

  • SHA-256 checksum
  • Signature (pending)

Functional

  • Live test pending (no cloud run yet)

Last verified 2026-09-14 · how we verify

Use it from the registry

terraform · opentofu
module "flow_logs" {
  source  = "www.iac-bazaar.com/iac-bazaar/azure-flow-logs/azure"
  version = "1.0.0"
}

Needs a registry token from /account/tokens. The module itself is free; the account is what identifies you. Full setup: registry docs.

Cite it in your README

badge · attribution

Paste this beside the module in the repository that uses it. The badge is rendered from this artifact's verification record, so it reads static-verified because the record says so, and the link lands on this page.

README.md, GitLab, Gitea
[![IaC Bazaar: static-verified](https://www.iac-bazaar.com/api/artifacts/azure-flow-logs/badge)](https://www.iac-bazaar.com/catalog/azure-flow-logs?utm_source=syndication&utm_medium=readme&utm_campaign=artifact)

Terraform module 1.0.0, static-verified on IaC Bazaar: [Flow Logs that Are On, Kept, and Analysed](https://www.iac-bazaar.com/catalog/azure-flow-logs?utm_source=syndication&utm_medium=readme&utm_campaign=artifact)

```hcl
module "flow_logs" {
  source  = "www.iac-bazaar.com/iac-bazaar/azure-flow-logs/azure"
  version = "1.0.0"
}
```

Preview:IaC Bazaar: static-verified

Inputs & outputs

Create a free account to read this module's contract

The declared contract - every input name, type, default and description, plus every output - is shown to signed-in accounts, not to anonymous visitors.

A free account sees the contract of every module in the catalogue. There is no subscription and nothing to buy - the modules are free to download, and they run under Vizier.

Documentation

azure-flow-logs

Network flow logs that are switched on, kept long enough, and analysed. Works with Terraform and OpenTofu (>= 1.6), azurerm provider >= 4.0, < 5.0.

enabled = false creates a flow log that logs nothing. The resource exists, the portal lists it, and no flow is written. Every target here is created enabled.

Retention is on the storage account. Flow logs land as JSON blobs; with no retention policy they are kept until somebody deletes them - forever, or the first time somebody cleans up the account. Ninety days is the floor most frameworks ask for; 0 keeps them forever on purpose; fewer than 90 needs accept_short_retention.

Without Traffic Analytics, a flow log is a bucket of JSON. Nobody opens raw flow records. Traffic Analytics aggregates them into a Log Analytics workspace where a query can answer who talked to what. Off by default in the API; on here whenever a workspace is given, and refused otherwise without accept_no_traffic_analytics.

The target decides what is seen. VNet flow logs record every flow in the network, including ones no NSG touches; NSG flow logs are on a retirement path. Target the VNet.

Verification

Static validation runs tofu fmt, init, validate, tflint and checkov. This module has not yet had a live test, so it is published as statically validated with its live test pending and does not carry the live-tested mark.

Usage code & full reference need an account

The complete copy-paste usage, the full input/output reference, and operational notes are free with an account - shown here and bundled in the download. Sign in and this section fills in.

  • Usage

Related modules

Static validatedLive test pending

azure-grafana

API keys are long-lived, unscoped bearer tokens that read every dashboard and end up in CI variables; the login page is public by default; and the Essential SKU is a single instance with no SLA. Keys off, login over a private endpoint, Standard SKU zone-redundant, fixed outbound addresses for data-source allow lists, and the identity it reads with exported for its Monitoring Reader grant.

View module
Static validatedLive test pending

azure-sentinel

retention_in_days defaults to 30, against intrusions usually discovered months later - so the first question, when did this start, gets silence rather than an answer. daily_quota_gb is a trap both ways and has no safe default, so the module makes you choose. And onboarding Sentinel connects no data source at all.

View module
Live-tested

azure-monitor-baseline

Central Log Analytics workspace, diagnostic-settings-everywhere pattern, action groups and starter alert pack (metric + log + activity).

View module
Static validatedLive test pending

azure-application-insights

When the daily cap is hit everything after it is discarded until midnight and the dashboard goes flat, and the one email that says so has its own switch. Ingestion sampling stacks on the SDK's sampling and the metrics rescale. Both are refused without being named, and availability tests are created with the alerts that make an outage reach a person rather than a chart.

View module
Static validatedLive test pending

azure-activity-log

The subscription's Activity Log exported to a Log Analytics workspace, a storage account and/or an Event Hub, because Azure keeps it for ninety days and then forgets. All eight categories go; dropping Administrative, Security or Policy, the three an investigation asks for, is accepted by name. The workspace's retention is the workspace's setting; the years live in the storage account.

View module
Static validatedLive test pending

azure-uptime-check

Application Insights Standard tests with the metric alert that makes them tell somebody. Microsoft says a test without an alert rule only notifies the portal, recommends five locations and alerting at locations minus two, and retires URL ping tests on 30 September 2026. The module follows all three, checks certificate lifetime, and lets content, not only a 200, decide what up means.

View module