0%
Guide Complet des Commandes de Troubleshooting Serveur

Guide Complet des Commandes de Troubleshooting Serveur

Guide détaillé des commandes essentielles pour le troubleshooting de serveur, avec un focus sur la journalisation et l'analyse des logs.

I

InSkillCoach

· min

Guide Complet des Commandes de Troubleshooting Serveur

Guide détaillé des commandes essentielles pour le troubleshooting de serveur, avec un focus sur la journalisation.

Commandes de Base pour la Journalisation

1. Suivi des Logs en Temps Réel

# Suivi des logs système
tail -f /var/log/syslog

# Suivi des logs d'authentification
tail -f /var/log/auth.log

# Suivi des logs Apache
tail -f /var/log/apache2/access.log
tail -f /var/log/apache2/error.log

# Suivi des logs Nginx
tail -f /var/log/nginx/access.log
tail -f /var/log/nginx/error.log

# Suivi des logs MySQL
tail -f /var/log/mysql/error.log

2. Filtrage des Logs

# Filtrage par erreur
grep "ERROR" /var/log/syslog

# Filtrage par date
grep "$(date +%Y-%m-%d)" /var/log/syslog

# Filtrage avec contexte
grep -A 5 -B 5 "ERROR" /var/log/syslog

# Filtrage avec exclusion
grep -v "INFO" /var/log/syslog

# Filtrage avec comptage
grep -c "ERROR" /var/log/syslog

3. Analyse des Logs

# Affichage des dernières lignes
tail -n 100 /var/log/syslog

# Affichage des premières lignes
head -n 100 /var/log/syslog

# Affichage avec numérotation
cat -n /var/log/syslog

# Affichage avec coloration
grep --color=auto "ERROR" /var/log/syslog

# Affichage avec horodatage
awk '{print $1, $2, $3}' /var/log/syslog

Commandes Avancées de Journalisation

1. Analyse des Logs avec Awk

# Comptage des erreurs par heure
awk '{print $3}' /var/log/syslog | grep "ERROR" | sort | uniq -c

# Extraction des IPs des logs Apache
awk '{print $1}' /var/log/apache2/access.log | sort | uniq -c

# Analyse des codes de statut HTTP
awk '{print $9}' /var/log/apache2/access.log | sort | uniq -c

# Temps de réponse moyen
awk '{sum+=$10} END {print sum/NR}' /var/log/apache2/access.log

2. Analyse des Logs avec Sed

# Suppression des lignes vides
sed '/^$/d' /var/log/syslog

# Remplacement de texte
sed 's/ERROR/ERREUR/g' /var/log/syslog

# Extraction de lignes spécifiques
sed -n '100,200p' /var/log/syslog

# Suppression des lignes contenant un mot
sed '/ERROR/d' /var/log/syslog

3. Analyse des Logs avec Perl

# Extraction des erreurs avec contexte
perl -ne 'print if /ERROR/ .. /^$/;' /var/log/syslog

# Analyse des logs avec regex
perl -ne 'print if /(ERROR|WARNING)/' /var/log/syslog

# Formatage des logs
perl -pe 's/(\d{4}-\d{2}-\d{2})/$1/g' /var/log/syslog

Commandes de Monitoring Système

1. Surveillance des Ressources

# Surveillance CPU
top
htop
mpstat 1

# Surveillance mémoire
free -m
vmstat 1

# Surveillance disque
df -h
iostat 1

# Surveillance réseau
netstat -tulpn
iftop

2. Surveillance des Processus

# Liste des processus
ps aux

# Arbre des processus
pstree

# Détails des processus
lsof -i
lsof -p <PID>

# Priorité des processus
nice -n -20 <commande>

3. Surveillance des Services

# État des services
systemctl status <service>

# Logs des services
journalctl -u <service>

# Suivi des logs en temps réel
journalctl -u <service> -f

# Filtrage des logs par priorité
journalctl -p err

Commandes de Diagnostic

1. Diagnostic Réseau

# Test de connectivité
ping <host>
traceroute <host>

# Test de ports
nc -zv <host> <port>
telnet <host> <port>

# Analyse réseau
tcpdump -i eth0
wireshark

2. Diagnostic Système

# Informations système
uname -a
lsb_release -a

# Informations matérielles
lshw
dmidecode

# Informations réseau
ifconfig
ip addr

3. Diagnostic Performance

# Profilage système
strace <commande>
ltrace <commande>

# Analyse de performance
perf top
perf record

# Analyse de mémoire
valgrind <programme>

Bonnes Pratiques

  1. Organisation des Logs

    • Rotation régulière des logs
    • Compression des anciens logs
    • Archivage des logs importants
  2. Analyse des Logs

    • Mise en place de filtres
    • Création de rapports
    • Surveillance proactive
  3. Maintenance

    • Nettoyage régulier
    • Vérification des permissions
    • Mise à jour des configurations

Scripts Utiles

1. Script de Surveillance

#!/bin/bash
# Surveillance des logs en temps réel
tail -f /var/log/syslog | while read line; do
    if echo "$line" | grep -q "ERROR"; then
        echo "[$(date)] $line" >> /var/log/errors.log
    fi
done

2. Script d’Analyse

#!/bin/bash
# Analyse des logs Apache
awk '{print $1}' /var/log/apache2/access.log | sort | uniq -c | sort -nr | head -n 10

3. Script de Maintenance

#!/bin/bash
# Rotation des logs
find /var/log -type f -name "*.log" -mtime +7 -exec gzip {} \;

Conclusion

Le troubleshooting de serveur nécessite une bonne maîtrise des commandes de journalisation et d’analyse. Ce guide couvre les commandes essentielles et les techniques avancées pour une gestion efficace des logs.

Ressources Complémentaires

InSkillCoach

À propos de InSkillCoach

Expert en formation et technologies

Coach spécialisé dans les technologies avancées et l'IA, porté par GNeurone Inc.

Certifications:

  • AWS Certified Solutions Architect – Professional
  • Certifications Google Cloud
  • Microsoft Certified: DevOps Engineer Expert
  • Certified Kubernetes Administrator (CKA)
  • CompTIA Security+
1.6k
152

Commentaires

Les commentaires sont alimentés par GitHub Discussions

Connectez-vous avec GitHub pour participer à la discussion

Lien copié !