Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Tiga arahan untuk melihat log dalam Linux

Tiga arahan untuk melihat log dalam Linux

藏色散人
藏色散人asal
2023-01-04 14:00:556210semak imbas

Tiga perintah untuk melihat log dalam Linux ialah: 1. perintah ekor, yang boleh melihat perubahan dalam kandungan fail dan fail log dalam masa nyata 2. perintah berbilang ekor, yang boleh memantau berbilang fail log pada masa yang sama; ; 3. , arahan kurang, yang boleh melihat perubahan log dengan cepat tanpa mengacaukan skrin.

Tiga arahan untuk melihat log dalam Linux

Persekitaran pengendalian tutorial ini: sistem linux5.9.8, komputer Dell G3.

Apakah tiga arahan untuk melihat log dalam Linux?

3 cara untuk melihat log dalam masa nyata dalam Linux

Baru-baru ini saya membeli pelayan awan daripada cnaaa.com.

Kita semua harus tahu cara melihat fail dalam Linux, contohnya, anda boleh menggunakan perintah kucing atau kurang.

Ini bagus untuk melihat fail statik. Fail log adalah dinamik dan kandungannya boleh berubah pada bila-bila masa Untuk memantau fail log, anda perlu dapat melihat dalam masa nyata apabila kandungan fail log berubah.

Jadi bagaimana untuk melihat fail log dalam masa nyata? Perintah ekor tersedia Selain itu, terdapat alat lain Artikel ini akan memperkenalkan alat ini yang boleh melihat fail log dalam masa nyata.

1. Gunakan arahan ekor untuk melihat fail log

Arahan ekor digunakan secara meluas, jadi pentadbir sistem sering menggunakan fail log ekor mantra (iaitu : ekor fail log) .

Dalam kebanyakan kes, arahan ekor digunakan untuk melihat kandungan di hujung fail, jadi ia dinamakan ekor.

Gunakan pilihan -f untuk menjejaki kandungan pada penghujung fail, yang bermaksud ia akan terus memaparkan kandungan yang baru ditambahkan pada fail.

tail -f location_of_log_file

[Pemindahan imej pautan luar gagal Tapak sumber mungkin mempunyai mekanisme anti-lintah. Adalah disyorkan untuk menyimpan imej dan memuat naiknya terus (img-nzCWCjye-1664183028850)(D:/. img/640.png)]

Untuk berhenti menjejaki fail log, anda boleh menggunakan kekunci pintasan ctrl +c.

tail dan grep

Seperti yang dinyatakan di atas, arahan ekor boleh melihat perubahan dalam kandungan fail dalam masa nyata. Walau bagaimanapun, apabila kandungan fail dikemas kini dengan cepat, kandungan yang baru dikemas kini berkelip dalam kes ini, ia tidak begitu mudah untuk dilihat.

Sebagai contoh, apabila kami menjejaki fail log, kami sering memantau istilah tertentu (rentetan), yang sangat menyusahkan untuk menjejaki dalam jumlah besar kandungan yang dikemas kini dengan pantas.

Untuk menyelesaikan masalah ini, kita boleh menggabungkan perintah ekor dan grep. Seperti yang ditunjukkan di bawah:

tail -f log_file | grep search_term

[Pemindahan imej pautan luar gagal. Tapak sumber mungkin mempunyai mekanisme anti-leeching. Adalah disyorkan untuk menyimpan imej dan memuat naiknya terus (img-LxXIylsU-1664183028854). (D:/img/640 -1664179747239-1.png)]

Ini kelihatan lebih baik, bukan? Atas dasar ini, marilah kita membuat beberapa penambahbaikan.

Gunakan grep untuk memaparkan istilah carian Maklumat yang dipaparkan agak terhad Ia hanya memaparkan hasil carian, jadi kami sering menggunakan pilihan -C untuk memaparkan beberapa baris pertama dan terakhir hasil carian:

tail -f log_file | grep -C 3 search_term
Dengan cara ini , kita boleh melihat baris maklumat sebelum dan seterusnya yang berkaitan dengan hasil carian, dan boleh menjejaki maklumat log dengan lebih baik.

Ingin membuat beberapa penambahbaikan? Anda boleh menggunakan grep untuk berbilang istilah carian dan kemudian lakukannya secara tidak peka huruf besar-kecil:

tail -f log_file | grep -C 3 -i - E 'search_term_1|search_term_2'
Gunakan putaran log untuk menjejak log

Pada kebanyakan pelayan perusahaan, log diputar , iaitu apabila fail log mencapai saiz tertentu, ia akan dinamakan semula dan dimampatkan.

