Skip to content

LoggingConfiguration ​

The LoggingConfiguration resource allows you to manage AWS NetworkFirewall LoggingConfigurations for your network firewall, enabling you to configure logging settings for your firewall traffic.

Minimal Example ​

Create a basic LoggingConfiguration for a network firewall with essential properties:

ts
import AWS from "alchemy/aws/control";

const loggingConfig = await AWS.NetworkFirewall.LoggingConfiguration("basicLoggingConfig", {
  FirewallArn: "arn:aws:network-firewall:us-east-1:123456789012:firewall/my-firewall",
  LoggingConfiguration: {
    LogDestinationConfigs: [
      {
        LogDestinationType: "S3",
        LogDestination: {
          S3: {
            BucketName: "my-logging-bucket",
            Prefix: "firewall-logs/"
          }
        },
        LogType: ["ALERT", "FLOW"]
      }
    ]
  }
});

Advanced Configuration ​

Configure a LoggingConfiguration with additional logging options for detailed monitoring:

ts
const advancedLoggingConfig = await AWS.NetworkFirewall.LoggingConfiguration("advancedLoggingConfig", {
  FirewallArn: "arn:aws:network-firewall:us-east-1:123456789012:firewall/my-advanced-firewall",
  LoggingConfiguration: {
    LogDestinationConfigs: [
      {
        LogDestinationType: "CloudWatch",
        LogDestination: {
          CloudWatch: {
            LogGroupName: "my-firewall-logs",
            LogStreamName: "firewall-log-stream"
          }
        },
        LogType: ["ALERT", "FLOW", "INSPECTION"]
      },
      {
        LogDestinationType: "Kinesis",
        LogDestination: {
          Kinesis: {
            StreamName: "my-logs-kinesis-stream"
          }
        },
        LogType: ["ALERT", "FLOW"]
      }
    ]
  }
});

Adoption of Existing Configuration ​

If you want to adopt an existing LoggingConfiguration without failing when it already exists, set the adopt property to true:

ts
const adoptExistingConfig = await AWS.NetworkFirewall.LoggingConfiguration("adoptExistingConfig", {
  FirewallArn: "arn:aws:network-firewall:us-east-1:123456789012:firewall/my-existing-firewall",
  LoggingConfiguration: {
    LogDestinationConfigs: [
      {
        LogDestinationType: "S3",
        LogDestination: {
          S3: {
            BucketName: "existing-logging-bucket",
            Prefix: "existing-firewall-logs/"
          }
        },
        LogType: ["ALERT"]
      }
    ]
  },
  adopt: true
});