LAMP 2.0Apache日志切割
每次访问网站就会产生若干条日志,当然前提是已经配置了日志。
配置日志的文件在
vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
把注释掉的这两行打开
ErrorLog "logs/dummy-host.example.com-error_log"
CustomLog "logs/dummy-host.example.com-access_log" common
common是日志的格式,把日志的格式改成combined
ErrorLog "logs/dummy-host.example.com-error_log"
CustomLog "logs/dummy-host.example.com-access_log" combined
日志的位置 logs是针对/usr/locol/apache2来说的。生成的文件是后面的两个名字。可以更名。
ErrorLog "logs/denny.com-error_log"
CustomLog "logs/denny.com-access_log" combined
检查文件是否正确
apachectl -t
重新加载或者重启
/usr/local/apache2/bin/apachectl restart
/usr/local/apache2/bin/apachectl graceful
去论坛刷新几次,看看是否生成日志文件。
cd /usr/local/apache2/logs/
ls
生成了访问日志denny.com-access_log和错误日志denny.com-error_log
查看访问日志。
cat denny.com-access_log
复制其中一条信息
192.168.1.114 - - [/Dec/::: +] "GET /forum.php?mod=ajax&action=forumchecknew&fid=2&time=1449587726&inajax=yes HTTP/1.1" "http://www.houchangfu.com/forum.php?mod=forumdisplay&fid=2" "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET4.0C; .NET4.0E)"
格式是
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
h来源IP 。l和u不存在用-号表示。u用户,t时间,r动作,Referer来源地址。User-Agent来源浏览器。
为了防止日志无限增长,要把每天的日志切割,以日期重命名,然后超过30天的删掉。
打开配置文件
vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
修改
CustomLog "logs/denny.com-access_log" combined
成
CustomLog "|/usr/local/apache2/bin/rotatelogs -l /usr/local/apache2/logs/denny.com-access_%Y%m%d_log 86400" combined
用apache2的命令,-l切割,日志存放路径写据对路径,时间格式 86400秒等于1天。
查看文件格式,重启。
apachectl -t
/usr/local/apache2/bin/apachectl restart
刷新论坛然后ls查看
ls /usr/local/apache2/logs/
denny.com-access_20151208_log
LAMP 2.0Apache日志切割的更多相关文章
- linux shell:nginx日志切割脚本
需求原因:nginx不具备日志切割功能,日志量较大,方便分析. 实现目的:完成nginx日志切割,并根据时间命名 简要命令: mv /usr/local/tengine/logs/access.l ...
- mongo日志切割脚本
两种mongo日志切割脚本 vim /etc/logrotate.d/mongodb /home/mongodb/mongolog/mongod.log { daily rotate 7 compre ...
- Nginx日志切割,以及脚本上传nginx的切割日志
一:日志切割步骤 命令都在root下进行 1.创建目录 mkdir -p /etc/opt/modules/bin ## 创建文件夹 2.上传cut 3.观察目录 4.修改的cut文件 5.检测 需要 ...
- Nginx 笔记与总结(5)访问日志管理:计划任务 + 日志切割
要在第二天的凌晨把前一天的访问日志切割备份,并以时间作为文件名,例如:access.20150728.log,这就需要在 Linux 中格式化时间,例如: [root@localhost ~]# da ...
- apache日志切割
一.日志切割 安装cronolog CentOS 5.4中编译安装Apache默认日志是不切割的,需要用用工具Cronnolog进行日志切割 1.下载及安装 wget http://cronolog. ...
- nginx日志切割并使用flume-ng收集日志
nginx的日志文件没有rotate功能.如果你不处理,日志文件将变得越来越大,还好我们可以写一个nginx日志切割脚本来自动切割日志文件.第一步就是重命名日志文件,不用担心重命名后nginx找不到日 ...
- Nginx日志配置及日志切割
日志配置 日志对于统计排错来说非常有利的.本文总结了nginx日志相关的配置如access_log.log_format.open_log_file_cache.log_not_found.log_s ...
- Nginx (二) Nginx的反向代理负载均衡以及日志切割
Nginx是一个高并发,高性能的服务器,可以进行反向代理以及网站的负载均衡.这些功能的运用都在配置文件中,也就是Nginx安装目录下的conf/nginx.conf. nginx.conf 1. 先来 ...
- Tomcat6,7,8的日志切割
使用的日志切割工具cronolog(yum就可以了) 确定好路径后,开始配置 Tomcat6 Tomcat6/bin/catalina.sh 292-317行(修改两处) 修改之后为下面的内容 # t ...
随机推荐
- memcpy使用
void memcpy(void dest, const void *src, size_t n); 功能编辑 从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置 ...
- 3.25课·········JavaScript的DOM操作
1.DOM的基本概念 DOM是文档对象模型,这种模型为树模型:文档是指标签文档:对象是指文档中每个元素:模型是指抽象化的东西. 2.Window对象操作 一.属性和方法: 属性(值或者子对象): op ...
- 每天一个Linux命令(28)df命令
报告文件系统磁盘空间的使用情况.获取硬盘被占用了多少空间,目前还剩下多少空间等信息. (1)用法: 用法: df [选项] [文件] (2)功能: 功能: 显示 ...
- 从性能角度分析一下String,List,Map
使用String.subString()方法的时候注意内存溢出的问题 public static void testH() { List<String> strings = new Arr ...
- 【leetcode刷提笔记】Container With Most Water
Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai). ...
- c++大作业五子棋-需求分析与设计方案
写在前边: 本来上学期就已经完成这个大作业,临近考试太忙. 而且老师最后要查重,就没有把代码放上来. 如需整个工程,移步http://download.csdn.net/detail/sdzuiaid ...
- linux学习系列二
vim是由vi发展而来,具有语法高亮显示,多视图编辑,代码折叠,支持插件等功能,vim成为了linux发行版本的标配. 1. vim工作模式 1. 普通模式:实现基本的光标移动和大量的快捷操作 2. ...
- jquery实现td控制显示宽度
目的为了实现td表格元素出现省略的情况,然后点击中间位置是td的宽度增加. 实现代码如下,采用css+jquery的实现方式: <!DOCTYPE html> <html lang= ...
- Subnet Pools and Address Scopes
Why is IPAM important for Neutron? •No VM connectivity without a valid IP assigned •Duplicate subne ...
- linux shell编程(三) if 和 for
if 条件判断: 单分支的if语句if 判断条件: then statement1fi双分支的if语句if 判断条件;then statement1 statementelse statement3f ...