python logging info -> 将服务请求记录输出

本文详细介绍了如何在Tornado框架中利用logging模块进行日志记录,并结合ZDamon实现对所有系统访问的日志转换。通过设置transaction.conf文档,实现了将日志输出到指定的文件。此外,文章还展示了如何通过命令生成日志文件,以及访问后文件的变化情况。

在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':'0','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_____

转载于:https://www.cnblogs.com/spaceship9/p/3527697.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值