/terraform-aws-athena

This Terraform module automates the setup of AWS Athena to query ALB access and connection logs stored in an S3 bucket.

Primary LanguageHCLMIT LicenseMIT

terraform-aws-athena

Requirements

Name Version
terraform >= 1.8.4
aws ~> 5.0

Providers

Name Version
aws ~> 5.0

Modules

No modules.

Resources

Name Type
aws_athena_workgroup.this resource
aws_glue_catalog_database.this resource
aws_glue_catalog_table.alb_logs resource

Inputs

Name Description Type Default Required
alb_access_logs_table_name (Optional) The name of the Glue Catalog table that will store the parsed ALB access logs string "alb_access_logs" no
alb_connection_logs_table_name (Optional) The name of the Glue Catalog table that will store the parsed ALB connection logs string "alb_connection_logs" no
database_name (Required) The name of the Athena database in the AWS Glue Catalog that will contain the schema definitions for your ALB logs string n/a yes
query_results_bucket (Required) The name of the S3 bucket where Athena will store the output of executed queries string n/a yes
s3_bucket_name (Required) The name of the S3 bucket that holds the raw Application Load Balancer (ALB) logs string n/a yes
workgroup_name (Required) The name of the Athena workgroup that will manage and isolate query execution and resource usage string n/a yes

Outputs

Name Description
alb_access_logs_location Location in S3 where ALB access logs are stored
alb_connection_logs_location Location in S3 where ALB connection logs are stored
alb_logs_bucket_name S3 bucket name where ALB logs are retrieved
athena_workgroup_name Name of the Athena Workgroup
glue_catalog_database_name Name of the Glue catalog database
glue_table_names Names of the Glue tables under the database
query_results_bucket_name S3 bucket name where Athena query results are stored