当前位置:首页 » 编程语言 » python日志

python日志

发布时间: 2022-01-14 11:47:32

❶ 如何用python,每隔5分钟对实时日志做统计处理

不清楚你是不是用apache 举apache log+python


#!/usr/bin/envpython


fromthreadingimportTimer
importtime

timer_interval=3000
defreadlogs()
log="/var/log/httpd/access"
reader=open(log,'r')
contents=[]
forlineinreader.xreadlines():
p=re.compile('.*"GET(/seo/t.php?.*)HTTP/1.1".*',re.IGNORECASE)
m=p.match(line)
ifm:
res_file=m.group(1)
#printres_file
cs=urlparse.urlparse(res_file)
#cs_lem=len(cs)
#pprint.pprint(cs)
s_q=urlparse.parse_qs(cs.query,True)

ref=urlparse.urlparse(str(s_q['ref'][0]))
ref_wd=urlparse.parse_qs(ref.query,True)
printref_wd['wd'][0]


else:
contents.append(line)
reader.close()
returncontents
defparselog():
contents=readlogs()
foriincontents:
printi

t=Timer(timer_interval,parselog)
t.start()
whileTrue:
time.sleep(0.1)
print'mainrunning'

❷ 如何把数据写入日志里(python)

#coding=utf-8

def initlog():
import logging

# 生成一个日志对象
logger = logging.getLogger()
# 生成一个Handler。logging支持许多Handler,
# 象FileHandler, SocketHandler, SMTPHandler等,我由于要写
# 文件就使用了FileHandler。
# logfile是一个全局变量,它就是一个文件名,如:'crawl.log'
logfile = 'test.log'
hdlr = logging.FileHandler(logfile)
# 成一个格式器,用于规范日志的输出格式。如果没有这行代码,那么缺省的
# 格式就是:"%(message)s"。也就是写日志时,信息是什么日志中就是什么,
# 没有日期,没有信息级别等信息。logging支持许多种替换值,详细请看
# Formatter的文档说明。这里有三项:时间,信息级别,日志信息
formatter = logging.Formatter('%(asctime)s %(levelname)s %(message)s')
# 将格式器设置到处理器上
hdlr.setFormatter(formatter)
# 将处理器加到日志对象上
logger.addHandler(hdlr)
# 设置日志信息输出的级别。logging提供多种级别的日志信息,如:NOTSET,
# DEBUG, INFO, WARNING, ERROR, CRITICAL等。每个级别都对应一个数值。
# 如果不执行此句,缺省为30(WARNING)。可以执行:logging.getLevelName
# (logger.getEffectiveLevel())来查看缺省的日志级别。日志对象对于不同
# 的级别信息提供不同的函数进行输出,如:info(), error(), debug()等。当
# 写入日志时,小于指定级别的信息将被忽略。因此为了输出想要的日志级别一定
# 要设置好此参数。这里我设为NOTSET(值为0),也就是想输出所有信息
logger.setLevel(logging.NOTSET)
return logger
logging=initlog()
logging.info(u'注册')

❸ python如何查看报错日志

test.py的39行,有个对象是个None?意思是你肯定有什么对象没有初始化就用了吧。
这个日志提示的信息意思最后一行NoneType,你还是查查你的test.py调用的方法是不是不对
你可以在IDLE下单步执行看看,环境变量是不是有些没有按照你想象的进行。

❹ python的日志,如何做到一天是单独一个日志,并且定期清理

创建以日期为文件的log文件(如:20140911.log),写日志前判断存放日志路径是否存在以当天日期为文件名的文件,如果存在添加日志信息,不存在就创建,在写日志信息。
定期清理亦可以按照此思路来做

❺ python里如何提取日志中的错误信息

只要进行提取日志中的错误信息,那么你可以编辑一段程序,然后这样的话才能够完成达到提取的。

❻ python 读取日志文件

#-*-coding:utf-8-*-


