美文网首页
系统中的日志管理

系统中的日志管理

作者: ivan_cq | 来源:发表于2018-07-28 10:50 被阅读0次

日志文件对于诊断和解决系统中的问题很有帮助,因为在Linux系统中运行的程序通常会把系统消息和错误消息写入相应的日志文件,这样系统一旦出现问题就会“有据可查”。此外,当主机遭受攻击时,日志文件还可以帮助寻找攻击者留下的痕迹.

日志文件对于诊断和解决系统中的问题很有帮助,因为在Linux系统中运行的程序通常会把系统消息和错误消息写入相应的日志文件,这样系统一旦出现问题就会“有据可查”。此外,当主机遭受攻击时,日志文件还可以帮助寻找攻击者留下的痕迹.

  • 主要日志文件
    在Linux系统中,日志数据主要包括以下三种类型:
    【内核及系统日志】
    【用户日志】
    【程序日志】
    Linux系统本身和大部分服务器程序的日志文件默认情况下都放置在目录“/var/log”中。一部分程序公用一个日志文件,一部分程序使用单个日志文件,而有些大型服务器程序由于日志文件不止一个,所以会在“/var/log”目录中建立相应的子目录来存放日志文件,这样既保证了日志文件目录的结构清晰,又可以快速地定位日志文件。有相当一部分日志文件只有root用户才有权限读取,这保证了相关日志信息的安全性。


/var/log/messages:记录Linux内核消息及各种应用程序的公共日志信息,包括启动、IO错误、网络错误、程序错误等。对于未使用独立日志文件的应用程序或服务,一般都可以从该日志文件中获得相关的事件记录信息。

/var/log/cron:记录crond计划任务产生的事件信息。
/var/log/dmesg:记录Linux系统在引导过程中的各种事件信息。
/var/log/maillog:记录进入或发出系统的电子邮件活动。
/var/log/lastlog:最近几次成功登录事件和最后一次不成功登录事件。
/var/log/rpmpkgs:记录系统中安装的各rpm包列表信息。
/var/log/secure:记录用户登录认证过程中的事件信息。
/var/log/wtmp:记录每个用户登录、注销及系统启动和停机事件。
/var/run/utmp:记录当前登录的每个用户的详细信息。

  • 日志文件分析

分析日志文件的目的在于通过浏览日志查找关键信息,对系统服务进行调试,判断发生故障的原因等。
对于大多数文本格式的日志文件,只要使用tail、more、less、cat等文本处理工具就可以查看日志内容。而对于一些二进制格式的日志文件,则需要使用相应的查询命令。

  • 日志的远程同步
    在日志发送方:
    vim /etc/rsyslog.conf
    . @172.25.254.200 ##"@"表示udp协议发送,“@@”表示tcp协议发送
    systemctl restart rsyslog
    在日志接受方
    vim /etc/rsyslog.conf
    15 $ModLoad imudp ##日志接受模块
    16 ¥UDPServerRun 514 ## 开启接受端口
    systemctl restart rsyslog
    systemctl stop firewalld ##关闭火墙
    systemctl disable firewalld ##设定火墙开机关闭
    测试:
    在发送方和接受方都清空日志文件

/var/log/messages
在日志的发送方
cat /var/log/messages #查看日志已经生成
在日志接收方查看
cat /var/log/messages

  • 日志采集格式
    $template LOGFMT,"%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"

%timegenerated% ##显示日志时间
%FROMHOST-IP% ##显示主机ip
%syslogtag% ##日志记录目标
%msg% ##日志内容
\n ##换行

. /var/log/westos;LOGFMT

  • 时间同步服务
    服务名称
    chronyd

在服务端:
vim /etc/chrony.conf
22 allow 172.25.254.0/24 允许那些客户端来同步本机时间
29 local stratum 10 不同步任何主机的时间,本机作为时间源

systemctl restart chronyd
timedatectl set-timezone Asia/Shanghai 更改当前时区为东8区
在客户端:
vim /etc/chrony.conf
server 172.25.254.200 iburst 本机立即同步200主机的时间
systemctl restart chronyd
timedatectl set-timezone Asia/Shanghai 更改当前时区为东8区

测试:
[root@localhost ~]# chronyc souces -v

^* 172.25.0.11 10 6 377 41 +170us[ +201us] +/- 191us

timedatectl 命令

timedatectl ##管理系统时间
timedatevtl status 显示当前时间信息
set-time 设定当前时间
set-timezone 设定当前时区
set-local-rtc 0|1 设定是否使用utc时间
list-timezone 查看支持的所有时区

  • journal

journalctl 日志查看工具
-n 3 查看最近3条日志
-p err 查看错误日志
-o verbose 查看日志的详细参数
--since 查看从什么时间开始的日志
--untill 查看到什么时间为止的日志


如何使用systemd-journald保存系统日志
默认systemd-journald是不保存系统日志到硬盘的
那么关机后再次开机只能看到本次开机之后的日志
上一次关机之前的日志是无法查看的

mkdir /var/log/journal
chgrp systemd-journal /var/log/journal
chmod g+s /var/log/journal
killall -1 systemd-journald

ls /var/log/journal
946cb08e817ea4ad0916183df8c4fc817

相关文章

  • 【转】Linux环境下使用rsyslog管理日志

    Linux环境下使用rsyslog管理日志(原文) 在 Linux 系统中,日志文件记录了系统中包括内核、服务和其...

  • 系统中的日志管理

    日志文件对于诊断和解决系统中的问题很有帮助,因为在Linux系统中运行的程序通常会把系统消息和错误消息写入相应的日...

  • Linux日志管理:

    rsyslog 系统日志管理 logrotate日志轮转 rsyslog部分: rsyslog是系统专职日志程序,...

  • linux系统安全日志分析

    我们主要讲一下Linux环境中的系统记帐和系统日志管理以及怎么用一些工具更加方便有效的管理日志信息。 当我们用上面...

  • SpringBoot2 集成日志,复杂业务下的自定义实现

    本文源码:GitHub·点这里 || GitEE·点这里 一、日志体系集成 1、日志管理 在系统的开发中,最关键...

  • log4j

    log4j是日志输出插件,专门用于进行日志管理。日志是系统运行过程中的后台输出信息。传统方式获取日志:System...

  • 怎样才能有效管理Linux服务器系统的日志

    怎样才能有效管理Linux服务器系统的日志,一直是站长担心的问题。合适的日志管理工具能大幅减轻管理企业系统日志数...

  • 基于SpringBoot2环境下的复杂业务下如何实现自定义

    一、日志体系集成 1、日志管理 在系统的开发中,最关键的一个组件工具就是日志,日志打印方便问题排查,或者生产事故回...

  • django中日志模块使用

    一、需求来源: 在django搭建的环境中,代码运行输出的日志需要相关模块做管理。 二、配置日志系统: Djang...

  • 企业落地九大项

    一,一本日志(时间管理系统,目标管理系统,日精进管理系统) 早,中,晚各读,看,写十遍, 每一天都要学会总结 二,...

网友评论

      本文标题:系统中的日志管理

      本文链接:https://www.haomeiwen.com/subject/kdtomftx.html