Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在嵌入式python解释器中查看日志输出?_Python_Logging_Interpreter - Fatal编程技术网

如何在嵌入式python解释器中查看日志输出?

如何在嵌入式python解释器中查看日志输出?,python,logging,interpreter,Python,Logging,Interpreter,我在iOS应用程序中使用嵌入式python解释器。我可以在Xcode控制台中看到打印输出,但看不到任何logging.info()或logging.debug()输出。我如何启用它 我的测试python代码: import logging import sys # try to add logging output to stdout logging.basicConfig() log = logging.getLogger() log.addHandler(logging.StreamHa

我在iOS应用程序中使用嵌入式python解释器。我可以在Xcode控制台中看到
打印
输出,但看不到任何
logging.info()
logging.debug()
输出。我如何启用它

我的测试python代码:

import logging
import sys

# try to add logging output to stdout
logging.basicConfig()
log = logging.getLogger()

log.addHandler(logging.StreamHandler())
log.addHandler(logging.StreamHandler(sys.stdout))

# for calling from outside
def main__(args):
    print("main__()") # can see output
    print type(args)
    print len(args)
    for eachArg in args:
#        print('#: %s' % eachArg) # can see output
        logging.info(eachArg) # can NOT see output
输出为:

main__()
<type 'list'>
281
main
281

我认为这些东西处于调试级别。 此代码适用于我:

import logging
import sys

log = logging.getLogger()
log.setLevel(logging.DEBUG)
stream = logging.StreamHandler(sys.stdout)
stream.setLevel(logging.DEBUG)
log.addHandler(stream)

# for calling from outside
def main__(args):
    print("main__()") # can see output
    print type(args)
    print len(args)
    for eachArg in args:
        logging.info(eachArg)
输出:

>>> main__('test')
main__()
<type 'str'>
4
t
e
s
t
>>> 
>>main(测试)
主要的
4.
T
E
s
T
>>> 

你完全正确!我希望
logging.INFO
是默认的日志记录级别,但这是错误的。使用
log.setLevel(logging.DEBUG)
。顺便说一句,我发现设置处理程序的日志级别不是必需的