withopen('log.txt','r')asf:
foriinf:
ifdt.strftime(dt.now(),'%Y-%m-%d')ini:
#判断是否当天时间
if'ERROR'iniand'atcom.mytijian'ini:
#判断此行中是否含有'ERROR'及'atcom.mytijian'
if((dt.now()-dt.strptime(i.split(',')[0],'%Y-%m-%d%H:%M:%S')).seconds)<45*60:
#判断时间是为当前45分钟内
printi

❼ python打印日志,extra是什么意思

extra是用户自定义的dict. 这些key/value在格式化的时候可以直接引用。

extra可以用来传递额外的日志信息,尤其是上下文信息。


例如:

FORMAT='%(asctime)-15s%(clientip)s%(user)-8s%(message)s'
logging.basicConfig(format=FORMAT)
d={'clientip':'192.168.0.1','user':'fbloggs'}
logger=logging.getLogger('tcpserver')
logger.warning('Protocolproblem:%s','connectionreset',extra=d)

这里除了protocol错误描述外,还附加了客户IP和用户名信息。

如果配置了一些非文本格式的handler,结构化的数据会更容易存储和查询。

例如,Sentry的logging handler允许用户用extra.data来传递任意信息,并自动记录到web界面。

logger.error('Therewassomecrazyerror',exc_info=True,extra={
'culprit':'my.view.name',
'fingerprint':[...],

'data':{
#
'username':request.user.username,
}
})

linux python 日志在哪

现在有test.py程序要后台部署, 里面有输出内容

使用命令:

nohup python -u test.py > test.log 2>&1 &
最后的&表示后台运行
2 输出错误信息到提示符窗口
1 表示输出信息到提示符窗口, 1前面的&注意添加, 否则还会创建一个名为1的文件
最后会把日志文件输出到test.log文件

查看
tail -f test.log如果要实时查看日志文件使用命令
cat test.log查看全部输出使用命令

❾ python2.7怎么控制日志的大小

importglob
importlogging
importlogging.handlers
LOG_FILENAME='logging_rotatingfile_example.out'
#
my_logger=logging.getLogger('MyLogger')
my_logger.setLevel(logging.DEBUG)
#
handler=logging.handlers.RotatingFileHandler(LOG_FILENAME,
maxBytes=20,
backupCount=5,
)
my_logger.addHandler(handler)
#Logsomemessages
foriinrange(20):
my_logger.debug('i=%d'%i)
#Seewhatfilesarecreated
logfiles=glob.glob('%s*'%LOG_FILENAME)
forfilenameinlogfiles:
printfilename
该实例可实现循环打日志 ,第一个文件达到maxBytes大小后,就写入第二个文件。

❿ python查看windows日志文件的代码

答使用Python自带的IDLE 在开始->程序->Python2.5(视你安装的版本而不同)中找到IDLE(Python GUI)。点击后弹出如下窗体: 1,在>>>提示符后输入代码,回车,就可以执行此代码。IDLE支持语法高亮,支持自动缩进,支持方法提示,不过提示的很慢。2.在命令行窗口上运行 这种方法的前提是:你在系统...

热点内容
androidmp3录音 发布:2024-11-15 14:32:50 浏览:493
英朗自动挡哪个配置最好 发布:2024-11-15 14:27:44 浏览:253
编译原理断言有哪几种 发布:2024-11-15 14:25:29 浏览:200
数据库数据重复 发布:2024-11-15 14:23:17 浏览:781
安卓端开发用什么IDE 发布:2024-11-15 14:13:51 浏览:554
阿里云查看访问ip 发布:2024-11-15 14:08:58 浏览:544
随机字符串php 发布:2024-11-15 14:03:46 浏览:122
怎样用数据库搭建服务器 发布:2024-11-15 13:58:39 浏览:478
android编码设置 发布:2024-11-15 13:50:02 浏览:907
androidstringchar 发布:2024-11-15 13:45:00 浏览:965