Masquer les informations sensibles de connexion dans les logs d'exécution des tâches, dans Talend Management Console - Cloud

Guide d'utilisation de Talend Remote Engine pour Windows

Version
Cloud
Language
Français
Operating system
Windows
Product
Talend Cloud
Module
Talend Remote Engine
Content
Création et développement
Installation et mise à niveau
Last publication date
2024-02-26

À partir de la version 2.12.3 du moteur distant, si elles sont affichées dans les logs de Talend Management Console, les informations de connexion sont automatiquement masquées. Ces informations peuvent contenir des paramètres de connexion verrouillés dans Talend Management Console, comme l'hôte, le numéro de port ou encore l'identifiant.

Pourquoi et quand exécuter cette tâche

Si la version de votre moteur est comprise entre 2.10.8 et 2.12.2, ces informations ne sont pas automatiquement masquées. Vous devez effectuer les opérations suivantes pour configurer Talend Remote Engine pour les masquer dans les logs. Sinon, ignorez cette section.

Procédure

  1. Dans Talend Management Console, vérifiez que les paramètres de connexion à masquer dans les logs ont bien été verrouillés.
    Pour plus d'informations concernant les connexions dans Talend Management Console et le verrouillage d'un paramètre de connexion, consultez Définir des connexions personnalisées.
  2. Sur la machine où est installé votre moteur distant, parcourez votre système jusqu'au dossier <RemoteEngineInstallationDirectory>/etc et ouvrez le fichier org.talend.ipaas.rt.jobserver.client.cfg.
  3. Définissez la propriété job.log.msg.sensitive.hidden :
    job.log.msg.sensitive.hidden=true
  4. Sauvegardez le fichier.

Résultats

Cette modification est prise en compte directement, sans redémarrage du moteur. Les paramètres de connexion verrouillés sont masqués dans les logs d'exécution de la tâche dans Talend Management Console, par exemple :
Capture d'écran présentant les informations sensibles de connexion masquées.
Résolution de problèmes :

Masquer des informations sensibles de connexion peut augmenter l'utilisation du processeur et de la mémoire. C'est notamment le cas lorsque vous masquez de nombreuses informations alors que de nombreux logs se trouvent en mémoire.

Pour atténuer ce pic, ajustez les paramètres suivants :

  1. Parcourez votre système jusqu'au dossier <RemoteEngineInstallationDirectory>/etc et ouvrez le fichier org.talend.ipaas.rt.jobserver.client.cfg.
  2. Ajustez les valeurs comme suit :
    Le tableau suivant présente les paramètres utilisés pour ajuster la taille des lignes de log et le nombre d'événements de logs stockés :
    Paramètre Description
    job.log.msg.size.max Sa valeur par défaut est de 10000 caractères, taille maximale autorisée pour chaque ligne de log.

    En diminuant cette valeur pour limiter la taille de chaque ligne de log à gérer, vous tronquez chaque ligne de log afin de réduire la consommation de ressources.

    Si vous ne souhaitez pas tronquer vos logs, pensez à ajouter des ressources supplémentaires à votre moteur.

    job.log.msg.buffer.size.max Ce paramètre configure le nombre maximal d'événements de log pouvant être stockés de manière temporaire dans la mémoire, avec une valeur par défaut de 10000.

    Lorsque de nombreux événements de logs simultanés se produisent, cette taille maximale peut être atteinte, ce qui conduit à une perte de données de log. Pour empêcher cette perte, augmentez la taille de la mémoire tampon, et, de la même manière, allouez davantage de ressources mémoire à votre moteur.

    Remarque : Pour alléger la charge de la mémoire et du processeur, vous pouvez ajouter un paramètre thread.timeout permettant de spécifier le temps maximal d'exécution du traitement des logs avant expiration. La valeur par défaut est de 5 minutes, après lesquelles le traitement des logs s'arrête et les informations de contexte sont nettoyées. En diminuant cette valeur, vous libérez les ressources plus régulièrement. Cependant, gardez à l'esprit que les logs non traités sont perdus. Si ce risque vous incommode, pensez à ajouter des ressources à votre moteur.
    Lorsqu'un événement d'expiration timeout se produit, il est enregistré dans le log comme événement WARN. Une entrée de log de cet événement se présente comme suit :
    Force cleanup context for empty streamSet, executionId {}
  3. Chaque caractère nécessite deux octets de mémoire. Ainsi, lorsque vous calculez les ressources supplémentaires nécessaires au traitement des logs, le calcul est le suivant :
    • Pour 2 000 caractères sur chaque ligne de log et 2 000 événements de log, 80 Mo de mémoire sont requis.
    • Pour 20 000 caractères sur chaque ligne de log et 5 000 événements de log, 200 Mo de mémoire sont requis.
    • Pour 20 000 caractères sur chaque ligne de log et 20 000 événements de log, 800 Mo de mémoire sont requis.

    Après l'augmentation de l'allocation dans la machine hôte, si votre moteur a été déployé en tant que service système, personnalisez également la configuration de la JVM dans le fichier <RemoteEngineInstallationDirectory>/etc/talend-remote-engine-wrapper.conf.