在以下代码中,错误位于第7行。但是,日志在第10行显示错误,其中提到了日志记录。
Map<String, ? extends List<?>> anotherMap = numberMap;
以下内容显示在日志中:
import logging
import urllib2
logging.basicConfig(filename='example.log',level=logging.DEBUG,format='%(levelname) -10s %(asctime)s %(module)s:%(lineno)s %(funcName)s %(message)s')
def main():
try:
urls = "http://www.simplyhired.com/a/job-detaw/jobkey-67b4efe169eee7b2cf2ed47d49b1845070ea37/rid-racliggzfyjgqwfzrlvnqyjtcserhrri/cjp-3/pub_id-1002"
site = urllib2.urlopen(urls).read()
mathfail = 1/0
except Exception, e:
logging.critical(str(e))
main()
我希望它显示发生错误的行号,而不是显示提及日志记录的行号。它应该显示第7行而不是第10行
答案 0 :(得分:0)
我认为你正在寻找堆栈轨道
import logging
import urllib2
import traceback
logging.basicConfig(filename='example.log',level=logging.DEBUG,format='%(levelname) -10s %(asctime)s %(module)s:%(lineno)s %(funcName)s %(message)s')
def main():
try:
urls = "http://www.simplyhired.com/a/job-detaw/jobkey-67b4efe169eee7b2cf2ed47d49b1845070ea37/rid-racliggzfyjgqwfzrlvnqyjtcserhrri/cjp-3/pub_id-1002"
site = urllib2.urlopen(urls).read()
mathfail = 1/0
except Exception:
logging.critical(traceback.format_exc())
main()
答案 1 :(得分:0)
这给了我预期的输出:
import logging
import urllib2
logging.basicConfig(filename='example.log',level=logging.DEBUG,format='%(levelname) -10s %(asctime)s %(module)s:%(lineno)s %(funcName)s %(message)s')
def main():
try:
urls = "http://www.simplyhired.com/a/job-detaw/jobkey-67b4efe169eee7b2cf2ed47d49b1845070ea37/rid-racliggzfyjgqwfzrlvnqyjtcserhrri/cjp-3/pub_id-1002"
site = urllib2.urlopen(urls).read()
mathfail = 1/0
except Exception, e:
logging.exception(str(e))
main()
日志文件中的输出是:
ERROR 2016-04-08 16:18:35,430 testt:10 main HTTP Error 404: Not Found
Traceback (most recent call last):
File "testt.py", line 7, in main
site = urllib2.urlopen(urls).read()
File "/home/deepu/anaconda/lib/python2.7/urllib2.py", line 154, in urlopen
return opener.open(url, data, timeout)
File "/home/deepu/anaconda/lib/python2.7/urllib2.py", line 437, in open
response = meth(req, response)
File "/home/deepu/anaconda/lib/python2.7/urllib2.py", line 550, in http_response
'http', request, response, code, msg, hdrs)
File "/home/deepu/anaconda/lib/python2.7/urllib2.py", line 475, in error
return self._call_chain(*args)
File "/home/deepu/anaconda/lib/python2.7/urllib2.py", line 409, in _call_chain
result = func(*args)
File "/home/deepu/anaconda/lib/python2.7/urllib2.py", line 558, in http_error_default
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
HTTPError: HTTP Error 404: Not Found