Sobes.tech
Junior

Πώς να εξάγετε μόνο τα σφάλματα από το αρχείο καταγραφής στο VoIP;

sobes.tech AI

Απάντηση από AI

Μπορείτε να χρησιμοποιήσετε εργαλεία γραμμής εντολών για να φιλτράρετε το περιεχόμενο του αρχείου καταγραφής.

Για παράδειγμα, με grep:

# Φιλτράρετε γραμμές που περιέχουν τη λέξη "error" (χωρίς διακριτικότητας πεζών/κεφαλαίων)
grep -i "error" /μονοπάτι/προς/το/αρχείο/log/voip.log

# Φιλτράρετε γραμμές που περιέχουν μοτίβα σφαλμάτων
grep -E "ERROR|CRITICAL|FATAL" /μονοπάτι/προς/το/αρχείο/log/voip.log

Με awk:

# Φιλτράρετε γραμμές όπου το δεύτερο πεδίο (π.χ., επίπεδο καταγραφής) είναι ίσο με "ERROR"
awk '{ if ($2 == "ERROR") print }' /μονοπάτι/προς/το/αρχείο/log/voip.log

Με sed:

# Διαγράψτε γραμμές που ΔΕΝ περιέχουν τη λέξη "error"
sed -n '/error/Ip' /μονοπάτι/προς/το/αρχείο/log/voip.log

Η επιλογή του εργαλείου εξαρτάται από τη μορφή των αρχείων καταγραφής VoIP και την απαιτούμενη ακρίβεια φιλτραρίσματος. Συχνά, είναι χρήσιμο να συνδυάζετε εργαλεία, π.χ., χρησιμοποιώντας grep για αρχικό φιλτράρισμα και awk για περαιτέρω επεξεργασία ή εξαγωγή συγκεκριμένων πεδίων.

Για παράδειγμα, αν τα επίπεδα καταγραφής βρίσκονται στην αρχή κάθε γραμμής:

# Φιλτράρετε γραμμές που ξεκινούν με ERROR:
grep "^ERROR:" /μονοπάτι/προς/το/αρχείο/log/voip.log

# Φιλτράρετε γραμμές που ξεκινούν με ERROR:, CRITICAL: ή FATAL:
grep -E "^(ERROR|CRITICAL|FATAL):" /μονοπάτι/προς/το/αρχείο/log/voip.log

Εάν το αρχείο καταγραφής είναι πολύ μεγάλο, μπορείτε να χρησιμοποιήσετε zgrep για συμπιεσμένα αρχεία (.gz).

zgrep -i "error" /μονοπάτι/προς/το/αρχείο/log/voip.log.gz

Για παρακολούθηση σφαλμάτων σε πραγματικό χρόνο, μπορείτε να χρησιμοποιήσετε tail σε συνδυασμό με grep:

# Παρακολουθήστε τις νέες γραμμές στο αρχείο καταγραφής και εμφανίστε μόνο αυτές που περιέχουν "error"
tail -f /μονοπάτι/προς/το/αρχείο/log/voip.log | grep -i "error"