Consignation et traçage dans SMS Gateway

Utilisez les fichiers journaux de SMS Gateway pour diagnostiquer les problèmes dans votre déploiement.

Configuration de la consignation et de la fonction de trace

Comme dans les autres configurations, les niveaux de consignation et de trace sont configurés en tant que variables d'environnement Docker, comme décrit dans Variables d'environnement de configuration de SMS Gateway.

Les variables d'environnement Docker suivantes sont utilisées pour configurer les paramètres de consignation et de trace :

Tableau 1. Variables d'environnement pour la configuration de la consignation et du traçage de SMS Gateway
Variable d'environnement Valeur par défaut Description
ENABLE_TRANSCRIPTION_MESSAGES false Définir sur true pour activer les messages de transcription. Pour consigner des messages de transcription, la variable d'environnement LOG_LEVEL doit également être définie sur finest. Notez que lorsque ces messages sont activés, ils figurent dans les journaux et peuvent comporter des données sensibles (renseignements médicaux personnels, informations personnelles identifiables, données PCI DSS).
LATENCY_REPORTING_THRESHOLD 1000 Seuil, en millisecondes, de rapport de latence aller-retour de Conversation.
LOG_LEVEL info Niveau de journal de SMS Gateway. Les valeurs valides sont (de moins à plus d'informations) : off, fatal, severe, warning, info, fine, finest et all. Notez que lorsque la variable est définie sur fine, finest ou all, les journaux peuvent contenir des données sensibles (renseignements médicaux personnels, informations personnelles identifiables et données PCI DSS).
LOG_MAX_FILES 5 Nombre maximal de fichiers journaux, de fichiers de trace et de fichiers de résumé des exceptions. Lorsque cette limite est atteinte, le fichier le plus ancien est supprimé et un nouveau fichier est créé. Par exemple, lorsque cette variable est définie sur 5, SMS Gateway génère jusqu'à 5 journaux de messages, 5 journaux de trace et 5 récapitulatifs d'exception.
LOG_MAX_FILE_SIZE 100 Taille maximale, en Mo, que peut atteindre un fichier avant qu'un nouveau ne soit créé.
WLP_SKIP_UMASK false Le serveur définit les droits du fichier journal pour refuser l'accès aux autres utilisateurs. Définissez ce paramètre sur true pour donner accès aux autres utilisateurs.

Recherche et consultation des fichiers journaux

Les fichiers journaux du conteneur SMS Gateway se trouvent dans le répertoire /logs/. Ce répertoire contient le fichier messages.log et des journaux de récupération de place en mode prolixe tels que verbosegc.1.001.log. Si LOG_LEVEL est défini au moins sur fine, le répertoire contient également le fichier trace.log qui contient des détails additionnels. Si SMS Gateway rencontre des exceptions, celles-ci sont résumées dans des fichiers journaux dans le sous-répertoire ffdc, avec une indication de la date à laquelle elles se sont produites.

Pour copier les fichiers journaux en dehors du conteneur, exécutez les commandes suivantes :

Astuce : exécutez la commande kubectl get pods pour trouver le nom du pod.

Configuration des droits d'affichage des fichiers journaux

Durant le déploiement de Voice Gateway, les journaux du serveur qui sont créés ne donnent pas des droits aux autres utilisateurs, -rw-r---. Voir Configuration de la consignation et du traçage.

Si vous souhaitez créer les fichiers journaux du serveur avec des droits de lecture pour les autres utilisateurs, vous pouvez définir la propriété WLP_SKIP_UMASK dans votre fichier de configuration de déploiement sur true. Cette configuration permet de créer le fichier journal avec des droits d'affichage mis à jour, -rw-r-r-.

WLP_SKIP_UMASK=true

Montage d'un volume Docker pour faciliter la collecte de journaux

Au lieu d'exécuter les commandes docker cp pour collecter les journaux du conteneur, vous pouvez monter un répertoire du système de fichiers local sur le conteneur. Le conteneur écrit les journaux directement sur le répertoire monté, afin que vous puissiez afficher et collecter les journaux localement sans qu'il soit nécessaire de les copier à chaque fois des conteneurs.

Pour monter un répertoire local en tant que volume Docker, spécifiez le mappage du répertoire au format host_directory:container_directory sur une clé volumes dans votre fichier docker-compose.yml. Dans l'exemple suivant, $PWD/logs/ indique un répertoire logs dans le répertoire de travail en cours, qui est monté sur le répertoire logs dans le conteneur.

services:
  sms.gateway:
    ...
    volumes:
      - $PWD/logs/:/logs/

Une fois que vous avez redéployé le conteneur en exécutant la commande docker-compose up, le répertoire logs est créé dans le répertoire de travail en cours où la commande s'exécute. Les fichiers journaux sont créés et mis à jour depuis cet emplacement.

Définition de la langue des fichiers journaux

Si vous souhaitez lire les fichiers journaux dans une autre langue que l'anglais, vous pouvez choisir cette langue en changeant les paramètres régionaux des conteneurs via les deux variables d'environnement suivantes :

Tableau 3. Variables d'environnement des paramètres régionaux et des langues
Variable d'environnement Valeur par défaut
LC_ALL en_US.UTF-8
LANG en_US.UTF-8

Pour en savoir plus sur les paramètres régionaux et ces variables, voir Locale sur le wiki Ubuntu.

Ainsi, les variables suivantes définissent la langue des fichiers journaux sur l'espagnol :

LC_ALL=es_ES.UTF-8
LANG=es_ES.UTF-8

Vous pouvez choisir parmi les langues prises en charge suivantes :

Tableau 4. Langues prises en charge
Langue Valeur de jeu de caractères
Portugais brésilien pt_BR.UTF-8
Français fr_FR.UTF-8
allemand de_DE.UTF-8
Italien it_IT.UTF-8
Japonais ja_JP.UTF-8
Espagnol es_ES.UTF-8
Chinois simplifié zh_CN.UTF-8
Chinois traditionnel zh_TW.UTF-8

Définition du fuseau horaire des fichiers journaux

Vous pouvez modifier le fuseau horaire des messages qui apparaissent dans le fichier journal en configurant le fuseau horaire du conteneur. Pour configurer le fuseau horaire, définissez la variable d'environnement TZ sur le nom de zone correspondant de la base de données des fuseaux horaires de l'IANA (International Assigned Numbers Authority). Par exemple, la configuration suivante définit le fuseau horaire sur America/New_York.

TZ=America/New_York

Pour en savoir plus sur les fuseaux horaires de l'IANA, voir Base de données des fuseaux horaires.