IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Programmation et administration système Perl Discussion :

gestion des logs de mon démon


Sujet :

Programmation et administration système Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Expert technique
    Inscrit en
    Septembre 2003
    Messages
    328
    Détails du profil
    Informations personnelles :
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert technique

    Informations forums :
    Inscription : Septembre 2003
    Messages : 328
    Par défaut gestion des logs de mon démon
    Bonjour,

    J'ai trouvé un super module de gestion de log pour mon démon. Ca marche au poil SAUF que je renvonctre une difficulté dans le fichier log. A chaqe fin de ligne, voir même en plein milieu, j'ai un ^M qui apparaît :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    oû 12 12:28:28 [INFO] 127.0.0.1 -> [stop^M]: Stopping xxxxxx.
    1161 aoû 12 12:28:28 [INFO] 127.0.0.1 -> quit
    1162 aoû 12 12:28:28 [INFO] 127.0.0.1 -> [quit]: Bye bye
    1163 aoû 12 12:30:47 [INFO] Serveur Daemon est pret a recevoir des clients
    1164 aoû 12 12:30:51 [INFO] Connexion de 127.0.0.1
    1165 aoû 12 12:30:51 [INFO] 127.0.0.1 -> stop^M
    1166 aoû 12 12:30:51 [INFO] 127.0.0.1 -> [stop^M]: Stopping xxxxx.
    1167 aoû 12 12:30:51 [INFO] 127.0.0.1 -> quit
    1168 aoû 12 12:30:51 [INFO] 127.0.0.1 -> [quit]: Bye bye
    1169 aoû 12 12:31:26 [INFO] Serveur Daemon est pret a recevoir des clients
    1170 aoû 12 12:31:28 [INFO] Connexion de 127.0.0.1
    1171 aoû 12 12:31:28 [INFO] 127.0.0.1 -> stop^M
    1173 aoû 12 12:31:28 [INFO] 127.0.0.1 -> quit
    1174 aoû 12 12:31:28 [INFO] 127.0.0.1 -> [quit]: Bye bye
    Le pus bizarre, c'est que ça n'apparait pas sur toutes les lignes. Celles en "quit", ça marche bien. POur vous donner une idée dde ce démon, c'est un serveur TCP tournant sur le port 777 qui attends des connexions telnet. Une fois le client connecté, il a la possibilité d'envoyer des mot clés qui déclenchent une action sur le serveur avec des droits particuliers. Les lignes où il y a un ^M, sont en fait des exécution de tâches pré-définies dans le démon.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     # ecrit les logs
    sub set_log {
            my ($log,$logmsg,$level) = @_;
            $log->$level("$logmsg");
    }
    .....
    .....
    print $client "Bienvenue sur le serveur $serv_name\n";
    my $hostinfo = gethostbyaddr($client->peeraddr);
    &set_log($log,"Connexion de ".$client->peerhost,"info");
    while (<$client>) {
        my $action = $_;
        chomp ($action);
        &set_log($log,$client->peerhost." -> $_","info");
        next unless /\S/;
        if (/^quit/i) {
    	&set_log($log,$client->peerhost." -> [$action]: Bye bye","info");
    	print $client "Bye bye\n";
    	last;
       }
       elsif (/^stop/i) {
    	my $ret = `/etc/init.d/monappli stop`;
    	print $client $ret;
    	chomp ($ret);
    	&set_log($log,$client->peerhost." -> [$action]: $ret","info");
      }
    .......
    Auriez-vous une idée pour résoudre le souci ?

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2009
    Messages
    156
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 156
    Par défaut Retour à la ligne
    ^M correspond à un retour à la ligne Windows vu sous Unix
    (\n sous Unix, \r\n sous Windows).

    Tu ne serais pas sous un système Unix/Linux en train d'exécuter un programme écrit dans un éditeur sous Windows ?
    => dos2unix -ascii fichier.pl fichier.pl
    va te convertir au bon format ton script.

Discussions similaires

  1. Gestion des logs dans procédure SQL
    Par molarisapa dans le forum PostgreSQL
    Réponses: 0
    Dernier message: 16/06/2008, 17h59
  2. Gestion des logs sous Kettle
    Par souska dans le forum kettle/PDI
    Réponses: 6
    Dernier message: 16/06/2008, 09h16
  3. Quel SGBD a une bonne gestion des LOGs ?
    Par joker vb dans le forum Décisions SGBD
    Réponses: 12
    Dernier message: 03/04/2008, 17h17
  4. [Source][Ocx]composant gestion des logs
    Par Delbeke dans le forum Vos contributions VB6
    Réponses: 4
    Dernier message: 23/12/2007, 16h42
  5. Gestion des .log sous Oracle
    Par SANOORA dans le forum Administration
    Réponses: 10
    Dernier message: 08/11/2004, 09h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo