linux日志轮转功能
来源:互联网 发布:数据结构与算法笔试 编辑:程序博客网 时间:2024/05/22 17:57
日志的轮转是一种日志管理策略,可以简化管理。
以/var/log/messages日志文件为例:
先分四步讲解下轮转的过程。
1.系统只有messages文件,还没有轮转
touch messages
2.第一次轮转生成messages.1
mv messages messages.1
touch messages
3.第二次轮转生成messages.2
mv messages.1 messages.2
mv messages messages.1
touch messages
4.第三次轮转生成messages.3
mv messages.2 messages.3
mv messages.1 messages.2
mv messages messages.1
toouch messages
这样日志达到一定条件就会这样不断生成新的文件,可以看出,日志的轮转其本质就是旧文件的移动和新文件的创建。
----------------------------------------------------------------------
日志的轮转其主配置文件为/etc/logrotate.conf
[root@localhost ~]# cat /etc/logrotate.conf|grep -v ^# |grep -v ^$
weekly
rotate 4
create
include /etc/logrotate.d
/var/log/wtmp {
monthly
minsize 1M
create 0664 root utmp
rotate 1
}
monthly :表示所有日志每周进行一次轮转
minsize 1M :轮转日志的最小大小
create 0664 root utmp :创建文件时,指定权限、属主和属组
rotate 1 :保留一个旧文件
这全局配置和局部配置就类似C++中类的继承。
----------------------------------------------------------------------
自定义日志轮转:
自定义日志轮转前要了解下面几个命令:
需要执行的外部命令放在sharedscripts和endscript两行之间
prerotate : logrotate命令运行前执行脚本内容
postrotate:logrotate命令运行后执行脚本内容
----------------------------------------------------------------------
下面说个实例:
配置/var/log/mytest.log日志文件记录所有日志,并加上高级权限a;
echo "*.info/var/log/mytest.log">>/etc/syslog.conf
/etc/init.d/syslog restart
chattr +a /var/log/mytest.log
轮转配置
vim /etc/logrotate.d/mytest
/var/log/mytest.log{
mothly
size=10M
rotate 5
compress压缩保存
sharedscripts
prerotate
/usr/bin/chattr -a /var/log/mytest.log
endscripts
sharedscripts
postrotate
/usr/bin/kill -HUP syslog 以HUP方式从新加载服务,相当于从新读取配置文件,不改变进程id号
/usr/bin/chattr +a /var/log/mytest.log
endscripts
}
最后可以用下这个命令:
[root@localhost logrotate.d]# logrotate -v /etc/logrotate.conf 测试有没有日志需要轮转-f 强制轮转
- linux日志轮转功能
- linux log 日志轮转 logrotate
- [Linux] 利用logrotate对MySQL日志进行轮转
- 15-日志轮转
- MongoDB日志轮转和日志级别
- logrotate简单实现各种日志自动轮转
- catalina.out日志按天轮转
- linux c日志功能实现
- Linux内核时间片轮转程序
- linux时间片轮转小程序
- linux中开启scsi的日志功能
- Linux下开发程序记录日志功能
- Linux远程工具日志记录功能
- linux中的日志功能(Linux程序设计(第3版) )
- Linux内核分析之时间片轮转调度
- Linux内核分析-2/时间片轮转多道程序
- Linux下简单的日志功能实现(C语言)
- 点点滴滴 - Nginx日志功能 PK Linux内核printk
- c++文件处理
- Android竖式SeekBar实现及demo
- 数组的旋转实例化-----求评论哦
- 计算机技术课实验报告8
- 字对齐概念
- linux日志轮转功能
- 【学习笔记】编译Linux内核(上)--编译基于x86平台的Linux内核的过程
- Ubuntu12.04下更新显卡驱动后屏幕亮度调节问题
- mysql相关操作
- SVN服务器搭建和使用(一)
- 影像——镶嵌和拼接
- 拼音库提取程序
- STM32中断与事件
- SVN服务器搭建和使用(二)