Bonjour,
malgré le weekend qui arrive, les blocages surviennent toujours . Heureusement ce forum est là .
Bref, j'ai un petit souci par rapport à la sortie d'erreur standard STDERR.
Pour poser le contexte, j'ai un script perl qui appelle plusieurs librairies et à eux tous font le boulot demandé ^^. Ce script est lancé toutes les nuits.
A la fin nous avons différentes sorties donc les fichiers de log (warning, log et erreur).
Mon problème survient à chaque appel d'une commande shell, j'aimerai imprimer l'erreur dans un des fichiers log mais pas n'importe lequel ! J'aimerai l'imprimer dans le fichier XML.
Pour le moment je ne fais que imprimer toutes les erreurs dans un fichier texte tout ce qu'il y a de plus normal.
De ce fait au début de mon script perl j'ai
open(*STDERR, ">>", $file)
Mais si je l'imprime dans le fichier XML il manque forcément les balises nécessaires et bien sur la localisation dans la hiérarchie .
De plus pour ajouter en difficulté (enfin je suppose) ma commande shell est intégrée à un open.
Mieux que de la parlote un exemple :
open(TEST, "gunzip -c $testFile |")
J'ai un peu regardé sur le net et je suis tombé sur la librairie IPC::Open3, j'ai testé mais ne suis pas arrivé à imprimer dans mon XML.
J'ai une fonction toute prête pour passer mes erreurs perl (par exemple je replace le die par cette fonction) dans mon XML donc j'aimerai l'utiliser.
J'aimerai donc savoir si d'
- c'est possible de le faire sans trop me prendre la tête
- si oui une petite piste serait la bienvenue ^^.
J'espère avoir été assez claire !
Merci
Partager