Linux的日志管理

news2025/5/20 21:56:03

日志管理服务rsyslogd

配置文件

| 日志类型             | 说明                                |
| -------------------- | ----------------------------------- |
| auth                 | pam产生的日志                       |
| authpriv             | ssh、ftp等登录信息的验证信息        |
| corn                 | 时间任务相关                        |
| kern                 | 内核                                |
| lpr                  | 打印                                |
| mail                 | 邮件                                |
| mark(syslog)-rsyslog | 服务内部的信息,时间标识            |
| news                 | 新闻组                              |
| user                 | 用户程序产生的相关信息              |
| uucp                 | unix to nuix copy主机之间相关的通信 |
| local 1-7            | 自定义的日志设备                    |

| 日志级别 | 说明                                                 |
| -------- | ---------------------------------------------------- |
| debug    | 有调试信息的,日志通信最多                           |
| info     | 一般信息日志,最常用                                 |
| notice   | 最具有重要性的普通条件的信息                         |
| warning  | 警告级别                                             |
| err      | 错误级别,阻止某个功能或者模块不能正常工作的信息     |
| crit     | 严重级别,阻止整个系统或者整个软件不能正常工作的信息 |
| alert    | 需要立刻修改的信息                                   |
| emerg    | 内核崩溃等重要信息                                   |
| none     | 什么都不记录                                         |

日志格式

由日志服务rsyslogd记录的日志文件,日志文件的格式包含以下4列
时间产生的时间
产生事件的服务器的主机名
产生事件的服务名或程序名
事件的具体信息

查看日志

查看一下/var/log/secure日志,这个日志中记录的是用户验证和授权方面的信息来分析如何查看

自定义日志

使用vim编辑器修改/etc/rsyslog.conf配置文件,给该文件中添加一行日志配置信息
*.*                                                     /var/log/giles.log

[root@server01 log]# systemctl restart rsyslog
[root@server01 log]# echo "">giles.log
[root@server01 log]# cat giles.log

Aug  3 16:02:55 server01 sshd[9643]: Accepted password for giles from 192.168.253.1 port 53873 ssh2
Aug  3 16:02:55 server01 systemd: Created slice User Slice of giles.
Aug  3 16:02:55 server01 systemd: Started Session 22 of user giles.
Aug  3 16:02:55 server01 systemd-logind: New session 22 of user giles.
Aug  3 16:02:55 server01 sshd[9643]: pam_unix(sshd:session): session opened for user giles by (uid=0)
Aug  3 16:02:55 server01 dbus[6458]: [system] Activating service name='org.freedesktop.problems' (using servicehelper)
Aug  3 16:02:55 server01 dbus[6458]: [system] Successfully activated service 'org.freedesktop.problems'

日志轮替

logratate配置文件

[root@server01 log]# vim /etc/logrotate.conf 
# rotate log files weekly 每周对日志文件进行一次轮替
weekly
# keep 4 weeks worth of backlogs 共保存4份日志文件,当建立新的日志文件时,旧的将会被删除
rotate 4
# create new (empty) log files after rotating old ones 创建新的空的日志文件,在日志轮替后
create
# use date as a suffix of the rotated file 使用日期作为日志轮替文件的后缀
dateext
# uncomment this if you want your log files compressed 日志文件是否压缩,如果取消注释,则日志会在转储的同时进行压缩
#compress
# RPM packages drop log rotation information into this directory
include /etc/logrotate.d
#包含/etc/logrotate.d/目录中所有的子配置文件。也就是说把这个目录中所有子配置文件读取进来
#下面是单独设置,优先级更高
# no packages own wtmp and btmp -- we'll rotate them here
/var/log/wtmp {
    monthly #每月对日志文件进行一次轮替
    create 0664 root utmp #建立的新日志文件,权限是0664,属主root,属组是utmp
    minsize 1M #日志文件最小轮替大小是1MB,也就是日志一定要超过1MB才会轮替,否则就算时间达到一个月,也不进行日志转储
    rotate 1 #仅保留一个日志备份。也就是只有wtmp和wtmp.1日志保留而已
}
/var/log/btmp {
    missingok  #如果日志不存在,则忽略该日志的警告信息
    monthly
    create 0600 root utmp
    rotate 1
}

