Python实现监控程序执行时间并将其写入日志的方法


Posted in Python onJune 30, 2015

本文实例讲述了Python实现监控程序执行时间并将其写入日志的方法。分享给大家供大家参考。具体实现方法如下:

# /usr/bin/python
# -*- coding:utf-8 -*-
from time import time
def logged(when):
  def log(f,*args,**kargs):
    print '''
         called:
          functions:%s
          args: %r
          kargs: %r
    '''  % (f,args,kargs)
  def pre_logged(f):
    def wrapper(*args,**kargs):
      log(f,*args,**kargs)
      return f(*args,**kargs)
    return wrapper
  def post_logged(f):
    def wrapper(*args,**kargs):
      now = time()
      try:
        return f(*args,**kargs)
      finally:
        log(f,*args,**kargs)
        print "time delta:%s" % (time()-now)
    return wrapper
  try:
    return {"pre":pre_logged,"post":post_logged}[when]
  except KeyError,e:
    raise ValueError(e),'must be "pre" or "post"'
@logged("post")
def hello(name):
  print "hello,",name
hello("world!")
'''
等同于: hello = logged("post")(hello("world!"))
'''

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python小技巧之批量抓取美女图片
Jun 06 Python
python实现通过代理服务器访问远程url的方法
Apr 29 Python
利用python获取某年中每个月的第一天和最后一天
Dec 15 Python
浅谈Python中的可变对象和不可变对象
Jul 07 Python
python执行使用shell命令方法分享
Nov 08 Python
pygame游戏之旅 如何制作游戏障碍
Nov 20 Python
利用python提取wav文件的mfcc方法
Jan 09 Python
python 实现图片旋转 上下左右 180度旋转的示例
Jan 24 Python
python爬虫 模拟登录人人网过程解析
Jul 31 Python
python多进程使用函数封装实例
May 02 Python
python3.8.3安装教程及环境配置的详细教程(64-bit)
Nov 28 Python
PyQt5 QThread倒计时功能的实现代码
Apr 02 Python
python实现爬取千万淘宝商品的方法
Jun 30 #Python
python简单判断序列是否为空的方法
Jun 30 #Python
python检查序列seq是否含有aset中项的方法
Jun 30 #Python
python判断一个集合是否包含了另外一个集合中所有项的方法
Jun 30 #Python
python过滤字符串中不属于指定集合中字符的类实例
Jun 30 #Python
python获得文件创建时间和修改时间的方法
Jun 30 #Python
python读写ini配置文件方法实例分析
Jun 30 #Python
You might like
Discuz 5.0 中读取纯真IP数据库函数分析
2007/03/16 PHP
PHP中防止SQL注入实现代码
2011/02/19 PHP
30 个很棒的PHP开源CMS内容管理系统小结
2011/10/14 PHP
PHP读取文件并可支持远程文件的代码分享
2012/10/03 PHP
解析关于java,php以及html的所有文件编码与乱码的处理方法汇总
2013/06/24 PHP
实例讲解PHP页面静态化
2018/02/05 PHP
juqery 学习之六 CSS--css、位置、宽高
2011/02/11 Javascript
JQuery操作Select的Options的Bug(IE8兼容性视图模式)
2013/04/21 Javascript
jQuery函数的第二个参数获取指定上下文中的DOM元素
2014/05/19 Javascript
jquery实现浮动在网页右下角的彩票开奖公告窗口代码
2015/09/04 Javascript
利用原生js和jQuery实现单选框的勾选和取消操作的方法
2016/09/04 Javascript
Angular.JS通过指令操作DOM的方法
2017/05/10 Javascript
vue+element的表格实现批量删除功能示例代码
2018/08/17 Javascript
Vue创建头部组件示例代码详解
2018/10/23 Javascript
解决layer.confirm选择完之后消息框不消失的问题
2019/09/16 Javascript
使用Node.js在深度学习中做图片预处理的方法
2019/09/18 Javascript
vue 实现走马灯效果
2019/10/28 Javascript
JS立即执行的匿名函数用法分析
2019/11/04 Javascript
python在控制台输出进度条的方法
2015/06/20 Python
Python读写/追加excel文件Demo分享
2018/05/03 Python
十分钟利用Python制作属于你自己的个性logo
2018/05/07 Python
详解Python正则表达式re模块
2019/03/19 Python
基于Python 的语音重采样函数解析
2020/07/06 Python
Python爬取某平台短视频的方法
2021/02/08 Python
input元素的url类型和email类型简介
2012/07/11 HTML / CSS
在阿联酋购买翻新手机和平板电脑:Teckzu
2021/02/12 全球购物
《夏夜多美》教学反思
2014/02/17 职场文书
人力资源主管的岗位职责
2014/03/15 职场文书
大学三年计划书范文
2014/04/30 职场文书
婚纱店策划方案
2014/05/22 职场文书
医院安全生产月活动总结
2014/07/05 职场文书
初中毕业生感言
2015/07/31 职场文书
2016年基层党组织创先争优承诺书
2016/03/25 职场文书
浅谈Mysql多表连接查询的执行细节
2021/04/24 MySQL
php中配置文件保存修改操作 如config.php文件的读取修改等操作
2021/05/12 PHP
MySQL系列之四 SQL语法
2021/07/02 MySQL