

# 为 ALB 连接日志创建表
<a name="create-alb-connection-logs-table"></a>

1. 将以下示例 `CREATE TABLE` 语句复制并粘贴到 Athena 控制台的查询编辑器中，然后根据您自己的日志条目要求进行必要的修改。有关 Amazon 控制台入门的更多信息，请参阅 [开始使用](getting-started.md)。将 `LOCATION` 子句中的路径替换为 Amazon S3 连接日志文件夹位置。有关连接日志文件位置的更多信息，请参阅《User Guide for Application Load Balancers》**中的 [Connection log files](https://docs.amazonaws.cn/elasticloadbalancing/latest/application/load-balancer-connection-logs.html#connection-log-file-format)。有关每个日志文件字段的信息，请参阅 [Connection log entries](https://docs.amazonaws.cn/elasticloadbalancing/latest/application/load-balancer-connection-logs.html#connection-log-entry-format)。

   ```
   CREATE EXTERNAL TABLE IF NOT EXISTS alb_connection_logs (
            time string,
            client_ip string,
            client_port int,
            listener_port int,
            tls_protocol string,
            tls_cipher string,
            tls_handshake_latency double,
            leaf_client_cert_subject string,
            leaf_client_cert_validity string,
            leaf_client_cert_serial_number string,
            tls_verify_status string,
            conn_trace_id string
            ) 
            ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.RegexSerDe'
            WITH SERDEPROPERTIES (
            'serialization.format' = '1',
            'input.regex' =
             '([^ ]*) ([^ ]*) ([0-9]*) ([0-9]*) ([A-Za-z0-9.-]*) ([^ ]*) ([-.0-9]*) \"([^\"]*)\" ([^ ]*) ([^ ]*) ([^ ]*) ?([^ ]*)?( .*)?'
            )
            LOCATION 's3://amzn-s3-demo-bucket/{{connection-log-folder-path}}/'
   ```

1. 在 Athena 控制台中运行查询。查询完成后，Athena 将注册 `alb_connection_logs` 表，使其中的数据可以供您发出查询。