สังเกตล็อกไฟล์หลายไฟล์ในเอาต์พุตเดียว


60

มีวิธีง่ายๆในการทำสิ่งต่าง ๆ เช่นtail -f mylogfileแต่มีการเปลี่ยนแปลงมากกว่าหนึ่งไฟล์ที่แสดง (อาจมีการเพิ่มชื่อไฟล์เป็นคำนำหน้าในแต่ละบรรทัด)? หรืออาจเป็นเครื่องมือ GUI ฉันกำลังเรียกใช้ Debian



ขอบคุณสำหรับเคล็ดลับนั้น นี่เป็นเครื่องมือที่มีประโยชน์จริงๆ นอกจากนี้ยังสามารถตัดไฟล์ล้างหน้าจอด้วยทางลัดเดียวและอื่น ๆ
stofl

คำตอบ:


92

คุณเคยลองtail -f file1 file2ไหม ดูเหมือนจะทำสิ่งที่คุณต้องการอย่างน้อยที่สุดบนเครื่อง FreeBSD ของฉัน บางทีสิ่งtailที่มาพร้อมกับระบบ Debian ก็ทำได้เช่นกัน?


2
ใช่. มันได้ผล! ขอขอบคุณ. ฉันไม่เคยคาดหวังว่ามันจะง่าย
stofl

11
ฉันมักจะใช้-Fแทนเนื่องจากไฟล์จำนวนมากอาจถูกตัดทอนเนื่องจากฉันรีสตาร์ทโปรแกรมเซิร์ฟเวอร์
Arcege

10
คำสั่งผสมพารามิเตอร์ใหม่ที่ฉันโปรดปรานคือtail -qF *.log: -qเพื่อซ่อนชื่อไฟล์และ-Fตามที่ Arcege ชี้ให้tailทำตามชื่อแทนที่จะเป็น descriptor เพราะไฟล์บันทึกของฉันถูกหมุน
เดนิสเดรสเชอร์

ผ่านการตรวจสอบใน Ubuntu 16.04 LTS
Ricardo

มีข้อ จำกัด ในเรื่องนี้ ฉันมีโฟลเดอร์ที่มีไฟล์บันทึกการทำงานโดย PID สำหรับผู้ปฏิบัติงานที่เริ่มต้นสำหรับงานใหม่ทุกครั้งในคิว (PID จำนวนมาก) ถ้าฉันtail -f /var/log/folder/*ส่งคืนข้อผิดพลาด "ไม่สามารถเรียกใช้ / usr / bin / tail: รายการอาร์กิวเมนต์ยาวเกินไป"
flickerfly

3

ด้วยเหตุผลบางอย่างคำตอบในtail -f file1 file2หลาย ๆ สิ่งไม่ได้อยู่ในใจ

ฉันต้องการที่จะรู้ว่าสิ่งที่เกิดขึ้นในหลาย ๆ บันทึกล่าสุดของ 'ท้องถิ่น' โดยไม่คำนึงถึงลำดับเหตุการณ์ทั่วโลก

ในการทำเช่นนั้นฉันใช้บางอย่างที่มากกว่า watch -n1 tail -n10 file1 file2


1

สำหรับแบบฝึกหัดฉันเขียนยูทิลิตีโหนดขนาดเล็กที่ทำสิ่งเดียวกันกับ tail -f f1 f2 f3

Splex:

https://www.npmjs.com/package/splex

"อัพเกรด" หลักคือเส้นที่มีรหัสสีต่อชื่อไฟล์และคุณสามารถมีอินเตอร์เฟซเหมือนโต๊ะ

Improvemtn อีกอันที่จริงแล้วเหตุผลหลักที่ฉันเขียนนี้คือความสามารถในการมีไฟล์. splexrc.jsonในโฟลเดอร์ที่แตกต่างกันดังนั้นแทนที่จะต้องพิมพ์tail -f f1 f2 f3ในโฟลเดอร์เดียวจากนั้นจึงแตกต่างไฟล์ในไฟล์อื่นคุณสามารถเขียนไฟล์. splexrc.json ในรากของ โครงการของคุณและเพียงพิมพ์splexโดยไม่มีข้อโต้แย้งรายการไฟล์และมันจะสตรีมไฟล์บันทึกที่เกี่ยวข้องที่คุณระบุในไฟล์กำหนดค่าโดยอัตโนมัติ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.