仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1192|回复: 9
打印 上一主题 下一主题

[CentOS(社区)] Linux教程之搜集Tomcat异常日记并发送邮件

[复制链接]
简单生活 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-14 20:45:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
欢迎大家来到仓酷云论坛!剧本功效:
搜集Tomcat异常日记并发送邮件,假如修正正则表达式,也能够用于搜集其异日志文件的毛病信息


运转情况:
Python2.7/2.4皆可运转



剧本应用办法:
可应用Crontab或许筹划义务来指准时间运转,例如:

*/10****剧本路径



剧本运转后果以下:






剧本内容以下:
  1. #!/usr/bin/envpython#coding=utf-8#---------------------------------------------------------#Name:Tomcat毛病日记发送邮件剧本#Purpose:搜集Tomcat异常日记并发送邮件#Version:1.0#Author:LEO#BLOG:http://linux5588.blog.51cto.com#EMAIL:chanyipiaomiao@163.com#Created:2013-05-22#Copyright:(c)LEO2013#Python:2.7/2.4皆可以使用#--------------------------------------------------------fromsmtplibimportSMTPfromemailimportMIMETextfromemailimportHeaderfromos.pathimportgetsizefromsysimportexitfromreimportcompile,IGNORECASE#界说主机帐号暗码收件人邮件主题smtpserver=smtp.163.comsender=帐号/发件人password=暗码receiver=(收件人1,收件人2,)subject=uWeb办事器Tomcat日记毛病信息From=uxxxWeb办事器To=u办事器治理员#界说tomcat日记文件地位tomcat_log=/usr/local/tomcat/logs/catalina.out#该文件是用于记载前次读取日记文件的地位,履行剧本的用户要有创立该文件的权限last_position_logfile=/tmp/last_position.txt#婚配的毛病信息症结字的正则表达式pattern=compile(rException|^        +at,IGNORECASE)#发送邮件函数defsend_mail(error):#界说邮件的头部信息header=Header.Headermsg=MIMEText.MIMEText(error,plain,utf-8)msg[From]=header(From)msg[To]=header(To)msg[Subject]=header(subject+
  2. )#衔接SMTP办事器,然后发送信息smtp=SMTP(smtpserver)smtp.login(sender,password)smtp.sendmail(sender,receiver,msg.as_string())smtp.close()#读取上一第二天志文件的读取地位defget_last_position(file):try:data=open(file,r)last_position=data.readline()iflast_position:last_position=int(last_position)else:last_position=0except:last_position=0returnlast_position#写入本第二天志文件的本次地位defwrite_this_position(file,last_positon):try:data=open(file,w)data.write(str(last_positon))data.write(
  3. +"DontDeleteThisFile,ItisVeryimportantforLookingTomcatErrorLog!!
  4. ")data.close()except:print"CantCreateFile!"+fileexit()#剖析文件找出异常的行defanalysis_log(file):error_list=[]try:data=open(file,r)except:exit()last_position=get_last_position(last_position_logfile)this_postion=getsize(tomcat_log)ifthis_postion<last_position:data.seek(0)elifthis_postion==last_position:exit()elifthis_postion>last_position:data.seek(last_position)forlineindata:ifpattern.search(line):error_list.append(line)write_this_position(last_position_logfile,data.tell())data.close()return.join(error_list)#挪用发送邮件函数发送邮件error_info=analysis_log(tomcat_log)iferror_info:send_mail(error_info)
复制代码
出自“雷纳科斯的博客”博客,请务必保存此出处http://linux5588.blog.51cto.com/65280/1208951


如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们!
活着的死人 该用户已被删除
沙发
发表于 2015-1-16 22:23:48 | 只看该作者

Linux教程之搜集Tomcat异常日记并发送邮件

Windows有MS-DOS?方式,在该方式下通过输入DOS命令来操作电脑;Linux与Windows类似,也有命令方式,Linux?启动后如果不执行?X-WINDOWS,就会处于命令方式下,必须发命令才能操作电脑。?
小魔女 该用户已被删除
板凳
发表于 2015-1-20 19:53:28 | 只看该作者
对我们学习操作系统有很大的帮助,加深我们对OS的理解。?
山那边是海 该用户已被删除
地板
发表于 2015-1-29 19:23:16 | 只看该作者
生成新的unispimsp.ksc。”另外得到回复后如果问题解决,向帮助过你的人发个说明,让他们知道问题是怎样解决的。
第二个灵魂 该用户已被删除
5#
发表于 2015-2-6 03:40:43 | 只看该作者
如果你有庞大而复杂的测试条件,尽量把它剪裁得越小越好。可能你会遇到这种情况,对于一个问题会出现不同内容回答,这时你需要通过实践来验证。
因胸联盟 该用户已被删除
6#
发表于 2015-2-15 17:35:27 | 只看该作者
Linux?最大的优点在于其作为服务器的强大功能,同时支持多种应用程序及开发工具,所以Linux操作系统有着广泛的应用空间。
若相依 该用户已被删除
7#
发表于 2015-3-4 13:33:06 | 只看该作者
让我树立了很大的信心学好这门课程,也学到了不少专业知识和技能。?
小妖女 该用户已被删除
8#
发表于 2015-3-11 19:56:45 | 只看该作者
期间我阅读了不少关于Linux的相关资料,其中也不乏一些有趣的小故事,这既丰富了我的课余生活,也让我加深了对一些术语的理解,比玩游戏强多了。?
只想知道 该用户已被删除
9#
发表于 2015-3-19 12:51:31 | 只看该作者
以前觉得Linux就跟dos一样,全是用命令窗口,相对于窗口界面来说多麻烦呀。
乐观 该用户已被删除
10#
发表于 2015-3-28 14:54:22 | 只看该作者
直到学习Linux这门课以后,我才知道,原来我错了。?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 23:52

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表