คำถามติดแท็ก logs

การกำหนดค่าหรือวิเคราะห์ล็อกไฟล์ (ไฟล์ข้อความที่ข้อผิดพลาดของโปรแกรมส่งออกและข้อความที่ให้ข้อมูลมีประโยชน์สำหรับการดีบักและแก้ไขปัญหา)

2
วิธีดูล็อกแบบเต็มจากบริการสถานะ systemctl
systemctl status service-nameผมตรวจสอบสถานะการให้บริการกับ ตามค่าเริ่มต้นฉันเห็นเพียงไม่กี่แถวเท่านั้นดังนั้นฉันจึง-n50ต้องการดูเพิ่มเติม บางครั้งฉันต้องการที่จะเห็นบันทึกเต็มรูปแบบตั้งแต่เริ่มต้น มันอาจมี 1,000 แถว ตอนนี้ฉันตรวจสอบด้วย-n10000แต่มันก็ดูไม่เป็นระเบียบเรียบร้อย มีตัวเลือกในการตรวจสอบบันทึกการบริการ systemd แบบเต็มคล้ายกับlessคำสั่งหรือไม่
346 logs  systemd 

4
บันทึกการเข้าถึงไฟล์ของ Apache อยู่ที่ไหน
ไม่มีใครรู้ว่าที่เก็บไฟล์บันทึกการเข้าถึงดังนั้นฉันสามารถเรียกใช้tail -fคำสั่งเพื่อดูว่าใครกำลังเข้าถึงไฟล์เฉพาะ ฉันมี XAMPP ซึ่งเป็นเซิร์ฟเวอร์ Apache ติดตั้งในเครื่องของฉันซึ่งจะบันทึกการเข้าถึงโดยอัตโนมัติ มันถูกเก็บไว้ในโฟลเดอร์การติดตั้งของฉัน
180 files  logs  syslog 

2
ดู stdout / stderr ของบริการ systemd
ฉันสร้างไฟล์เซอร์วิส systemd อย่างง่ายสำหรับแอปพลิเคชันที่กำหนดเอง แอปพลิเคชั่นทำงานได้ดีเมื่อฉันเรียกใช้ด้วยตนเอง แต่ CPU ของฉันเต็มเมื่อใช้งานกับ systemd ฉันพยายามติดตามว่าปัญหาของฉันอยู่ที่ไหน แต่ฉันไม่รู้ว่าจะหาผลลัพธ์ได้จากที่ไหน นี่คือไฟล์บริการของฉัน: [Unit] Description=Syncs files with a server when they change Wants=network.target After=network.target [Service] ExecStart=/usr/local/bin/filesync-client --port 2500 WorkingDirectory=/usr/local/lib/node_modules/filesync-client Restart=always [Install] WantedBy=multi-user.target ตลอดทั้งแอปพลิเคชันฉันส่งออกไปยัง stdout และ stderr ฉันจะอ่านผลลัพธ์ของภูตของฉันได้อย่างไร แก้ไข: ฉันพบman systemd.execซึ่งกล่าวถึงStandardOutput=ตัวเลือก แต่ฉันไม่แน่ใจว่าจะใช้งานอย่างไร จากหน้าคน : StandardOutput= ควบคุมว่า file descriptor 1 (STDOUT) ของกระบวนการที่ดำเนินการเชื่อมต่ออยู่ ใช้เวลาหนึ่งของมรดก , …


7
ฉันจะเห็นเอาต์พุต dmesg ขณะที่มันเปลี่ยนแปลงได้อย่างไร?
ฉันกำลังเขียนไดรเวอร์อุปกรณ์ที่พิมพ์ข้อความแสดงข้อผิดพลาดลงในเอาต์พุตริงบัฟเฟอร์ dmesg ฉันต้องการที่จะเห็นผลลัพธ์ของdmesgมันในขณะที่การเปลี่ยนแปลง ฉันจะทำสิ่งนี้ได้อย่างไร

