Python日志记录模块

时间:2014-04-16 19:44:26

标签: python python-2.7 python-2.6

我是python的新手。

我正在编写一个监视jstat(Java虚拟机统计监视工具)的python代码。这是一个监视Java堆使用情况的命令行实用程序。我的python代码每15秒监视一次,并将其重定向到一个文件。

我希望在达到一定大小后旋转文件。我确实为python阅读了旋转日志记录模块,但由于必须设置一些级别,因此有点令人困惑。例如: level.debug()将在文件中打印一些内容。

我不想打印任何东西。我只是想旋转文件。

请尽可能帮助我。谢谢

这是我的代码:

#!/usr/bin/python

import sys
import commands
import os
import time
import subprocess
import glob
import logging
import logging.handlers

def A():

  e1 = subprocess.Popen(['jps'], stdout=subprocess.PIPE)
  e2 = subprocess.Popen(['grep', 'Bootstrap'],
       stdin=e1.stdout, stdout=subprocess.PIPE)
  e1.stdout.close()
  CMD= ["awk", r'{OFS="\t"; print $1}']
  e3 = subprocess.Popen(CMD,
       stdin=e2.stdout, stdout=subprocess.PIPE)
  e2.stdout.close()
  val = e3.communicate()
  modify= val[0].split('\n')
  id= "".join(modify)
  command= os.system('jstat -gc -h10 %s 15s > /tmp/javastat.log' % id)

def main():
 p1 = subprocess.Popen(['env'], stdout=subprocess.PIPE)
 p2 = subprocess.Popen(['grep', 'APP_NAME'],
     stdin=p1.stdout, stdout=subprocess.PIPE)
 p1.stdout.close()
 output = p2.communicate()
 cut= output[0].split('\n')
 name= "".join(cut)
 #print name

 if  ( name ==  'APP_NAME=A'):
  # print "match found"
   A()

if __name__ == '__main__':
   main()

0 个答案:

没有答案