windows日志监控

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了windows日志监控相关的知识,希望对你有一定的参考价值。

  bat脚本,主要作用,每个五分钟读取日文本件中新增内容,进行错误赛选,如果有错误信息,将错误信息用邮件发送给管理员。

  其中awk和sed需要手动下载

 

:读取number.txt文档,获取上一次执行时文件的行数

for /f "delims=" %%f in (number.txt) do (
set a=%%f
)

:读取新增行,进行ERROR筛选,将赛选信息导入err文件中

D:\tools\awk\awk.exe ‘{print NR" "$0}‘ D:\unitrade\esblls\logs\app.log | D:\tools\sed\sed.exe -n "%a%,$p" | findstr "ERROR" > error_tj.log

:上面这条是本脚本最费时间的地方,因为当我在awk ‘NR>%A%{PRINT}的时候一直报错,所以就加了sed赛选起始行

set var="error_tj.log"

:获取文件行数,如果为null,则没有报错

for /f "delims=" %%i in (%var%) do (

set /a n+=1

)

:::::::::::::: 发送邮件参数设置::::::::::::::
set [email protected]
set user=xxx
set pass=xxx
set to=收件人
set subj=日志监控
set mail=error_tj.log
set attach=*.jpg
set server=smtp.163.com
set debug=-debug -log blat.log -timestamp

:判断err文件中是否有数据,有的话就将err文件通过邮件发送给管理员

if %n% GTR 0 ( D:\tools\Blat250\full\blat.exe %mail% -to %to% -base64 -charset Gb2312 -subject %subj% -attach %attach% -server %server% -f %from% -u %user% -pw %pass% %debug% )

:获取最新的行号,并记录到number.txt文件中

D:\tools\awk\awk.exe ‘{print NR}‘ D:\unitrade\esblls\logs\app.log | D:\tools\sed\sed.exe -n "$p" > number.txt

以上是关于windows日志监控的主要内容,如果未能解决你的问题,请参考以下文章

Windows Server2008 监控服务器性能

argparse 代码片段只打印部分日志

常用python日期日志获取内容循环的代码片段

我的Android进阶之旅NDK开发之在C++代码中使用Android Log打印日志,打印出C++的函数耗时以及代码片段耗时详情

Windows性能监控工具Perfmon使用指南

Windows性能监控工具Perfmon使用指南