3
ค้นหาและลบไฟล์ขนาดใหญ่ที่เปิดอยู่ แต่ถูกลบไปแล้ว
จะพบไฟล์ขนาดใหญ่ที่ถูกลบ แต่ยังคงเปิดอยู่ในแอปพลิเคชั่นได้อย่างไร? เราจะลบไฟล์นั้นออกได้อย่างไรแม้ว่ากระบวนการจะเปิดขึ้นมาก็ตาม สถานการณ์คือเรากำลังเรียกใช้กระบวนการที่เติมไฟล์บันทึกในอัตราที่ยอดเยี่ยม ฉันรู้เหตุผลและฉันสามารถแก้ไขได้ ก่อนหน้านี้ฉันต้องการ rm หรือล้างไฟล์บันทึกโดยไม่ต้องปิดกระบวนการ เพียงแค่ทำการrm output.logลบการอ้างอิงไปยังไฟล์เท่านั้น แต่จะยังคงใช้พื้นที่บนดิสก์ต่อไปจนกว่ากระบวนการจะสิ้นสุดลง แย่ลง: หลังจากrmวันนี้ฉันไม่มีทางที่จะค้นหาไฟล์หรือว่ามันใหญ่แค่ไหน! มีวิธีใดในการค้นหาไฟล์และอาจทำให้มันว่างเปล่าแม้ว่ามันจะยังคงเปิดอยู่ในกระบวนการอื่นหรือไม่? ฉันอ้างถึงระบบปฏิบัติการบน Linux เป็นพิเศษเช่น Debian หรือ RHEL

5
วิธีการตรวจสอบเฉพาะ n บรรทัดสุดท้ายของไฟล์บันทึก
ฉันมีล็อกไฟล์ที่กำลังเติบโตซึ่งฉันต้องการแสดงเฉพาะ 15 บรรทัดสุดท้าย นี่คือสิ่งที่ฉันรู้ว่าฉันสามารถทำได้: tail -n 15 -F mylogfile.txt เมื่อไฟล์บันทึกถูกเติมให้tailผนวกบรรทัดสุดท้ายเข้ากับจอแสดงผล ฉันกำลังมองหาวิธีแก้ปัญหาที่แสดงเฉพาะ 15 บรรทัดสุดท้ายและกำจัดบรรทัดก่อน 15 บรรทัดสุดท้ายหลังจากได้รับการอัพเดต คุณมีความคิดไหม?
110 logs  monitoring  tail 

1
วิธีทำ `tail -f` ของไฟล์บันทึกที่หมุนแล้ว?
บนระบบที่ใช้เวลานานฉันมักจะมีเทอร์มินัล $ tail -f /var/log/kern.log หรืออะไรทำนองนี้ที่เปิดอยู่ แต่ในบางครั้งฉันต้องรีสตาร์ทคำสั่งดังกล่าวเพราะไม่มีข้อความใหม่ปรากฏขึ้นอีก ฉันคิดว่าเป็นเพราะงานหมุนบันทึกที่แทนที่ไฟล์บันทึกtail -fคือ 'ดู' ฉันจะหลีกเลี่ยงปัญหาการเริ่มต้นใหม่นี้ได้อย่างไร ฉันสามารถเรียกtailเช่นนี้เพื่อสังเกตกระบวนการหมุนและทำสิ่งที่ถูกต้องได้หรือไม่? (ฉันสังเกตเห็นปัญหานี้ในระบบ Ubuntu 11.04 ที่ใช้เป็นrsyslogdค่าเริ่มต้น)
106 logs  tail  logrotate  rsyslog 

11
วิธีการค้นหาจากบันทึกสิ่งที่ทำให้เกิดการปิดระบบ?
เช่นฉันเห็นสิ่งนี้ใน/var/log/messages: Mar 01 23:12:34 hostname shutdown: shutting down for system halt มีวิธีหาสาเหตุที่ทำให้เกิดการปิดระบบหรือไม่ เช่นมีการเรียกใช้จากคอนโซลหรือมีคนกดปุ่มเปิด / ปิด ฯลฯ ?
104 logs  shutdown 


