我在编写日志解析器时遇到问题.我刚开始编写更大的Perl程序/脚本,但是很好地理解bash/ksh,所以我在较小的规模上有一些经验.我为大量的代码道歉,但我不知道我哪里出错了(错误可能会误导,所以我读过).我在这里查了一下,PerlMaven和其他一些网站,并不能让它工作.
我正在尝试将日志文件提供给此解析器,让它按每列拆分日志,并按特定列的实例计数.
在这个解析器中,$statusCode代表一个成功的连接 - 所以我试图计算使用它成功连接的次数 - 以及有数据传输的成功连接的数量(如图所示$sentbyClientBytes > 0).如果连接成功但发送了0个字节,我只想将一个总和增加一个实例(successconnect++)
其余的数据暂时可以被丢弃,但我会做一些与其他一些列类似的东西 - 只是用不同的状态代码反复创建相同类型的函数.
在此先感谢Perl大师.你们和你的知识一起举办互联网.
#!/usr/bin/perl
#V0.1 - testing and initiation
use strict;
use warnings;
use Scalar::Util qw(looks_like_number);
my $filename = "/dir/log";
open( my $fh, '<', "/dir/log" ) or die "Cannot open < /root/fall_log";
while ( <$fh> ) {
# wraps whole process from here to end
my $sentcount = 0;
my $successconnect = 0;
# define the counts and variables we're using
my ( $date, …Run Code Online (Sandbox Code Playgroud)