首先你可能需要将你的记录文件复制到某个地方用来处理。我猜想你不想冒任何的风险删除或者修改原始的记录文件,或者占用正运转在Web服务器上的机器的CPU的时间。
现在,在CNET中,我们将所有的Linux配置了ssh(Secure Shell),所以,我们必须使用一个安全的登陆,以便将信息传给服务器。那就是说你必须要管理员设置你的日志处理器以便让你使用的账号能连接到储存记录文件的Web服务器中。那就是说你需要使用一些类似于scp(secure copy)来移动你的文件。
my $remoteUser = "remoteUser";
my $remoteMachine = "whatever.name.com";
my $localDir = "/var/opt/tmp";
my $timecode = &UnixDate("yesterday", "%Y%m%d");
my $logfile = "/var/opt/httpd/logs/myapp_log." . $timecode;
my $scp = "/usr/bin/scp -o StrictHostKeyChecking=no $remoteUser @$remoteMachine:$logfile
$localDir";
system "$scp" ;
$remoteUser是用户需要管理员为他设置以便在各机器之间使用,并且$remoteMachine应该记录文件所在机器的名字。
我猜想这个脚本天天都在运行,并会夺取昨天的记录文件,这就是为什么我为什么使用UnixDate函数找到昨天的时间代码。
最后,我利用scp将日志放到远程控制器中并且把日志记录复制到本地目录为下次处理做准备。
现在,你把你的记录日志放到你可以分析他们的机器上,开始尝试着把信息定位在那。试想你使用CustomLog格式,在你的Apache记录日志中有一行的显示类似以下内容:
[