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"