1、系统常用的日志(日志是用来记录重大事件的工具)

/var/log/message      系统信息日志,包含错误信息等

/var/log/secure         系统登录日志

/var/log/cron            定时任务日志

/var/log/maillog         邮件日志

/var/log/boot.log       系统启动日志

2、日志管理服务 rsyslog

【1】作用:主要用来采集日志,不产生日志

【2】配置文件:/etc/rsyslog.conf

编辑文件时的格式为:  ------  *.*           存放日志文件 ------

其中第一个*代表日志类型,第二个*代表日志级别

1.日志类型分为:

auth              ##pam产生的日志

authpriv             ##ssh、ftp等登录信息的验证信息

corn                ##时间任务相关

kern              ##内核

lpr                 ##打印

mail                    ##邮件

mark(syslog)-rsyslog##服务内部的信息,时间标识

news  ##新闻组

user  ##用户程序产生的相关信息

uucp  ##unix  to  nuix  copy主机之间相关的通信

local  1-7  ##自定义的日志设备

2. 日志级别分为:

debug  ##有调试信息的,日志通信最多

info    ##一般信息日志,最常用

  notice   ##最具有重要性的普通条件的信息

  warning   ##警告级别

  err     ##错误级别,阻止某个功能或者模块不能正常工作的信息

crit     ##严重级别,阻止整个系统或者整个软件不能正常工作的信息

alert     ##需要立刻修改的信息

emerg   ##内核崩溃等重要信息

none     ##什么都不记录

注意:从上到下,级别从低到高,记录信息越来越少

详细信息可查手册:man   5   syslog

3.示例:在/etc/rsyslog中添加一个日志文件/var/log/xniu,当sshd服务出错时,该文件会接收到错误

     [root@client ~]# vim /etc/rsyslog.conf

    
    
    

注释: ------ > /var/log/xniu ---是对文件的内容进行清空;当系统配置文件一定要重启使其生效。

3.日志的远程同步

【1】 作用:便于管理多台主机

【2】步骤:

    (1)在日志发送方:vim  /etc/rsyslog.conf  ----->文件里添加内容: *.*@172.25.254.97 ------>  systemctl  restart  rsyslog

      注释:添加内容里面,@表示使用udp协议发送;@@表示使用tcp协议发送

    (2)在日志接收方:vim  /etc/rsyslog.conf ------>使第15行、16行有效------> systemctl restart rsyslog ------>systemctl stop firewalld

              ------>systemctl   disable firewalld

     注释: 配置文件里面,15行:$ModLoad  imudp ##表示日志接受模块;

                16行:$UDPServerRun 514##表示开启接受模块

               systemctl   stopfirawalld##关闭接受方防火墙

                 systemctl    disable  firewalld   ##使防火墙开机不自启动

    (3)发送方和接收方均清空日志文件,使用命令: > /var/log/message

    (4)测试:在日志的发送方运行:logger   test  ------> cat /var/log/message   ;完成之后,会产生日志信息

           在接受方运行:cat    /var/log/message ;

【3】示例:client虚拟机为发送方,server虚拟机为接受方;实现日志的同步

[root@client ~]# vim /etc/rsyslog.conf

        
        
        

在服务端进行操作:

[root@server ~]# vim /etc/rsyslog.conf

        
        

注意:清空日志文件的先后顺序。

4.日志采集格式的设定

  【1】作用:从发送方同步过来的日志,不利于我们查看相关信息;所以要接收方采集的日志按我们自己的设定的规则来显示

  【2】设定步骤:vim   /etc/rsyslog.conf ------>  $template  LOGFMT,"%timegenerated%  %FROMHOST-IP%  %syslogtag%  %msg%\n"

         ------>  在自己显示的日志文件后面,把格式添加进去:*.*/var/log/westos;LOGFMT

    注释: %timegenerated%   ##显示日志时间

        %FROMHOST-IP%  ##显示主机IP

         %syslogtag%      ##日志记录目标

        %msg%         ##日志内容

        \n           ##换行

  【3】 示例: 在server虚拟机中设置规则,可以查看到发送方的信息

[root@server ~]# vim /etc/rsyslog.conf

        

在server主机测试结果:

        

