Livraison de journaux - Amazon ElastiCache

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Livraison de journaux

Note

Slow Log est pris en charge pour Valkey 7.x et versions ultérieures, ainsi que pour les clusters de OSS cache et les groupes de réplication Redis utilisant la version 6.0 du moteur et les versions ultérieures.

Le journal du moteur est pris en charge pour Valkey 7.x, ainsi que pour les clusters de OSS cache et les groupes de réplication Redis utilisant la version 6.2 du moteur et les versions ultérieures.

La diffusion du journal vous permet de diffuser SLOWLOGou Engine Log vers l'une des deux destinations suivantes :

  • Amazon Data Firehose

  • Amazon CloudWatch Logs

Vous activez et configurez la livraison des journaux lorsque vous créez ou modifiez un cluster à l'aide de ElastiCache APIs. Chaque entrée du journal sera envoyée à la destination spécifiée dans l'un des deux formats suivants : JSONou TEXT.

Un nombre fixe d'entrées Slow Log sont extraites périodiquement du moteur. En fonction de la valeur spécifiée pour le paramètre moteur slowlog-max-len, des entrées de journal lentes supplémentaires peuvent ne pas être envoyées à la destination.

Vous pouvez choisir de modifier les configurations de diffusion ou de désactiver la livraison des journaux à tout moment à l'aide de la AWS console ou de l'une des APIs options de modification modify-cache-clusterou modify-replication-group.

Vous devez définir le paramètre apply-immediately pour toutes les modifications de diffusion des journaux.

Note

CloudWatch Les frais Amazon Logs s'appliquent lorsque la livraison des journaux est activée, même lorsque les journaux sont envoyés directement à Amazon Data Firehose. Pour plus d'informations, consultez la section Vended Logs dans Amazon CloudWatch Pricing.

Contenu d'une entrée de journal lente

Le journal lent contient les informations suivantes :

  • CacheClusterId— L'ID du cluster de cache

  • CacheNodeId— L'ID du nœud de cache

  • Id – Identificateur progressif unique pour chaque entrée de journal lente

  • Horodatage – Horodatage Unix à partir duquel la commande journalisée a été traitée

  • Durée – Le temps nécessaire à son exécution, en microsecondes

  • Commande – Commande utilisée par le client. Par exemple, set foo bar où se foo trouve la clé et où bar se trouve la valeur. ElastiCache remplace le nom et la valeur réels de la clé par (2 more arguments) pour éviter d'exposer des données sensibles.

  • ClientAddress— Adresse IP et port du client

  • ClientName— Nom du client s'il est défini via la CLIENT SETNAME commande

Contenu d'une entrée dans le journal du moteur

Le journal ElastiCache du moteur contient les informations suivantes :

  • CacheClusterId— L'ID du cluster de cache

  • CacheNodeId— L'ID du nœud de cache

  • Niveau de journalisation : LogLevel peut être l'un des suivants :VERBOSE("-"),NOTICE("*"),WARNING("#").

  • Heure : UTC heure du message enregistré. L'heure est au format suivant : "DD MMM YYYY hh:mm:ss.ms UTC"

  • Rôle – Rôle du nœud à partir duquel le journal est émis. Il peut s'agir de l'une des options suivantes : « M » pour Primary, « S » pour la réplique, « C » pour Writer Child Process travaillant surRDB/AOFou « X » pour Sentinel.

  • Message : message du journal du moteur.

Autorisations pour configurer la journalisation

Vous devez inclure les IAM autorisations suivantes dans votre politique IAM d'utilisateur/rôle :

  • logs:CreateLogDelivery

  • logs:UpdateLogDelivery

  • logs:DeleteLogDelivery

  • logs:GetLogDelivery

  • logs:ListLogDeliveries

Pour plus d'informations, veuillez consulter Présentation de la gestion des accès : autorisations et politiques.

Spécifications du type de journal et du format de journal

Journal lent

Slow Log prend en charge les deux JSON et TEXT

Voici un exemple de JSON format :

{ "CacheClusterId": "logslowxxxxmsxj", "CacheNodeId": "0001", "Id": 296, "Timestamp": 1605631822, "Duration (us)": 0, "Command": "GET ... (1 more arguments)", "ClientAddress": "192.168.12.104:55452", "ClientName": "logslowxxxxmsxj##" }

Voici un exemple de TEXT format :

logslowxxxxmsxj,0001,1605631822,30,GET ... (1 more arguments),192.168.12.104:55452,logslowxxxxmsxj##

Journal du moteur

Le journal du moteur prend en charge les deux JSON et TEXT

Voici un exemple de JSON format :

{ "CacheClusterId": "xxxxxxxxxzy-engine-log-test", "CacheNodeId": "0001", "LogLevel": "VERBOSE", "Role": "M", "Time": "12 Nov 2020 01:28:57.994 UTC", "Message": "Replica is waiting for next BGSAVE before synchronizing with the primary. Check back later" }

Voici un exemple de TEXT format :

xxxxxxxxxxxzy-engine-log-test/0001:M 29 Oct 2020 20:12:20.499 UTC * A slow-running Lua script detected that is still in execution after 10000 milliseconds.