[Pemindahan imej pautan luar gagal. Tapak sumber mungkin mempunyai mekanisme anti-leeching. Adalah disyorkan untuk menyimpan imej dan memuat naiknya secara terus (img-h2RUcofL-1664183028856) (D:/img/640. -1664179747241-2.png) ]

Ini boleh menyebabkan masalah jika fail log dijejaki dalam masa nyata. Secara lalai, arahan ekor berfungsi pada deskriptor fail. Jika fail log semasa diputar, arahan ekor kini akan menunjuk ke fail log yang diarkibkan, yang kini tidak akan log perubahan.

Penyelesaian adalah untuk menjejaki fail log dengan namanya. Dengan cara ini, walaupun putaran log berlaku, ekor akan menghala ke fail log semasa (kerana namanya tidak pernah berubah).

tail --follow=name log_file | grep -C 3 -i - E 'search_term_1|search_term_2'
tail sangat sesuai untuk pemantauan masa nyata fail log, tetapi kaedah di atas hanya memantau satu fail log. Bagaimana jika anda ingin memantau berbilang fail log? Sila lihat bahagian seterusnya.

Gunakan ekor untuk melihat berbilang fail log

Berfungsi dalam sistem Linux, anda boleh menggunakan arahan ekor untuk memantau berbilang fail log pada masa yang sama Anda hanya perlu menyediakan laluan fail:

tail -f log_file_1 -f log_file_2
Dengan arahan di atas, anda akan melihat kemas kini fail log dalam masa nyata, dan akan ada nama fail di hadapan untuk membezakan fail log yang berbeza:

[Pemindahan imej pautan luar gagal, tapak sumber mungkin mempunyai mekanisme Anti-leeching, adalah disyorkan untuk menyimpan gambar dan memuat naiknya terus (img-CMiWKszs-1664183028859)(D:/img/640-1664179747242-3.png)]

Selain kaedah di atas, terdapat satu lagi kaedah yang lebih mudah Caranya ialah menggunakan alat yang dipanggil multitail.

2. Gunakan multitail untuk memantau berbilang fail log pada masa yang sama

Seperti namanya, multitail digunakan untuk memaparkan berbilang fail pada masa yang sama.

Memandangkan tail boleh memantau berbilang fail pada masa yang sama, apakah yang istimewa tentang multitail?

Keindahan multitail ialah ia boleh memaparkan fail dalam paparan berpecah malah memaparkan fail berbeza dalam baris dan lajur yang berbeza.

tail 在同一视图中显示所有内容,所以有时候很难跟踪,multitail 通过提供类似 screen 命令的分割视图来克服了这一困难。

注意,multitail 在大多数Linux系统中没有被默认安装,所以在使用前需要先手动安装。

在 multitail 命令后跟文件路径,最好一次不要超过3个,因为超过3个或以上,跟踪起来就比较困难了。

multitail log_file_1 log_file_2

默认情况下,multitail 的工作方式与 tail -f 相同,它显示最后100行,然后进入实时监视视图;另外,它按行来拆分视图。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EZ9iX4d3-1664183028861)(D:/img/640-1664179747242-4.png)]

你可以按 b 键打开一个文件选择窗口,选择某个日志文件查看,以做进一步分析。

分割视图使用 -s 选项,后面跟一个数字,即视图的数量:

multitail -s 2 log_file_1 log_file_2

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ETQjV0KA-1664183028863)(D:/img/640-1664179747243-5.png)]

按 q 键可退出 multitail 所有的视图。

multitail 可以做的还有很多,大家感兴趣可以查看一下它的官方文档,本文就不继续介绍了。

3. 使用 less 命令实时查看日志文件

less 命令多用于读取文本文件,也可用于读取实时被更改的文件。

选项 +F 可以实时跟踪文件的更改:

less +F log_file

上述命令会打开日志文件,并实时显示正在写入的更改:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oDZivgss-1664183028865)(D:/img/640-1664179747243-6.png)]

按 ctrl +c 中断显示,按 q 会退出视图。

与 tail 命令不同,此方法可以让我们快速查看日志的更改,而不会使屏幕混乱。

上述监视日志的方法适用于传统的基于文本的日志文件。对于系统日志,可以使用 syslogs,但是现在许多 Linux 发行版已经开始使用 journal 日志来查看和分析日志,所以需要使用 journalctl 命令。

推荐学习:《Linux视频教程

Atas ialah kandungan terperinci Tiga arahan untuk melihat log dalam Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn