ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

LINUX学习------2.3 Linux中的日志管理

2021-07-26 22:34:08  阅读:240  来源: 互联网

标签:log ## journal LINUX var rsyslog Linux 2.3 日志


2.3.1 journald日志系统

    1、journald日志系统基础语法

            服务名称:systemd-journald.service

                日志默认存放路径:/run/log

                /run/log/journal/主机码/system.journal(主机生成日志文件)

        journalctl命令的用法

-n 3##日志的最新3条

--since "2021-07-20 12:00:00"

--until "2021-07-20 14:00:00"

##显示几点到几点的日志
-o##设定日志的显示方式
short ##经典显示日志节
verbose ##显示日志的全部字
export  ##适合传出和备份的二进制格式
json##js格式显示输出

-p

0                emerg##系统的严重问题日志
1                alert##系统中立即要更改的信息
2                crit##严重级别会导致系统软件不能正常工作
3                err##程序报错
4                warning##程序警告
5                notice##重要信息的普通日志
6                info##普通信息
7                debug##程序排错信息
-F##查看可控日志级别
-u##指定查看服务
--disk-usage##查看日志大小
du -sh /run/log/journal/机器码/system.journal##日志文件大小
--vacuum-size=1G##设定日志存放大小
--vacuum-time=1w##日志在系统中最长保存时间
-f##监控日志
journalctl_PID=1243##查看进程号为某的日志

2、用journald服务永久存放文件

系统默认日志在:/run/log/journal中
默认方式在系统重启后日志会被清理要永久保存日志完成以下步骤:
    mkdir /var/log/journal 
            
    chgrp systemd-journal         /var/log/journal        ##当改变目录用户组后, systemd-journal (此用户组只能被journal程序识别,只有此用户组才能存放日志)
    chmod 2775                            /var/log/journal
    systemctl restart systemd-journald.service
    当服务重启 日志存放路径会被存放在/var/log/journal

 3、rsyslog日志管理

服务名称 :rsyslog.service

日志存放:

/var/log/messages##系统服务日志,常规信息,服务报错
/var/log/secure##系统认证信息日志
/var/log/maillog ##系统邮件信息日志
 /var/log/cron##系统定时任务信息日志
/var/log/boot ##系统启动日志信息
/etc/rsyslog.conf  ##系统日志配置文件

systemctl status rsyslog.service                     ##查看服务状态
    vim /etc/rsyslog.conf                                    ##进入配置文件更改信息

 eg:*.* ; *.*    /var/log/westos        ##把系统所有级别的日志存放在westos下

    *  .  *
日志类别 日志级别
日志类别
auth##用户认证
authpriv##服务认证
cron##时间任务
kern##内核类型
mail##邮件
news##系统更新信息
user##用户
日志级别
debug##程序排错信息
info##程序常规运行信息
notice##重要信息的普通日志
waring##程序警告
err##程序报错
crit##严重级别会导致系统软件不能正常工作
alert##系统中立即要更改的信息
emerg##系统的严重问题日志
none##不采集

 4、日志的远程同步

         UDP协议(传送速率更快但安全性不高)
         TCP协议(安全性更高 三次握手四次挥手)

实验环境:主机a作为发送方
                    主机b作为接受方
       1、在主机a中设定可接受所有人的日志
                systemctl stop firewalld
                vim /etc/rsyslog.conf
                           19行 module(load=“”)            ## 打开日志接受插件  
                           21行 input()                             ##指定插件使用接口
                systemctl restart rsyslog
                netstat -anulupe | grep rsyslog

      2、在主机b中设定发送日志到a
                systemctl stop firewalld
                vim /etc/rsyslog.conf
                           *.*    @172.25.254.                        ##@@tcp传输日志,@udp传输日志   
                systemctl restart rsyslog
                netstat -anulupe | grep rsyslog
              

                > /var/log/messages                                ##清空日志
                logger westosa                                         ##测试

5、如何更改日志采集格式

实验步骤:
        vim /etc/rsyslog.conf                             ##打开配置文件
            28行左右: $template WESTOS, "%timegenerated% %FROMHOST-IP% %syslogtag% %msg%  \n"                          ##添加采集格式
            47行:*.info;mail.none;authpriv.none;cron.none                /var/log/messages;WESTOS                                   ##采集到某一文件,名字需一致(28行WESTOS对应47行WESTOS)
            33行:module(load="builtin:omfile" Template="WESTOS")                       

                                                                        ##设置全局采集格式都是28行格式
        > /var/log/messages                             ##清空日志文件内容
        systemctl restart rsyslog.service        ##重启服务

WESTOS 格式名称

命令格式
$template WESTOS, "%timegenerated% %FROMHOST-IP% %syslogtag% %msg%  \n"
%FROMHOST-IP% ##日志来源主机IP
%timegenerated%##日志生成时间
\n ##换行
%syslogtag%##日志生成服务
%msg%##日志内容  

2.3.2 timedatectl命令时间同步服务

1、timedatectl命令

Local time##当地时间
Universal time##伦敦时间
RTC time##硬件时间
Time zone ##时区
System clock synchronized  ##同步系统时钟
NTP service##网络同步时间
RTC in local TZ##本地时间写到硬件

timedatectl set-time “2121-27-21 12:12:11”                ##设定系统时间
timedatectl list-timezones                                                    ##显示系统的所有时间
timedatectl set-timezone "Asia/Shanghai"                        ##设定系统时间
timedatectl set-local-rtc 0|1                                                 ##设定系统时间计算方式 0表示使用utc时间计算方式

tips:更改时间前应停止自动获取时间服务(systemctl stop chronyd。service)


2、时间同步服务


服务名称:chronyd.service
配置文件:/etc/chrony.conf


实验步骤:
    主机a 客户端
    主机b 服务端(时间源)
         
服务端        systemctl stop firewalld.service        ##关闭火墙
        /etc/chrony.conf                                                ##打开时间配置文件            
            23行: allow 0.0.0.0/0                                ##允许所有ip或指定ip获取本地世界
            26行:local stratum 10                               ##开启时间同步服务器功能并设定级别为10
        systemctl restart chronyd.service                  ##重启服务

客户端        /etc/chrony.conf                                ##打开时间配置文件
            3行:pool 172.25.254.122 iburst          ##选择时间源的ip地址

  

标签:log,##,journal,LINUX,var,rsyslog,Linux,2.3,日志
来源: https://blog.csdn.net/qq_45106132/article/details/119000287

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有