5.日志分析和采集工具 

  【1】命令:journalctl##直接执行,进行日志的查看

  【2】参数:-n    3    ##查看最近三条记录-perr##查看错误日志-overbose##查看日志的详细参数

         --since##查看从什么时候开始的日志 --until##查看什么时候截止的日志

  【3】如何使用--- systemd-journald ---保存系统日志信息

  【4】示例: 使用-n命令来显示最近3条命令

        

使用-p命令显示错误日志:

使用-o  verbose查看详细参数:

       

也可以用命令:journalctl _PID=2482 _COMM=sshd 来进行精确查找:

      

使用命令:journalctl --since "2018-07-27 12:00" --until  "2018-07-19 00:00" 时间段的日志

      

补充:日志在系统的存储是暂时的,系统重启后之前的日志信息就不会存在。可以通过以下步骤实现日志的信息保存(在设置之后的留下的信息)

     [root@client ~]# mkdir /var/log/journal
     [root@client ~]# chgrp systemd-journal /var/log/journal/  
     [root@client ~]# chmod g+s /var/log/journal/        ## 把该文件的使用均指定为组信息
     [root@client ~]# ps aux | grep systemd-journal
     root       364  0.0  0.2  40864  2428 ?        Ss   06:05   0:00 /usr/lib/systemd/systemd-journald
     root      5298  0.0  0.0 112644   936 pts/0    R+   12:08   0:00 grep --color=auto systemd-journal
     [root@client ~]# killall -1 systemd-journald        ##重新开启日志进程

     [root@client ~]# cd /var/log/journal/
     [root@client journal]# ls
     946cb0e817ea4adb916183df8c4fc817            ##记录日志信息的id
     [root@client journal]# ll                   ##该日志会记录7-20 12:09以后的记录
     total 0
     drwxr-sr-x 2 root systemd-journal 27 Jul 20 12:09 946cb0e817ea4adb916183df8c4fc817
     [root@client journal]# date
      Fri Jul 20 12:10:17 CST 2018

6.日志时间同步

  【1】作用:让多台虚拟机保持时间的一致。

  【2】服务名称:chronyd

  【3】步骤:(在两台虚拟机下进行)

(1)在服务端配置:vim  /etc/chronyd

22行 allow  172.25.254.0/24    ## 允许ip为172.25.254.0、子网掩码为24的主机同步时间

28行 local stratum 10     ##表示不同步其他时间

systemctl  restart  chronyd

(2)在客户端配置:vim  /etc/chronyd

2-5行留下一行:server  172.25.254.97    ##表示要同步的主机为172.25.254.97

systemctl restart  chrond             ## 重启服务

systemctl stop  firewalld             ## 关闭防火墙

(3)测试:在客户端输入:chronyc  sources -v

若结果为如下,则表示同步成功:

            

注意:在做此实验前,两边的时间是不相同的(可以使用date查看);服务器端和客户端要关闭防火墙,这样可以进行数据的同步;

文件配置之后要重启。

7.时间设置timedatectl 

使用timedatetcl查看系统时间

      

命令timedatectl list-timezones列出所有时区

     

使用--- timedatectl set-timezone  时区名---来修改时区

     

使用---timedatectl  set-time  "2018-7-20 12:00:00" ---对时间设定

     

注意:当前系统中的时间为bios时间+时区(windows下无这种计算方法);

---timedatectl set-local-rtc 0---表示使用UTC时间

          ---timedatectl set-local-rtc 1---表示使用LOCAL时间
        

