衡量Tomcat的关机时间间隔

时间:2016-09-03 21:08:08

标签: java python tomcat

我正在尝试测量我的Tomcat服务器关闭时间间隔并将其写入日志。我正在尝试使用以下Python代码:

    log_times.append(datetime.now().strftime(TIME_PATTERN)) # logs start time
    subprocess.check_call(['service', 'tomcat7', 'stop'])
    pid = subprocess.Popen(['pgrep', '-utomcat7'], stdout=subprocess.PIPE).communicate()[0]
    while (pid != ''):
        log.info('pgrep found tomcat process: %s', pid)
        pid = subprocess.Popen(['pgrep', '-utomcat7'], stdout=subprocess.PIPE).communicate()[0]
    log_times.append(datetime.now().strftime(TIME_PATTERN)) # logs tomcat shutdown time

有更好的\准确的方法吗?

1 个答案:

答案 0 :(得分:0)

您可以尝试使用bash脚本。例如stop_tomcat.sh:

START=$(date +%s.%N)
service tomcat7 stop
END=$(date +%s.%N)
DIFF=$(echo "$END - $START" | bc)
echo $DIFF

更改权限:

chmod 755

从python中调用它并将其带到stdout:

time = subprocess.Popen(['./stop_tomcat.sh'], stdout=subprocess.PIPE).communicate()[0]

有关使用bash https://unix.stackexchange.com/a/12069测量时间的更多详细信息。