| 参数                    | 说明                                                         |
| ----------------------- | ------------------------------------------------------------ |
| daily                   | 日志的轮替周期是每天                                         |
| weekly                  | 日志的轮替周期是每周                                         |
| monthly                 | 日志的轮替周期是每月                                         |
| rotate数字              | 保留的日志文件的个数。0指没有备份                            |
| compress                | 日志轮替时,旧的日志进行压缩                                 |
| create mode owner group | 建立新日志,同时指定新日志的权限与所有者和所属组。如create 0600 root utmp |
| mail address            | 当日志轮替时,输出内容通过邮件发送到指定的邮件地址。         |
| missingok               | 如果日志不存在,则忽略该日志的警告信息                       |
| notifempty              | 如果日志为空文件,则不进行日志轮替                           |
| minsize大小             | 日志轮替的最小值,也就是日志一定要达到这个最小值才会轮替,否则就算时间达到也不轮替 |
| size 大小               | 日志只要大于指定大小才进行日志轮替,而不是按照时间轮替       |
| dateext                 | 使用日期作为日志轮替文件的后缀                               |
| sharedscripts           | 在此关键字之后的脚本只执行一次                               |
| prerotate/endscript     | 在日志轮替之前执行脚本命令                                   |
| postrotate/endscript    | 在日志轮替之后执行脚本命令                                   |

自定义日志轮替

