Mojo 分析日志接口
#!/usr/bin/perl
#取文件行数
##循环开始清空文件
use POSIX;
use DBI;
my $dir = '/data01/applog_backup';
my $file = "$ARGV[0]";
my $SDATE = strftime("%Y-%m-%d",localtime());
my $XDATE = strftime("%Y%m%d%H%M%S",localtime());
my $mon_file = "$dir/$file";
my $USER="$ARGV[1]";
my $IP="$ARGV[2]";
my $ENV="$ARGV[3]"; my $dbUser='DEVOPS';
my $user="root";
my $passwd="1234567";
my $dbh = DBI->connect("dbi:mysql:database=$dbUser;host=192.168.32.161;port=3306",$user,$passwd) or die "can't connect to database ". DBI-errstr;
$dbh->do("SET NAMES utf8");
open FILE,">tmp.out";
close FILE;
open( A, "<", "count.txt" );
while (<A>)
{
$count = $_;
};
print "上次记录的记录数为$count\n"; open(my $fh, '<', "$mon_file");
$. = 0;
while (<$fh>) {
($num=$.) if eof;
};
print "文件最新的记录数为$num"."\n";
open( B, ">", "count.txt" );
print B ("$num\n"); ###获取增量记录
if ( $count && $num != $count && $num !=0 )
{
print "开始处理\n";
open( C, "<", "$mon_file" ) || die "$!\n";
while (<C>)
{
if ($. > "$count" )
{
open( D, ">>", "tmp.out" );
print D ("$_");
}
}
};
close D;
##########监控关键字,以空格隔开################
my @warn_arr = qw/Exception Err/;
my @exp=qw/testscan HandleProxyTradeGroup/; ##$i 是匹配的次数,$b是最后一个匹配的行HandleProxyTradeGroup
foreach $a (@warn_arr)
{
my $i = 0;
my $num = 0;
my $b = 0;
open( D, "<", "tmp.out" ) || die "$!\n";
while (<D>)
{
my @err_info=();
$num++;
if (( $_ =~ /$a/i ) and ($_ !~ /HandleProxyTradeGroup/))
{
$b = $num ;
print "\$b is $b\n";
open( E, "<", "tmp.out" ) || die "$!\n";
while (<E>) {
$_ =~ s/'//g;
if (($. >= "$b") and ($. <= "$b" + 5) ){push( @err_info, $_ ) };};
close E;
chomp @err_info; print @err_info;
print "\n";
$dbh->do("INSERT INTO err_info(host_name,host_ip,v_date,info,env) values('$USER','$IP','$XDATE','@err_info','$ENV')") or die($DBI::errstr); };
};
close D;
};
Mojo 分析日志接口的更多相关文章
- (C#)日志接口请求响应时间
日志接口响应时间,记录接口请求信息,响应结果以及响应时间等.可以清楚的分析和了解接口状态. 如果一个一个地在接口下面做日志,那不是我们想要的结果.所以,我们选择做一个特性来控制接口要不要记录请求响应日 ...
- 精尽Spring Boot源码分析 - 日志系统
该系列文章是笔者在学习 Spring Boot 过程中总结下来的,里面涉及到相关源码,可能对读者不太友好,请结合我的源码注释 Spring Boot 源码分析 GitHub 地址 进行阅读 Sprin ...
- Oracle logmnr工具分析日志脚本
在oracle:对logmnr工具分析日志这个不陌生:对数据恢复应用场景经常用到:这里为了方便对归档日志进行分析: 当然网上有一个logmnr界面的工具:感觉很人性化:下载需要积分:为此写一个脚本. ...
- 利用WebLog Experet分析日志获取性能需求
一.下载WebLog Expert日志分析工具 官网下载地址:http://www.weblogexpert.com/download.htm 二.安装 安装很简单,点击“下一步”默认安装即可 三.配 ...
- txt文件按行处理工具类(可以截取小说、分析日志等)【我】
txt文件按行处理工具类(可以分析日志.截取小说等) package file; import java.io.BufferedReader; import java.io.BufferedWrite ...
- shell分析日志常用指令合集
数据分析对于网站运营人员是个非常重要的技能,日志分析是其中的一个.日志分析可以用专门的工具进行分析,也可以用原生的shell脚本执行,下面就随ytkah看看shell分析日志常用指令有哪些吧.(log ...
- linux运维之分析日志相关命令(1)
一.分析日志 1.查看有多少IP访问 awk '{print $1}' log_file|sort|uniq|wc -l 2.查看某一个页面被访问的次数 grep "/index.php&q ...
- centos7安装Logwatch配合msmtp邮件客户端发送服务器监控分析日志
########################### #DATE 2016-07-29 # #Authur by Denilas Yeung ...
- 通过mysqldumpslow来分析日志
通过mysqldumpslow来分析日志. 将mysql加入到全局变量中!!! sudo vim /etc/profile # 添加Mysql export PATH=$PATH:/usr/local ...
随机推荐
- 四、Nginx负载均衡upstream
user www; worker_processes ; error_log /usr/local/nginx/logs/error.log crit; pid /usr/local/nginx/lo ...
- QLineEdit 仿QQ签名框
今天鼓捣了半天,终于实现了自定义Qt中的QlineEdit控件的大致效果. 这个问题对于新手而言,主要有以下几个难点: 1.继承QLineEdit控件 2.QSS设置QLineEdit的相关样式,可以 ...
- 微信或手机浏览器在线显示office文件(已測试ios、android)
近期开发微信企业号,发现微信andriod版内置浏览器在打开文件方面有问题,可是ios版没有问题.原因是ios版使用的是safari浏览器 支持文档直接打开.可是andriod版使用的是腾讯浏览器x5 ...
- BZOJ 3585: mex( 离线 + 线段树 )
离线, 询问排序. 先处理出1~i的答案, 这样可以回答左端点为1的询问.完成后就用seq(1)将1到它下一次出现的位置前更新. 不断这样转移就OK了 ------------------------ ...
- IE浏览器下安装firebug
第一步: 将一个网址拖动到地址收藏栏: 第二步: 第三步: 将路径改为:javascript: var dd = (window["inIframe"] || window).do ...
- QT对话框中show和exec的区别
转自:http://hi.baidu.com/wangjuns8/blog/item/24b382460dd1c1338694737d.html QDialog的显示有两个函数show()和exec( ...
- Tomcat 乱码设置
如果表单是以get方式提交就会出现中文乱码这时可以在tomcat中配置解决中文乱码问题. 方法如下:在tomcat的conf文件夹下的conf中找到server.xml文件 找到 Connector ...
- Managing your Actor Systems
今天偶然得机会,找到一篇不错得文章,现在分享给大家. 原文:http://www.kotancode.com/2013/02/15/managing-your-actor-systems/ If yo ...
- 基于visual Studio2013解决C语言竞赛题之1074八皇后
题目 解决代码及点评 /************************************************************************/ /* ...
- VC++笔记七
动态链接库修改文件名问题? eg:GetRadarFS.dll->RadarModel.dll; 注意修改:打开文件GetRadarFs.def 修改 LIBRARY "GetRad ...