Linux系统日志管理的更多相关文章

  1. Linux 系统日志管理 rsyslogd配置文件

    rsyslogd配置文件  rsyslogd 服务是依赖其配置文件 /etc/rsyslog.conf 来确定哪个服务的什么等级的日志信息会被记录在哪个位置的.也就是说,日志服务的配置文件中主要定义了 ...

  2. Linux 系统日志管理

    Linux rsyslogd服务及启动方法 在 CentOS 6.x 中,日志服务已经由 rsyslogd 取代了原先的 syslogd.Red Hat 公司认为 syslogd 已经不能满足工作中的 ...

  3. :Linux 系统日志管理 日志转储

    Linux日志服务器设置 使用“@IP:端口”或“@@IP:端口”的格式可以把日志发送到远程主机上. 假设需要管理几十台服务器,每天的重要工作就是查看这些服务器的日志,可是每台服务器单独登录,并且查看 ...

  4. 【CentOS】Linux日常管理

    /////////////////////////目录///////////////////////////////////////// 一.日常监控指标相关 1.监控系统状态命令 2.查看系统进程 ...

  5. Linux系统日志及日志分析

    Linux系统日志及日志分析   Linux系统拥有非常灵活和强大的日志功能,可以保存几乎所有的操作记录,并可以从中检索出我们需要的信息. 大部分Linux发行版默认的日志守护进程为 syslog,位 ...

  6. linux 内存管理——内核的shmall 和shmmax 参数

    内核的 shmall 和 shmmax 参数 SHMMAX= 配置了最大的内存segment的大小 ------>这个设置的比SGA_MAX_SIZE大比较好. SHMMIN= 最小的内存seg ...

  7. [转帖]linux 内存管理——内核的shmall 和shmmax 参数

    (转)linux 内存管理——内核的shmall 和shmmax 参数   内核的 shmall 和 shmmax 参数 SHMMAX= 配置了最大的内存segment的大小 ------>这个 ...

  8. (转)linux 内存管理——内核的shmall 和shmmax 参数

    内核的 shmall 和 shmmax 参数 SHMMAX= 配置了最大的内存segment的大小 ------>这个设置的比SGA_MAX_SIZE大比较好. SHMMIN= 最小的内存seg ...

  9. rsync 通过服务的方式同步 linux系统日志 screen工具

    rsync 通过服务的方式同步 俩台机器传文件IP地址交叉编写. 主机1: 要编辑配置文件 /etc/rsyncd.conf rsyncd.conf样例 port=873                ...

随机推荐

  1. HttpWebRequest 返回BadRequest(400) 同时返回Response

    今天用Fiddler分析安卓APP的一个登陆功能的时候,账号和密码错误会返回相应的消息,并且状态码是400. 正常用法: /// <summary> /// 读取返回的内容 /// < ...

  2. USB Transfer and Packet Sizes

    https://msdn.microsoft.com/en-us/library/ff538112.aspx http://blog.csdn.net/chenyujing1234/article/d ...

  3. SeekArc

    https://github.com/neild001/SeekArc https://github.com/imflyn/SeekArc

  4. 运行bat时隐藏cmd窗口

    运行bat时隐藏cmd窗口 新建一个shrjj.vbs文件,文件内容为: Set ws = CreateObject("Wscript.Shell") ws.run "c ...

  5. MVC分层处理

    MVC和三层其实是八竿子打不着的,MVC是一种全新的开发方式,传统的三层,其实是模块划分,为了结构清晰.而MVC就是MVC,是通过URL路由到控制器,然后到模型,处理完数据然后将结果返回给视图.是与三 ...

  6. ETL增量处理总结

    1 LOG表 1.1 思路 用log表记录业务库某表yw_tableA发生变化数据的主键.数据进入BI库目标表bi_tableA前,先根据log表记录的主键进行delete. 1.2 设计 1.2.1 ...

  7. webservice用cxf发布SOAP

    cxf的安装,就是把文件解压,然后配置环境变量 http://cxf.apache.org/download.html这是官网下载 解压到这里 环境变量 wsdl2java命令测试 1.新建java项 ...

  8. 哥德巴赫猜想-nefu2 & 分拆素数和 hdu2098

    哥德巴赫猜想-nefu2 & 分拆素数和 hdu2098 //哥德巴赫猜想 #include <iostream> #include <cmath> #include ...

  9. C#代码实现 Excel表格与Object互相转换,Excel表格导入数据库(.NET2.0 .NET4.0)

    前些天在工作上遇到这个需求,在GitHub找到一个开源代码可以用,Fork了一个版本,整理一下发出来. ①.Net项目中使用Nuget安装一个 NPOI 包    https://github.com ...

  10. JS的scrollIntoView

    scrollIntoView(alignWithTop)  滚动浏览器窗口或容器元素,以便在当前视窗的可见范围看见当前元素.如果alignWithTop为true,或者省略它,窗口会尽可能滚动到自身顶 ...