在/etc/logrotate.d目录下创建admin.log文件
通过vim命令进行编辑,具体编辑的内容如下
/var/log/admin.log{
    monthly
    size=10M
    rotate 5
    compress
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2380269.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

大语言模型 07 - 从0开始训练GPT 0.25B参数量 - MiniMind 实机训练 预训练 监督微调

写在前面 GPT(Generative Pre-trained Transformer)是目前最广泛应用的大语言模型架构之一,其强大的自然语言理解与生成能力背后,是一个庞大而精细的训练流程。本文将从宏观到微观,系统讲解GPT的训练过程,…

[免费]苍穹微信小程序外卖点餐系统修改版(跑腿点餐系统)(SpringBoot后端+Vue管理端)【论文+源码+SQL脚本】

大家好,我是java1234_小锋老师,看到一个不错的微信小程序医院预约挂号管理系统(uni-appSpringBoot后端Vue管理端),分享下哈。 项目视频演示 【免费】苍穹微信小程序外卖点餐系统修改版(跑腿点餐系统)(SpringBoot后端Vue管理端) Java毕业设计…

【RAG】RAG-MCP:基于检索增强生成来缓解大语言模型工具选择中的提示膨胀问题

摘要 由于提示膨胀和选择复杂性,大型语言模型 (LLM) 难以有效利用越来越多的外部工具,例如模型上下文协议 (MCP)[1]中定义的那些工具。 我们引入了 RAG-MCP,这是一个检索增强生成框架,通过卸载工具发现来克服这一挑战。 RAG-MCP …

甘特图工具怎么选?免费/付费项目管理工具对比测评(2025最新版)

2025年甘特图工具的全面指南 在项目管理领域,甘特图作为最直观的任务规划和进度追踪工具,已成为团队协作和项目执行的核心手段。随着数字化技术的快速发展,2025年的甘特图工具市场呈现出前所未有的多元化和智能化趋势。从开源软件到云端协作…

AIGC与数字金融:人工智能金融创新的新纪元

AIGC与数字金融:人工智能金融创新的新纪元 引言 人工智能生成内容(AIGC)在数字金融领域发挥着关键作用,从金融内容生成到智能风控,从个性化服务到投资决策,AIGC正在重塑金融的方式和效果。本文将深入探讨A…

手机怎么查看网络ip地址?安卓/iOS设备查询指南

在移动互联网时代,IP地址作为设备的网络身份证,无论是网络调试、远程连接还是排查故障都至关重要。本文将系统介绍安卓和iOS设备查看IP地址的多种方法,帮助您快速掌握这一实用技能。 一、安卓手机查看IP地址方法 1、通过WiFi设置查看 打开设…

无损耗协议:PROFINET和EtherNet IP网关的高效安装指南

作为风力发电机组监控系统的重要组成部分,PROFINET和EtherNet/IP协议转换网关倍讯BX-606-EIP的安装至关重要。作为安装工,我们要确保网关安装的高效顺利,保证风力发电机组的稳定运行。 首先,我们需要仔细检查网关的硬件接口,确保所有连接线缆与设备端口相匹配。网关…

【知识产权出版社-注册安全分析报告-无验证方式导致安全隐患】

前言 由于网站注册入口容易被黑客攻击,存在如下安全问题: 1. 暴力破解密码,造成用户信息泄露 2. 短信盗刷的安全问题,影响业务及导致用户投诉 3. 带来经济损失,尤其是后付费客户,风险巨大,造…

基于OAuth2+SpringSecurity+Jwt实现身份认证和权限管理后端服务

1、简介 本文讲述了如何实现简易的后端鉴权服务。所谓“鉴权”,就是“身份鉴定”“权限判断”。涉及的技术有:OAuth2、SpringSecurity、Jwt、过滤器、拦截器。OAuth2用于授权,使用Jwt签发Access Token和Refresh Token,并管理token…

liunx定时任务,centos定时任务

yum install cronie crontabs -y直接运行 crond -n 在前台运行 crond -i 守护进程在没有inotify支持的情况下运行systemctl service crond start # 启动服务 systemctl enable crond.service # 设置开机自启 sudo systemctl restart crond # 重启 cron 服务systemctl serv…

三种嵌入式开发常用的组网方式

一、三种嵌入式开发常用的组网方式 这里记录了三种嵌入式开发常用的网络环境,最终目标也就是让开发板、虚拟机、物理机在同一个局域网下。一般的网络环境下都非常容易实现,但是对于学生校园网可得想些法子了,因为校园网一般会有设备连接数限…

ubuntu 20.04 ping baidu.coom可以通,ping www.baidu.com不通 【DNS出现问题】解决方案

ping baidu.coom可以通,ping www.baidu.com不通【DNS出现问题】解决方案 检查IPV6是否有问题 # 1. 检查 IPv6 地址,记住网络接口的名称 ip -6 addr show# 2. 测试本地 IPv6,eth0换成自己的网络接口名称 ping6 ff02::1%eth0# 3. 检查路由 ip…

城市排水管网流量监测系统解决方案

一、方案背景 随着工业的不断发展和城市人口的急剧增加,工业废水和城市污水的排放量也大量增加。目前,我国已成为世界上污水排放量大、增加速度快的国家之一。然而,总体而言污水处理能力较低,有相当部分未经处理的污水直接或间接排…

Ubuntu Desktop QEMU/KVM中使用Ubuntu Server 22.04配置k8s集群

Ubuntu Desktop QEMU/KVM中使用Ubuntu Server 22.04配置k8s集群 1.本机部署个代理 这里我是自己用dockersing-box 部署的 http://192.168.2.105:10808 如果 用v2rayN等软件部署的,记得开启局域网共享 2.安装虚拟机 我本机使用的是Ubuntu Desktop ,这里在QEMU/K…

YOLOv8 在单片机上的几种部署方案

YOLOv8 在单片机上的部署方案 单片机资源(如内存、计算能力)有限,直接部署完整的 YOLOv8 模型并不现实。不过,我们可以通过模型量化、优化和使用轻量级框架来实现简化版的目标检测。下面为你介绍几种可行的方案: 方案…

后端框架(1):Mybatis

什么是框架? 盖高楼,框架结构。 框架结构就是高楼的主体,基础功能。 把很多基础功能已经实现了(封装了)。 在基础语言之上,对各种基础功能进行封装,方便开发者,提高开发效率。 mybatis:对jd…

linux下tcp/ip网络通信笔记1,

本文章主要为博主在学习网络通信的笔记一个Udp_echo_server,和client的代码实现 1,网络发展,网络协议,意识到网络通信——不同主机的进程间通信, 2,学习如何在应用层调用系统提供的接口进行通信,echo_Udp…

语音识别——声纹识别

通过将说话人的声音与数据库中的记录声音进行比对,判断说话人是否为数据库白名单中的同一人,从而完成语音验证。目前,3D-Speaker 声纹验证的效果较为出色。 3D-Speaker 是一个开源工具包,可用于单模态和多模态的说话人验证、说话…

window 显示驱动开发-报告图形内存(三)

图形内存报告示例 示例 1:笔记本电脑上的 128 MB 专用板载图形内存 以下屏幕截图显示了使用 Intel Iris 离散图形适配器运行 Windows 11 的 Surface 笔记本电脑的计算图形内存数。 适配器的可用内存总数为 16424 MB,用于图形用途,细分如下&…

UE5 GAS框架解析内部数据处理机制——服务器与客户端

当, gas通过点击鼠标光标触发事件时,内部的处理机制。 当通过点击事件,命中中目标时, 可获取到对应的TargetData 目标数据。处理相应的操作。 仅有本地的客户端的情况下。命中并不会有什么异常。 当存在服务器时, 服…