pyTee est un script Python reproduisant le comportement de la commande tee.
En plus de la redirection de la sortie standard vers un ou plusieurs fichiers,
pyTee assure la conversion en HTML ou en texte brut (en fonction du nom du
fichier de destination) des codes couleurs ANSI.
pyTee peut également envoyer les traces par mail, en insérant automatiquement
les plus importantes (mots-clés ERROR, ERREUR, WARNING, AVERTISSEMENT, ATTENTION) en début de mail, et en joignant des fichiers au mail.
pyTee a été testé avec Python 2.7 et 3.4 sous Ubuntu 14.04, avec Python 3.3 sous Windows 8.1 et avec Python 2.7 et 3.2 sous Cygwin.
Licence : CeCILL-B
Installation
- décompressez l’archive,
- copiez le fichier src/pyTee.py à l’emplacement de votre choix,
- assurez-vous que le fichier pyTee.py est exécutable,
- modifier si nécessaire la première ligne du fichier pour renseigner l’emplacement de votre exécutable Python (notamment si vous utilisez Python 2).
Configuration
Éditez le fichier pyTee.py pour modifier ses variables de configuration :
- DEFAULT_TXT_COLOR : la couleur par défaut du texte pour la sortie HTML, soit
sous forme de code ANSI, soit sous forme de couleur CSS, - DEFAULT_BG_COLOR : la couleur par défaut du fond pour la sortie HTML, soit
sous forme de code ANSI, soit sous forme de couleur CSS, - SMTP_HOST : l’adresse du serveur SMTP à utiliser pour l’envoi des mails,
- SMTP_PORT : le port du serveur SMTP à utiliser pour l’envoi des mails,
- SMTP_USER : l’identifiant utilisateur sur le serveur SMTP à utiliser pour
l’envoi des mails, - SMTP_PASS : le mote de passe sur le serveur SMTP à utiliser pour l’envoi des
mails, - FORMATS_REGEXP : les expressions régulières décrivant les noms de fichiers à
sortir automatiquement en texte brut ou en HTML, - WARN_REGEXP : l’expression régulière pour détecter les messages
d’avertissement, - ERR_REGEXP : l’expression régulière pour détecter les messages d’erreur,
- COLORS_RGB : les correspondances en RGP pour les différentes couleurs ANSI,
- HTML_HEAD : l’en-tête à ajouter aux fichiers HTML,
- HTML_FOOT : le pied de page à ajouter aux fichiers HTML.
Utilisation
Pour utiliser pyTee, redirigez une sortie standard vers l’entrée standard de pyTee, en l’appelant avec les paramètres de ligne de commande suivants :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
pyTee [--help] [-a|--append] [(-f |-format=)FORMAT] [-n|--no-colors] [-q|--quiet] [(-t |--title=)TITRE] [--to=DESTINATAIRE] [--from=EXPEDITEUR] [--attach=FICHIER] [FICHIER ...] -a, --append Ajoute le contenu aux fichiers au lieu de l'écraser. -f, --format Spéficie le format de fichier à utiliser : * raw : reporte toute l'entrée dans le fichier, y compris les couleurs * html : converti l'entrée en HTML avec couleurs en CSS * plain : converti l'entrée en texte brut sans couleurs * auto (défaut) : choisi le format en fonction de l'extension du fichier (html pour .html et .htm, plain pour .log, raw pour le reste) -n, --no-colors Supprime les couleurs sur la sortie standard. -t, --title Défini le titre des fichiers HTML et/ou du mail. --to Défini le destinataire de l'envoi par mail. Si un destinataire est défini sans expéditeur, le destinataire sera aussi utilisé comme expéditeur. --from Défini l'expéditeur de l'envoi par mail. Si un expéditeur est défini sans destinataire, le mail ne sera pas envoyé. -q, --quiet Ne recopie pas l'entrée standard vers la sortie standard. --attach Ajoute le fichier spécifié en pièce jointe du mail |
- 07/06/2015 r5 : première version publique.
- ajouter une option pour horodater automatiquement chaque ligne
- ajouter une option pour envoyer le mail uniquement en cas d’erreur ou d’alerte
- permettre de désactiver le regroupement des erreurs
- permettre de limiter la consommation mémoire
- utiliser sendmail en cas d’échec de connexion SMTP