Apache虚拟目录日志分割及发布

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介:

1、日志分割设置  

    
  Apache的日志分割要借助于目前国际上最流行、最通用的日志分割工具cronolog。日志轮循工具cronolog,已经是比较的相当成熟,在不中断apache服务器的情况下,它能严格的按每一天00:00:00-23:59:59来实现日志文件的分割,同时不受apache服务器重启的影响,安装配置十分简单。
 
第一步    安装cronolog
 
首先需要下载和安装cronolog,可以到[url]http://www.cronolog.org/[/url] 下载最新版本的cronolog。下载完毕以后,解压安装即可,方法如下所示:


[root@www tmp]# tar xvfz cronolog-1.6.2.tar.gz
[root@www tmp]# cd cronolog-1.6.2
[root@www cronolog-1.6.2]# ./configure
[root@www cronolog-1.6.2]# make
[root@www cronolog-1.6.2]# make check
[root@www cronolog-1.6.2]# make install

完成cronolog的配置和安装,默认情况下cronolog是安装在/usr/local/sbin下。
 
第二步   配置httpd.conf
 
在此认为apache服务器安装在/usr/local/目录下;修改apache日志配置文件httpd.conf如下所示:
1、设置日志格式定义
httpd.conf中的以下语句:
LogFormat “%h %l %u %t \”%>s %b \”%{Referer}I\” \%{User-Agent}I\””combine
 
改为:
LogFormat “%h %l %u %t \”%>s %b \”%{Referer}I\” \%{User-Agent}I\””
 
2、设置TransferLog命令
CustomLog /usr/local/apache/logs/access_log common
或是
CustomLog /usr/local/apache/logs/access_log combine
 
TransferLog “|/usr/local/sbin/cronolog /usr/local/apache/logs/%Y%m%daccess_log”
备注:
/usr/local/sbin/cronolog cronolog安装后的路径。
/usr/local/apache/logs/ 为日志分割时候日志保存位置。
 
如果是有虚拟站点,那么需要对虚拟站点另外单独设置TransferLog命令,这样保证不同的虚拟站点的日志保存在不同的位置,也就是说每个虚拟站点都有单独的日志文件。如下所示,虚拟站点[url]www.abc.com[/url]中添加TransferLog命令,保存的日志文件为单独的文件%y%m%dabcaccess_log
<VirtualHost xx.xx.xx.xx:80>
       ServerAdmin   [email]webmaster@dummy-host.example.com[/email]
       DocumentRoot       /usr/local/apache/docs/xxxx
       ServerName    [url]www.abc.com[/url]
       TransferLog   “|/usr/local/sbin/cronolog /usr/local/apache/logs/%Y%m%dabcaccess_log”
</VirtualHost>
 
 
第三步   重新启动Apache服务器
 
保存设置,重启apache服务器,浏览网站后,就会在 /usr/local/apache/logs/ 目录下产生当天对应的虚拟网站日志文件。
 

2、设置虚拟目录来发布日志

第一步    打开Apache配置文件httpd.conf,在其中(如果是虚拟主机发布,那么需要在虚拟配置范畴内)添加以下代码:
Alias /wwwlogs/ "/usr/local/apache/logs/"
<Directory "/usr/local/apache/logs/">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from xxx.xxx.xxx.xxx
</Directory>
 
 以上的设置把/usr/local/apache/logs/目录下面的所有日志通过/wwwlogs/ 这个虚拟目录发布处理。同时这个虚拟目录禁止除了xxx.xxx.xxx.xxx(网站群流量分析服务器)以外的所有IP地址访问。
 
第二步    重新启动Apache服务器
 

本文转自 saturn 51CTO博客,原文链接:
  http://blog.51cto.com/saturn/95788
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
2月前
|
域名解析 Linux Apache
Linux Apache服务详解——虚拟网站主机功能实战
Linux Apache服务详解——虚拟网站主机功能实战
96 5
|
2月前
|
运维 Linux Apache
Linux Apache服务详解——Apache虚拟目录与禁止显示目录列表实战
Linux Apache服务详解——Apache虚拟目录与禁止显示目录列表实战
61 2
|
2月前
|
Ubuntu Apache
apache2 ubuntu18.04 配置虚拟端口
apache2 ubuntu18.04 配置虚拟端口
|
21天前
|
应用服务中间件 开发工具 nginx
Ngnix09目录结构分析,使用tree工具可以Ngnix目录中以一个树的方式呈现出来,yum install -y tree,tail -f nginx/logs/access.log
Ngnix09目录结构分析,使用tree工具可以Ngnix目录中以一个树的方式呈现出来,yum install -y tree,tail -f nginx/logs/access.log
|
2月前
|
存储 监控 Apache
查询提速11倍、资源节省70%,阿里云数据库内核版 Apache Doris 在网易日志和时序场景的实践
网易的灵犀办公和云信利用 Apache Doris 改进了大规模日志和时序数据处理,取代了 Elasticsearch 和 InfluxDB。Doris 实现了更低的服务器资源消耗和更高的查询性能,相比 Elasticsearch,查询速度提升至少 11 倍,存储资源节省达 70%。Doris 的列式存储、高压缩比和倒排索引等功能,优化了日志和时序数据的存储与分析,降低了存储成本并提高了查询效率。在灵犀办公和云信的实际应用中,Doris 显示出显著的性能优势,成功应对了数据增长带来的挑战。
查询提速11倍、资源节省70%,阿里云数据库内核版 Apache Doris 在网易日志和时序场景的实践
|
1月前
|
Shell Linux
linux shell 脚本实现:根据文件内容中的每行分隔符放入数组,根据规则打印日志并重新创建目录 备份文件
linux shell 脚本实现:根据文件内容中的每行分隔符放入数组,根据规则打印日志并重新创建目录 备份文件
28 0
|
2月前
|
Ubuntu Linux Apache
linux下apache2更换目录
linux下apache2更换目录
|
2月前
|
运维 Linux Apache
LAMP架构调优(十)——Apache禁止指定目录PHP解析与错误页面优化
LAMP架构调优(十)——Apache禁止指定目录PHP解析与错误页面优化
256 2
|
2月前
|
Apache
web服务器(Apache)访问日志(access_log)详细解释
web服务器(Apache)访问日志(access_log)详细解释
|
2月前
|
存储 数据采集 测试技术
更进一步节省空间!Apache Hudi支持虚拟键
更进一步节省空间!Apache Hudi支持虚拟键
23 1

推荐镜像

更多