日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux系统日志的查看和采集

發布時間:2024/3/26 linux 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux系统日志的查看和采集 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我們首先要明白,日志是程序本身產生的,那么日志儲存在哪里,該如何查看呢?

一、查看日志

先來了解以下日志的類型和日志的級別。

1.日志的類型

auth ##pam產生的日志 suthpriv ##ssh,ftp等登陸信息的驗證信息 cron ##時間任務相關 kern ##內核 lpr ##打印 mail ##郵件 mark(syslog)-rlog ##服務內部的信息,時間標識 news ##新聞組 user ##用戶程序產生的相關信息 uucp ##unix to unix copy,unix主機之間相關的通訊 local 1~7 ##自定義的日志設備

2.日志的級別

debug ##有調式信息的,日志信息最多 info ##一般信息的日志,最常用 notice ##最具有重要性的普通條件的信息 warning ##警告級別 err ##錯誤級別,阻止某個功能或者模塊不能正常工作的信息 crit ##嚴重級別,阻止整個系統或軟件不能正常工作的信息 alert ##需要立刻修改的信息 emerg ##內核崩潰等嚴重信息 none ##什么都不記錄

注意:從上到小,級別從低到高,記錄的信息越來越少。
3.系統產生的日志在/var/log下,分類有:服務信息messages、服務認證secure、郵件服務日志maillog、定時日志cron等。

[root@node2 ~]# cat /var/log/messages

上條命令可以查看日志中的服務日志。

二、采集日志

如果我們要采集一些主機里的日志信息時,需要完成以下的步驟,這里我將ip為172.25.254.130的node1作為管理日志方(以下稱為接受方),將ip為172.25.254.230的node2作為發送日志的一方(以下成為發送方):

接受方:
1.使用 systemctl stop firewalld關閉火墻
2.使用vim /etc/rsyslog.conf編輯日志文件,讓日志接口打開(把第15、16行的注釋去掉)


3.使用systemctl restart rsyslog.service重啟

發送方:
1.使用vim /etc/rsyslog.conf編輯日志文件,在RULES下面添加發送端的ip,如圖


2.使用systemctl restart rsyslog.service重啟
3.使用>/var/log/messages清除日志,方便等下測試
4.建立一個測試日志logger test,在接受方使用cat /var/log/messages查看

如果出現/etc/rc.d/rc.local等文件的話,使用> /etc/rc.d/rc.local 然后reboot,然后重新連接退出的這個id:ssh @ip,重新測驗:logger westos,之后使用cat查看:cat /var/log/messages,可以發現/etc/rc.d/rc.local等文件沒了。

既然node1采集的是node2的日志,那么日志時間應該和node2的一致,但是在完成以上操作時,發現node1接受到的日志時間和node2是不一致的。

此時需要將采集日志的格式進行規定,同時同步時間。

  • 1 設定日志格式

    vim /etc/rsyslog.conf
    進去后在rules下一行加:
    $template WESTOS,"%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n",并且要在57行最后加上;WESTOS
    重啟:
    systemctl restart rsyslog.service
    之后就可以使用WESTOS了
    如下圖:

  • 2 同步時間
    1.先在接收端編輯:
    vim /etc/chrony.conf
    在第22行修改:
    allow 172.25.254/24

    重啟:
    systemctl restart chronyd.service
    2.在發送端編輯:
    vim /etc/chrony.conf
    編輯第3行,改成:
    server 172.25.254.130 iburst


    編輯第26行 打開ocal stratum 10這一行


重啟:
systemctl restart chronyd.service

  • 3 怎么查看發送端是否和接收端的時間同步
    在發送方使用:
    chronyc sources -v 來進行查看

    發現左下角有172.25.254.130,說明時間同步了。

如果在接收端重新更改時間,需要在發送端先重啟一下
此時發送端不會同步更改后的時間,也需要同步一下并稍微等待一會兒

三、手動設置時間信息timedatectl

使用date查看時間信息,有時候時間信息會和硬件時間不一致。

1.設置時區(本地時間)
1)先使用:
timedatectl list-timezones來查看時區

2)再用:
timedatectl set-timezone Asia/Shanghai設置時區


2.重新查看timedatectl

#bios time 硬件時間#
為了讓硬件時間是本地時間
1)timedatectl set-local-rtc 0(先關閉)
timedatectl查看各個時間
2)timedatectl set-local-rtc 1(再開啟)
timedatectl查看

更改時間
1)timedatectl set-time "2018-11-14 09:25:11"
2)使用date查看

四、使用journalctl采集目錄

使用journalctl -n 5查看最新的5條
按時間查看日志

從某個時間開始 journalctl --since 09:20

某時刻到某時刻 journalctl --since 09:20 --until 09:01:50

錯誤日志 journalctl -p err

有時候使用systemctl status sshd 查看服務信息時,(如下圖ssh的id是1213)

當我使用systemctl restart sshd.service重啟服務后,
再使用systemctl status sshd,(如下圖,發現id改變了)

id改變,journalctl查看的是哪一次的操作不清楚
可以查看所有日志詳細參數 journalctl -o verbose

查看之后可以輸入自己想看的id信息,
比如journalctl _PID=30053 _COMM=sshd

##采集目錄

因為關機之后日志會被釋放,所以要建一個journal目錄來保存日志

1)mkdir /var/log/journal/
2)查看journal權限ll -d /var/log/journal/
3)改組名:

chgrp systemd-journal /var/log/journal/

4)列出進程并過濾:

ps aux | grep systemd-journald

5)給組加權限,只能組員更改:

chmod g+s /var/log/journal/

6)ls -ld /var/log/journal查看journal權限

7)kill -1 361 重啟
8)重啟后繼續查看日志在不在:
cd /var/log/journal/

9)ls 發現有一串碼

10)bootctl查看機器碼

11)ll 946cb0e817ea4adb916183df8c4fc817

總結

以上是生活随笔為你收集整理的linux系统日志的查看和采集的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。