Forum général.cherche-logiciel Rendre lisible les mails envoyés par fcron.

Posté par .
Tags : aucun
0
15
juil.
2010
Bonjour cher forum,
Afin de simplifier l'administration et le suivi de mes machines, j'ai installé, comme tout un chacun je pense, un gestionnaire de tâches automatiques (fcron), couplé à un serveur de mail (postfix+dovecot).
Il se trouve qu'un certain nombre de tâches, lorsqu'elles sont faites par le compte root au prompt ont une sortie colorisée, et c'est plutôt pratique et utile. Le problème qui m'intéresse présentement, c'est que lorsque ces tâches sont exécutées par fcron, leur sortie est interceptée et lorsque la tâche se termine un mail est envoyé automagiquement à root. Or, ces mails sont illisibles, car ils comportent tous les codes ansi qui changent la présentation dans un terminal. Je souhaiterai donc trouver une solution pour :
1) soit transformer automatiquement ces mails en une sortie html colorisée
2) au pire, supprimer tous ces codes ansi avant envoi, de façon à ce que les mails soient lisible quand même, quitte à perdre une partie des informations colorisées.

Comment procédez-vous, vous ? Auriez-vous un conseil à me donner, une appli en particulier à me conseiller plutôt qu'une autre ?
D'avance merci pour toute information utile en rapport avec ce problème.
  • # Un paramètre ?

    Posté par (page perso) . Évalué à 4.

    Salut,

    Je ne sais pas ce que tu effectues comme tâches mais ce ne serait pas possible de leur passer un paramètre (du style --color=no) afin de ne pas avoir une sortie colorée ?

    Si ce n'est pas possible, une manière un peu bourrine d'enlever les couleurs serait de filtrer la sortie à coup de sed (par exemple).

    Dans le cas où tu voudrais sortir sur du html coloré, il faudrait de toute façon transformer toute la sortie puisque la coloration est interprétable par ton shell et pas par ton client mail.
    • [^] # Re: Un paramètre ?

      Posté par . Évalué à 4.

      Pour l'option --color=no, normalement les bons programmes l'appliquent automatiquement pour les terminaux non interactifs !


      Pour la conversion des codes y'a bien un programme sh2html que tu pourrait intercaler entre cron et tes commandes, mais faudrait aussi modifier l'entête du mail pour changer le content type des données et j'ai rien trouvé dans la doc de fcron qui permette de faire ça !
      • [^] # Re: Un paramètre ?

        Posté par . Évalué à 2.

        D'abord merci à tous les deux pour vos réponses. On m'a tuyauté sur un shell qui transforme les couleurs ansi en contenu html qui fonctionne bien. Mais je me suis effectivement retrouvé avec un problème avec la commande mail. Bien que le contenu soit du html, il (le mail reçu) n'affiche que le code html, ce qui évidement ne convient pas.
        La commande lancée, pour l'instant, c'est eix-sync. Du coup, un truc que je pensais pouvoir réaliser simplement va se transformer en grosse usine à gaz, ce qu'évidement je ne souhaite pas. Je vais donc réfléchir à un autre moyen d'avoir ces informations de façon colorée.
        En tout cas, ça m'aura permis de découvrir quelques informations intéressantes sur tout ça.
        • [^] # Re: Un paramètre ?

          Posté par (page perso) . Évalué à 2.

          Bien que le contenu soit du html, il (le mail reçu) n'affiche que le code html, ce qui évidement ne convient pas.

          Là je pense à un champ Content-Type manquant dans les entêtes de ton mail (que tu devrais facilement pouvoir rajouter à la main, suivant ce que ton programme utilise pour envoyer un mail. Ton client mail, ne voyant pas de Content-Type, doit surement considérer que le mail est de type "text/plain" et pas "text/html" comme tu le voudrais.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.