情報技術の四方山話

AI、IoT、ヤマハルータ、VPN、無線LAN、Linux、クラウド、仮想サーバと情報セキュリティのよもやま話

Linuxでsyslog:syslogを読んでみる

2018-10-31 01:00:01 | Linux

匠技術研究所


Linuxでsyslog:syslogを読んでみる


いつもアクセスありがとうございます。匠技術研究所の谷山 亮治です。
"syslog"とは、システムの稼働状況を記録する仕組みで、UNIX系OSやLinuxでは標準機能として備わっており、OS、ミドルウエアそしてアプリケーションの動作状況をログとして記録します。


syslogはどこにあるか


Linuxの場合、syslogは以下のディレクトリにあります。


$ ls /var/log alternatives.log apport.log.5.gz dpkg.log.12.gz lsyncd alternatives.log.1 apport.log.6.gz dpkg.log.2.gz lxc alternatives.log.10.gz apport.log.7.gz dpkg.log.3.gz lxd alternatives.log.11.gz apt dpkg.log.4.gz ntpstats alternatives.log.12.gz auth.log dpkg.log.5.gz syslog alternatives.log.2.gz auth.log.1 dpkg.log.6.gz syslog.1 alternatives.log.3.gz auth.log.2.gz dpkg.log.7.gz syslog.2.gz alternatives.log.4.gz auth.log.3.gz dpkg.log.8.gz syslog.3.gz alternatives.log.5.gz auth.log.4.gz dpkg.log.9.gz syslog.4.gz alternatives.log.6.gz bootstrap.log faillog syslog.5.gz alternatives.log.7.gz btmp fsck syslog.6.gz alternatives.log.8.gz btmp.1 installer syslog.7.gz alternatives.log.9.gz dist-upgrade kern.log unattended-upgrades apport.log dmesg kern.log.1 wtmp apport.log.1 dpkg.log kern.log.2.gz wtmp.1 apport.log.2.gz dpkg.log.1 kern.log.3.gz yum.log apport.log.3.gz dpkg.log.10.gz kern.log.4.gz apport.log.4.gz dpkg.log.11.gz lastlog $

syslogを読んでみる


各ログはテキストファイルです。なので、テキストを読むプログラムで出力します。ここではtailを使って最新のログを含む直近の10行を出力しています。


$ tail -n 10 /var/log/syslog Oct 31 00:11:04 cbkkawa01 systemd[1]: Starting User Manager for UID 1000... Oct 31 00:11:04 cbkkawa01 systemd[1]: Started Session 1124 of user takumi. Oct 31 00:11:04 cbkkawa01 systemd[29697]: Reached target Paths. Oct 31 00:11:04 cbkkawa01 systemd[29697]: Reached target Sockets. Oct 31 00:11:04 cbkkawa01 systemd[29697]: Reached target Timers. Oct 31 00:11:04 cbkkawa01 systemd[29697]: Reached target Basic System. Oct 31 00:11:04 cbkkawa01 systemd[29697]: Reached target Default. Oct 31 00:11:04 cbkkawa01 systemd[29697]: Startup finished in 46ms. Oct 31 00:11:04 cbkkawa01 systemd[1]: Started User Manager for UID 1000. Oct 31 00:17:01 cbkkawa01 CRON[30533]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) $

ログは、大量に記録されていることもあるので、全部を読みだすとたいへんです。今、何行あるかを知るにはwcを使って確認することができます。以下の例は心配するほどの量はありませんでした。


$ wc -l /var/log/syslog 91 /var/log/syslog $ wc -l /var/log/syslog.1 131 /var/log/syslog.1 $

Ubuntu 18.04 LTS環境では、syslogは定期的に圧縮保存されています。圧縮保存されているログを読むには、zcatを使うと、圧縮したままで内容を読むことができます。


$ zcat /var/log/syslog.2.gz | wc -l 134 $ zcat /var/log/syslog.2.gz | tail -n 10 Oct 29 05:35:51 cbkkawa01 smartd[1170]: Device: /dev/sde [SAT], SMART Usage Attribute: 194 Temperature_Celsius changed from 37 to 38 Oct 29 05:35:52 cbkkawa01 smartd[1170]: Device: /dev/sdf [SAT], SMART Usage Attribute: 190 Airflow_Temperature_Cel changed from 56 to 57 Oct 29 05:35:52 cbkkawa01 smartd[1170]: Device: /dev/sdf [SAT], SMART Usage Attribute: 194 Temperature_Celsius changed from 44 to 43 Oct 29 06:05:51 cbkkawa01 smartd[1170]: Device: /dev/sdd [SAT], SMART Usage Attribute: 194 Temperature_Celsius changed from 107 to 108 Oct 29 06:05:51 cbkkawa01 systemd[1]: Starting Daily apt upgrade and clean activities... Oct 29 06:05:51 cbkkawa01 smartd[1170]: Device: /dev/sde [SAT], SMART Usage Attribute: 190 Airflow_Temperature_Cel changed from 62 to 63 Oct 29 06:05:51 cbkkawa01 smartd[1170]: Device: /dev/sde [SAT], SMART Usage Attribute: 194 Temperature_Celsius changed from 38 to 37 Oct 29 06:05:57 cbkkawa01 systemd[1]: Started Daily apt upgrade and clean activities. Oct 29 06:17:01 cbkkawa01 CRON[30227]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Oct 29 06:25:01 cbkkawa01 CRON[31247]: (root) CMD (test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )) $

次回は、必要なログの抽出についてです。日時やログ文中のキーワードでログを抽出します。




この記事は、Microsoft VisualStudio Codeを使いmarkdown形式で記述しました。Codeのアドオン機能でHTML出力し、ブログの仕様に合わせて整形して掲載しています。



コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« IBMがLinuxの雄Red Hatを買収 | トップ | 10月30日(火)のつぶやき »
最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。

Linux」カテゴリの最新記事