Erstellen der Tabelle für Resolver-Abfrageprotokolle - Amazon Athena

Erstellen der Tabelle für Resolver-Abfrageprotokolle

Sie können den Abfrage-Editor in der Athena-Konsole verwenden, um eine Tabelle für Ihre Route-53-Resolver-Abfrageprotokolle zu erstellen und abzufragen.

So erstellen und fragen Sie eine Athena-Tabelle für Route-53-Resolver-Abfrageprotokolle ab
  1. Öffnen Sie die Athena-Konsole unter https://console.aws.amazon.com/athena/.

  2. Geben Sie im Athena-Abrage-Editor folgende CREATE TABLE-Anweisung ein. Ersetzen Sie die LOCATION-Klauselwerte durch diejenigen, die dem Speicherort Ihrer Resolver-Protokolle in Amazon S3 entsprechen.

    CREATE EXTERNAL TABLE r53_rlogs ( version string, account_id string, region string, vpc_id string, query_timestamp string, query_name string, query_type string, query_class string, rcode string, answers array< struct< Rdata: string, Type: string, Class: string> >, srcaddr string, srcport int, transport string, srcids struct< instance: string, resolver_endpoint: string >, firewall_rule_action string, firewall_rule_group_id string, firewall_domain_list_id string ) ROW FORMAT SERDE 'org.openx.data.jsonserde.JsonSerDe' LOCATION 's3://amzn-s3-demo-bucket/AWSLogs/aws_account_id/vpcdnsquerylogs/{vpc-id}/'

    Da Resolver-Abfrageprotokolldaten im JSON-Format vorliegen, verwendet die CREATE TABLE-Anweisung eine JSON-SerDe-Bibliothek, um die Daten zu analysieren.

    Anmerkung

    Das SerDe erwartet, dass sich jedes JSON-Dokument auf einer einzigen Textzeile befindet, ohne Zeilenabschlusszeichen, die die Felder im Datensatz trennen. Wenn der JSON-Text im hübschen Druckformat vorliegt, erhalten Sie möglicherweise eine Fehlermeldung wie HIVE_CURSOR_ERROR: Zeile ist kein gültiges JSON-Objekt oder HIVE_CURSOR_ERROR: JsonParseException: Unerwartetes Ende der Eingabe: Erwartete Schließmarkierung für OBJEKT, wenn Sie versuchen, die Tabelle abzufragen, nachdem Sie dies erstellt haben. Weitere Informationen finden Sie unter JSON-Datendatei in der OpenX-SerDe-Dokumentation auf GitHub.

  3. Wählen Sie Abfrage ausführen. Die Anweisung erstellt eine Athena-Tabelle mit dem Namen r53_rlogs, deren Spalten jedes der Felder in Ihren Resolver-Protokolldaten darstellen.

  4. Führen Sie im Abfrage-Editor der Athena-Konsole die folgende Abfrage aus, um zu überprüfen, ob Ihre Tabelle erstellt wurde.

    SELECT * FROM "r53_rlogs" LIMIT 10