Maison > Article > Opération et maintenance > Trois commandes pour afficher les journaux sous Linux
Les trois commandes permettant d'afficher les journaux sous Linux sont : 1. la commande tail, qui peut afficher les modifications du contenu des fichiers et des fichiers journaux en temps réel ; 2. la commande multitail, qui peut surveiller plusieurs fichiers journaux en même temps ; 3. less ; commande, Cette commande vous permet de voir rapidement les modifications apportées au journal sans encombrer l'écran.
L'environnement d'exploitation de ce tutoriel : système linux5.9.8, ordinateur Dell G3.
Quelles sont les trois commandes pour afficher les journaux sous Linux ?
3 façons d'afficher les journaux en temps réel sous Linux
Récemment, j'ai acheté un serveur cloud sur cnaaa.com.
Nous devrions tous savoir comment afficher les fichiers sous Linux, par exemple, vous pouvez utiliser la commande cat ou less.
C'est parfait pour afficher des fichiers statiques. Les fichiers journaux sont dynamiques et leur contenu peut changer à tout moment. Pour surveiller les fichiers journaux, vous devez pouvoir voir en temps réel quand le contenu des fichiers journaux change.
Alors comment visualiser les fichiers journaux en temps réel ? La commande tail est disponible. De plus, il existe d'autres outils. Cet article présentera ces outils permettant d'afficher les fichiers journaux en temps réel.
1. Utilisez la commande tail pour afficher le fichier journal
La commande tail est très largement utilisée, c'est pourquoi les administrateurs système utilisent souvent le mantra tail the log file (c'est-à-dire : tail the log file).
Dans la plupart des cas, la commande tail est utilisée pour afficher le contenu à la fin du fichier, elle est donc nommée tail.
Utilisez l'option -f pour suivre le contenu à la fin du fichier, ce qui signifie qu'il continuera à afficher le contenu nouvellement ajouté au fichier.
tail -f location_of_log_file
[Le transfert de l'image du lien externe a échoué. Le site source peut avoir un mécanisme anti-sangsue. Il est recommandé de sauvegarder l'image et de la télécharger directement (img-nzCWCjye-1664183028850)(D:/img/640.png). ]
Pour arrêter le fichier de journaux de suivi, vous pouvez utiliser la touche de raccourci ctrl + c.
tail
和 grep
Comme mentionné ci-dessus, la commande tail peut afficher les modifications apportées au contenu du fichier en temps réel. Cependant, lorsque le contenu du fichier est mis à jour très rapidement, le contenu nouvellement mis à jour défile. Dans ce cas, il n'est pas si pratique à visualiser.
Par exemple, lorsque nous suivons les fichiers journaux, nous surveillons souvent un terme spécifique (chaîne), ce qui est très peu pratique à suivre dans une grande quantité de contenu mis à jour rapidement.
Pour résoudre ce problème, nous pouvons combiner les commandes tail et grep. Comme indiqué ci-dessous :
tail -f log_file | grep search_term
[Le transfert de l'image du lien externe a échoué. Le site source peut avoir un mécanisme anti-sangsue. Il est recommandé de sauvegarder l'image et de la télécharger directement (img-LxXIylsU-1664183028854)(D:/img/. 640-1664179747239-1.png )]
Ça a l'air bien mieux ainsi, non ? Sur cette base, apportons quelques améliorations.
Utilisez grep pour afficher les termes de recherche. Les informations affichées sont relativement limitées. Il affiche uniquement les résultats de la recherche, nous utilisons donc souvent l'option -C pour afficher les premières et dernières lignes des résultats de recherche :
tail -f log_file | grep -C 3 search_term
De cette façon. , nous pouvons voir les résultats de recherche pertinents. Les lignes d'informations suivantes permettent de mieux suivre les informations du journal.
Vous souhaitez apporter des améliorations ? Vous pouvez utiliser grep pour plusieurs termes de recherche, puis le faire sans tenir compte de la casse :
tail -f log_file | grep -C 3 -i - E 'search_term_1|search_term_2'
Utilisez la rotation des journaux pour suivre les journaux
La plupart des serveurs d'entreprise, les journaux seront soumis à une rotation, c'est-à-dire que lorsque le fichier journal atteint une certaine taille, être renommé et compressé.
[Le transfert de l'image du lien externe a échoué. Le site source peut avoir un mécanisme anti-sangsue. Il est recommandé de sauvegarder l'image et de la télécharger directement (img-h2RUcofL-1664183028856)(D:/img/640-1664179747241-2. .png)]
Si le suivi des fichiers journaux en temps réel peut causer des problèmes. Par défaut, la commande tail fonctionne sur les descripteurs de fichiers. Si le fichier journal actuel subit une rotation, la commande tail pointera désormais vers un fichier journal archivé, qui n'enregistrera désormais aucune modification.
La solution est de tracer le fichier journal par son nom. De cette façon, même si une rotation du journal se produit, la queue pointera vers le fichier journal actuel (puisque son nom ne change jamais).
tail --follow=name log_file | grep -C 3 -i - E 'search_term_1|search_term_2'
tail est très approprié pour la surveillance en temps réel des fichiers journaux, mais la méthode ci-dessus ne surveille qu'un seul fichier journal. Que faire si vous souhaitez surveiller plusieurs fichiers journaux ? Veuillez consulter la section suivante.
Utilisez tail pour afficher plusieurs fichiers journaux
En travaillant sur un système Linux, vous pouvez utiliser la commande tail pour surveiller plusieurs fichiers journaux en même temps. Il vous suffit de fournir le chemin du fichier :
tail -f log_file_1 -f log_file_2
Avec ce qui précède. commande, vous verrez les fichiers journaux en temps réel Mise à jour, et il y aura un nom de fichier devant pour distinguer les différents fichiers journaux :
[Le transfert d'image du lien externe a échoué, le site source peut avoir un mécanisme anti-sangsue, c'est recommandé d'enregistrer l'image et de la télécharger directement (img-CMiWKszs-1664183028859) (D:/img/640-1664179747242-3.png)]
En plus de la méthode ci-dessus, il existe un autre moyen plus pratique, qui consiste à utilisez un outil appelé multitail.
2. Utilisez multitail pour surveiller plusieurs fichiers journaux en même temps
Comme son nom l'indique, multitail est utilisé pour afficher plusieurs fichiers en même temps.
Puisque tail peut surveiller plusieurs fichiers en même temps, quelle est la particularité du multitail ?
La beauté de multitail est qu'il peut afficher des fichiers en vue fractionnée et même afficher différents fichiers dans différentes lignes et colonnes.
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视频教程》
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!