weixin_1374426001 2016-02-12 06:19 采纳率: 0%
浏览 1565

请问awk和python中如何显示当天产生的日志?

#coding=utf-8
import os
import json
import httplib
import codecs
LogFile='/etc/httpd/logs/access_log'
#日志
logMess='/tmp/acc.log'
if os.path.isfile(logMess):
os.system('cp /dev/null %s'% logMess)
file=codecs.open(logMess,'w+',encoding='utf-8')
def cmd(cmd):
return os.popen(cmd).readlines()
'''
def getIp(ip):
return json.loads(os.popen("/usr/bin/curl http://ip.taobao.com/service/getIpInfo.php?ip=%s" % ip).readline())['data']
'''
conn = httplib.HTTPConnection('ip.taobao.com')
def getIpCountry(ip):
conn.request('GET','/service/getIpInfo.php?ip=%s' % ip)
r1=conn.getresponse()
if r1.status == 200:
#return json.loads(r1.read())['data']
return json.loads(r1.read().decode())['data']
else:
return "Error"
#将access.log文件进行分析,并转为python数组
file.write(u"字段说明:ip 访问次数据 ip国家 城市的 isp号 省份 所在地区\n")
ipDb=[]
for i in cmd('''/usr/bin/awk '{print $1}' %s |sort |uniq -c''' % LogFile):
ip = i.strip().split(' ')
ipDb.append(ip)
#通过taobao 提供接口分析ip地址来源
for i in ipDb:
_tmpD=getIpCountry(i[1])
#格式说明:ip 访问次数据 ip国家 城市的 isp号 省份 所在地区
if _tmpD['city'] == unicode('唐山市', "utf-8"):
print i
out="%s%s%s%s%s%s%s"%(i[1].ljust(20),i[0].ljust(10),_tmpD['country'].ljust(20),_tmpD['city'].ljust(16),_tmpD['isp_id'].ljust(16),_tmpD['region'].ljust(16),_tmpD['area'].ljust(16))
print (out)
file.write("%s\n"%out)

conn.close()
file.close()

我想显示当天的日志,怎么做?

  • 写回答

1条回答 默认 最新

  • oyljerry 2016-02-12 08:09
    关注

    可以获取当天日期,然后比较时间。以0时0分0秒到23时59分59秒

    评论

报告相同问题?

悬赏问题

  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)