web-dev-qa-db-fra.com

Comment afficher le contenu '/ var / log / syslog' sans crash

Pour diverses raisons, il est nécessaire que je consulte le journal de mon ordinateur dans /var/log/syslog, mais cela pose un problème car je ne suis pas en mesure de visualiser les journaux de ce fichier car, à chaque fois que je l’ouvre, quel programme j'utilise) il se bloque. Par exemple, si je l'ouvre dans nanoname__, geditname__, catname__, ou même dans le programme d'affichage du journal principal, j'obtiens un blocage tel que celui-ci car le fichier contient trop de données à charger:

Main log veiwer GUI crashed

Ma question est donc la suivante: comment visualiser syslogsans que le spectateur ne se bloque? Est-ce que je fais quelque chose de mal? Ou y a-t-il simplement une meilleure façon que tout le monde utilise et dont je ne suis pas au courant?


Informations sur le système d'exploitation:

Description:    Ubuntu 15.04
Release:    15.04
5
user364819

TL; DR:

Le problème était dû au fait que le fichier var/log/syslog était très volumineux, avec kernelname__, en particulier ufwvidant régulièrement de nombreux journaux UFW_AUDIT. Pour résoudre le problème, nous devons définir le LOGLEVELde ufwen tant que lowdans le fichier de configuration ufwname__: /etc/ufw/ufw.conf:

Sudo sed -i '/^LOGLEVEL/s/=.*/=low/' /etc/ufw/ufw.conf

De man ufw:

Loglevels above medium generate a lot of logging output, and may 
quickly fill up your disk. Loglevel medium may generate a lot of 
logging output on a busy system.

DÉTAILS:

Il peut y avoir plusieurs raisons pour lesquelles l'erreur

Stream has outstanding operation

est montré. Les deux fichiers les plus courants étant que la taille du fichier est trop importante pour être lue et que le contenu du fichier est inhabituel et ne peut pas être lu.

Au début, nous avons considéré la première cause: le fichier est trop gros (je vais montrer les étapes une par une comme nous l’avons fait):

  • Au début, nous devons vérifier le nombre de lignes présentes dans /var/log/syslog et il s’est avéré être assez inhabituel:

    $ wc -l /var/log/syslog
    1308061 /var/log/syslog
    
  • Comme le fichier contient 1308061 lignes, ce qui est assez volumineux, nous devons vérifier comment le logrorateest configuré pour rsyslogpar:

    sed -n '/\/var\/log\/syslog/,/^}$/p' /etc/logrotate.d/rsyslog
    

Cela a montré que /var/log/syslog alternera tous les jours avec les journaux de plus d'une semaine en cours de suppression, ce qui est la valeur par défaut.

  • Ensuite, nous devons vérifier /var/log/syslog pour voir quel processus écrit la plupart des journaux dans le fichier à l'aide de la commande:

    less /var/log/syslog | tr -s ' ' | cut -d' ' -f5 | sort | uniq -c | sort -rn
    

Cela nous montrera les processus écrits la plupart des lignes du fichier dans un ordre décroissant. Nous avons constaté que kernela écrit dans le fichier le plus élevé, le nombre étant très élevé (1761519). Le suivant est thermaldavec ses divers processus écrits environ 5K fois.

  • Considérant que 1kernel1 est à l'origine de cette anomalie, nous avons vérifié la présence d'un motif dans le /var/log/syslog qui se produit régulièrement comme suit:

    grep "kernel" /var/log/syslog | less 
    

et en a trouvé un qui était à propos de UFW AUDIT et qui écrivait très régulièrement dans le fichier journal.

  • ufwvidera ces messages si LOGLEVELest défini sur mediumet plus. Pour trouver la valeur actuelle:

    $ grep -i "^loglevel" /etc/ufw/ufw.conf
    LOGLEVEL=full
    

C’est la source du problème. Pour se débarrasser de ces messages ordinaires, il faut que ce soit LOGLEVEL=low, cela devrait suffire dans la plupart des cas. De man ufw:

low    logs all blocked packets not matching the default policy 
(with rate  limiting), as well as  packets  matching  logged rules.

Consultez la section LOGGINGde man ufw pour en savoir plus sur la journalisation ufwname__.

6
heemayl

Essayez less /var/log/syslog

Appuyez sur shift-f pour aller à la fin du fichier et surveiller les modifications telles que tail -f /var/log/syslog

Vous devriez voir votre fichier journal.

Il doit y avoir des ordures sur eux ou peut-être des problèmes de taille qui empêchent l'application Syslog de les afficher. Alors, renommez-le et essayez d'ouvrir à nouveau l'application Syslog. Vous devriez pouvoir voir votre nouveau fichier journal.

6
danb4r