python logging info -> 将服务请求记录输出
在tornado 里面这样用
看看logging.warning() , logging.info() , 我们非常想用 zdaemon , 和 logging 将对系统的所有访问转换到服务器里面,作为日志。
让我们看看目录树。
transaction.py 是tornado服务
看一下 testpage1handler
@require_basic_auth
class TestPage1Handler(BaseHandler):
"""This is a test page to show the asker's utmost parent's all details
"""
def post(self, **kwargs):
print "hi"
logging.info(self.request)
a = self.request
#print a
print type(a)
print dir(a)
print a.arguments
print type(a.arguments)
logging.warning('Watch out!') # will print a message to the console
logging.info('I told you so') # will not print anything
ret = {'ret':'','msg':''}
#name_queue = get_outersystem_org(kwargs)
parent_asker = kwargs['a']
#boss_profile = db.get("SELECT * from kms_outersystem where username=%s", parent_asker)
boss_profile = db.query("SELECT * FROM kms_sgroup")
ret['result'] = { parent_asker : boss_profile }
self.write(json_dumps(ret))
return
看看我们add route 的URL
class Application(tornado.web.Application):
def __init__(self):
handlers = [
# 测试 torndb 效率
(r"/testpage1", TestPage1Handler), # 测试 #(r"/update/dealer/profile", UpdateProfileHandler)
#(r"")
] settings = dict(
cookie_secret="__TODO:_GENERATE_YOUR_OWN_RANDOM_VALUE_HERE__",
debug=True,
)
tornado.web.Application.__init__(self, handlers, **settings) def main():
tornado.options.parse_command_line()
http_server = tornado.httpserver.HTTPServer(Application(),no_keep_alive=True)
http_server.listen(options.port)
tornado.ioloop.IOLoop.instance().start() if __name__ == "__main__":
main()
看看我们设置的 transaction.conf 文档,
<runner>
program python /somewhere/transaction.py --log_file_prefix=transaction.txt
socket-name /somewhere/transaction.zdsock
forever true
</runner>
<environment>
LD_LIBRARY_PATH /somewhere
HOME /somewhere
</environment> <eventlog> <logfile> path /somewhere/transaction_daemon.log </logfile> </eventlog>
然后,我们在终端使用这个命令。
生成的文件类型:
我们来看一下访问以后,文件变化
____timeline Now 2014 Jan 21st_____
python logging info -> 将服务请求记录输出的更多相关文章
- ipython output logging:使用日志记录输出
通常使用ipython的%logstart日志功能时,仅开启输入的记录. 例如在ipython中开启%logstart后,记录的日志文件内容如下: #!/usr/bin/env python # 20 ...
- Python + logging 输出到屏幕,将log日志写入文件
日志 日志是跟踪软件运行时所发生的事件的一种方法.软件开发者在代码中调用日志函数,表明发生了特定的事件.事件由描述性消息描述,该描述性消息可以可选地包含可变数据(即,对于事件的每次出现都潜在地不同的数 ...
- Python logging模块无法正常输出日志
废话少说,先上代码 File:logger.conf [formatters] keys=default [formatter_default] format=%(asctime)s - %(name ...
- python实现编写windows服务
使用python编写windows服务 最近测试服务器上经常发生磁盘空间不足,每次手动清除比较麻烦,所以写个windows服务定时清理下.中间也遇到过几个坑,一起记录下来. 1.python实现win ...
- Python logging 模块和使用经验
记录下常用的一些东西,每次用总是查文档有点小麻烦. py2.7 日志应该是生产应用的重要生命线,谁都不应该掉以轻心 有益原则 级别分离 日志系统通常有下面几种级别,看情况是使用 FATAL - 导致程 ...
- python logging详解及自动添加上下文信息
之前写过一篇文章日志的艺术(The art of logging),提到了输出日志的时候记录上下文信息的重要性,我认为上下文信息包括: when:log事件发生的时间 where:log事件发生在哪个 ...
- (转)python logging模块
python logging模块 原文:http://www.cnblogs.com/dahu-daqing/p/7040764.html 1 logging模块简介 logging模块是Python ...
- python logging模块详解[转]
一.简单将日志打印到屏幕: import logging logging.debug('debug message') logging.info('info message') logging.war ...
- Python LOGGING使用方法
Python LOGGING使用方法 1. 简介 使用场景 场景 适合使用的方法 在终端输出程序或脚本的使用方法 print 报告一个事件的发生(例如状态的修改) logging.info()或log ...
随机推荐
- 合并多段zip文件并解压缩
cat xxx.zip.*** >xxx.zip unzip xxx.zip
- 通过MyEclipse工具直接操作数据库,执行sql语句,方便快捷
原文:通过MyEclipse工具直接操作数据库,执行sql语句,方便快捷 通过MyEclipse操作数据库,执行sql语句使我们不用切换多个工具,直接工作,方便快捷.效果如下: 步骤1:通过MyEcl ...
- ios 设备基本信息检测
开发ios确实会让人身心愉悦(相对于deskop,android),ios app更多的让人集中注意力到它本身的体验,性能.这非常好,我非常喜欢相对完美的事物. 最近遇到一些乱七八糟的需求.需要获取一 ...
- 设计模式之职责链模式(Chain of Responsibility)摘录
23种GOF设计模式一般分为三大类:创建型模式.结构型模式.行为模式. 创建型模式抽象了实例化过程,它们帮助一个系统独立于怎样创建.组合和表示它的那些对象.一个类创建型模式使用继承改变被实例化的类,而 ...
- FluentMigrator
开源DataBase组件:FluentMigrator 2012-05-27 19:09 by 破狼, 2211 阅读, 4 评论, 收藏, 编辑 今天将介绍一款开源组件FluentMigrator, ...
- javascript 类型检测
javascript数据类型分为简单数据类型和复杂数据类型.简单数据类型分为string,number,boolean,defined,null,复杂数据类型为Object.类型检测在写代码可能会非常 ...
- parent和top
function show(){ //parent是获取本窗口的父窗口 //window.parent.location.href="http://www.baidu.com" ...
- dcmtk常用命令
dump2dcm 把普通文件转换成含有dcm头的文件,参数为源文件,目标文件 例:dump2dcm q1.txt query.dcm 表示把q1.txt文件转换为query.dcm dcmdump 阅 ...
- Node填坑教程——整理文件
如果你能把所有代码写进一个文件,并且能很好的管理.协调.多人开发.那么可以跳过这期(请务必带我飞). 我们接着完善上期的代码,给代码分家. node并没有启动入口,更没有固定的项目结构,文件配置.这些 ...
- SpecFlow
SpecFlow http://blog.csdn.net/yujunwu2525/article/details/7839859 将业务需求与.NET代码结合起来 SpecFlow旨在弥合领域专家与 ...