7
การบันทึกการพยายามเข้าถึง SSH
ฉันได้กำหนดค่าเซิร์ฟเวอร์อูบุนตูด้วย openssh เพื่อเชื่อมต่อกับมันและรันคำสั่งจากระบบระยะไกลเช่นโทรศัพท์หรือแล็ปท็อป ปัญหาคือ ... ฉันอาจไม่ใช่คนเดียว มีวิธีที่จะทราบความพยายามในการเข้าสู่ระบบทั้งหมดที่ทำกับเซิร์ฟเวอร์หรือไม่?
60 ssh  logs 

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

3
grep ภายในน้อยลงหรือไม่
ขณะนี้ฉันกำลังตรวจสอบบันทึกที่ไม่คุ้นเคยจำนวนมากเพื่อค้นหาปัญหาบางอย่าง ไฟล์แรกที่ฉันดูคือ Events.log และฉันได้รับอย่างน้อยสามหน้าlessซึ่งดูเหมือนจะแสดงเหตุการณ์เดียวกันในเวลาที่ต่างกัน - เหตุการณ์ที่ดูเหมือนจะไม่เป็นธรรม ฉันต้องการที่จะกรองเหตุการณ์นี้ออกและตอนนี้ฉันออกlessและทำอะไรบางอย่างเช่น grep -v "event text" Events.log | less ตอนนี้นำเหตุการณ์ทั่วไปที่ไม่น่าสนใจอื่น ๆ จำนวนมากที่ฉันต้องการกรองออก มีวิธีที่ฉันสามารถgrep -v อยู่ข้างในของless? แทนที่จะต้องทำ egrep -v "event text|something else|the other thing|foo|bar" Events.log | less มันทำให้ฉันเป็นคุณลักษณะที่มีประโยชน์เมื่อดูแฟ้มบันทึกชนิดใด - และถ้าlessไม่ใช่เครื่องมือมีคุณสมบัติอื่นที่ฉันต้องการหรือไม่ เพียงแค่lessผู้ชมสไตล์ที่มีในgrepตัว
58 bash  grep  logs  less 

5
บันทึก sshd ของฉันอยู่ที่ไหน
ฉันหาบันทึก sshd ของฉันไม่ได้ในที่มาตรฐาน สิ่งที่ฉันได้ลอง: ไม่เข้า /var/log/auth.log ไม่เข้า /var/log/secure ระบบค้นหา'auth.log'และพบว่าไม่มีอะไร ฉันได้ตั้ง/etc/ssh/sshd_configการใช้งานอย่างชัดเจนSyslogFacility AUTHและLogLevel INFOและเริ่มต้นใหม่ sshd และยังไม่สามารถหาพวกเขา ฉันใช้ OpenSSH 6.5p1-2 บน Arch Linux

7
ฉันสามารถหาคีย์ ssh ที่ใช้ในการเข้าถึงบัญชีได้หรือไม่?
เป็นไปได้ไหมที่จะใช้คีย์ ssh ที่ใช้ในการเข้าถึงบัญชี ฉันมีบัญชีบนเซิร์ฟเวอร์ที่ให้คน (เชื่อถือได้) หลายคนเข้าถึงผ่าน ssh ฉันคิดว่ามันมีประโยชน์ที่จะรู้ว่าใครเข้าระบบและเมื่อไหร่ ฉันมีสิทธิ์เข้าถึงรูทดังนั้นฉันจึงสามารถดูบันทึกได้ แต่ดูเหมือนจะไม่มีอะไรเลย มีสวิตช์การกำหนดค่าบางอย่างที่จะใช้ในการระบุคีย์ในบันทึกหรือไม่

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