Création de la table pour les journaux de requêtes du résolveur - Amazon Athena

Création de la table pour les journaux de requêtes du résolveur

Vous pouvez utiliser l'éditeur de requête de la console Athena pour créer et interroger une table pour vos journaux de requêtes Route 53 Resolver.

Création et interrogation d'une table Athena pour les journaux de requêtes Route 53 Resolver
  1. Ouvrez la console Athena à l’adresse https://console.aws.amazon.com/athena/.

  2. Dans l'éditeur de requêtes Athena, saisissez l'instruction CREATE TABLE suivante. Remplacez les valeurs de la clause LOCATION par celles correspondant à l'emplacement de vos journaux Resolver dans Simple Storage Service (Amazon S3).

    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}/'

    Les données du journal des requêtes de Resolver étant au format JSON, l'instruction CREATE TABLE utilise une bibliothèque SerDe JSON pour analyser les données.

    Note

    Le SerDe s'attend à ce que chaque document JSON soit sur une seule ligne de texte, sans caractères de fin de ligne pour séparer les champs de l'enregistrement. Si le texte JSON est au format d'impression, vous pouvez recevoir un message d'erreur similaire à HIVE_CURSOR_ERROR : Row is not a valid JSON Object (La ligne n'est pas un JSON valide) ou HIVE_CURSOR_ERROR : JSONParseException : Unexpected end-of-input: expected close marker for OBJECT (Fin d'entrée inattendue : marqueur de fermeture attendu pour OBJECT) lorsque vous tentez d'interroger la table après l'avoir créée. Pour de plus amples informations, consultez la section Fichiers de données JSON dans la documentation OpenX SerDe sur GitHub.

  3. Choisissez Exécuter la requête. L'instruction crée une table Athena nommée r53_rlogs dont les colonnes représentent chacun des champs de vos données de journal du résolveur.

  4. Dans l'éditeur de requête de la console Athena, exécutez la requête suivante pour vérifier que votre table a été créée.

    SELECT * FROM "r53_rlogs" LIMIT 10