Python 日志记录以查看 Console.app 中的消息 [MacOS]

问题描述 投票:0回答:1

我正在尝试从 macos 内置 Console.app 查看我的应用程序的日志。 (评论原因:对于独立程序来说很方便,有ui,可以过滤,导出等等)

有问题的代码

import logging
import logging.handlers
import time

logger = logging.getLogger()
logger.addHandler(logging.handlers.SysLogHandler())
logger.setLevel('INFO')

while True:
  logger.info('I am invisible from Console.app :(')
  time.sleep(1)

我也尝试了

address='/var/run/syslog'
和不同的设施来处理
facility=
logging.handlers.SysLogHandler

参数

结果

还有一个来自 MacOS 控制台应用程序的示例结果(在默认设备上通过

any:python
搜索): enter image description here

公共消息在单次运行中重复:

[R86010] DNSServiceQueryRecord(1D000, 0, <mask.hash: 'BPcKH1OFnJhi/+wTtTItxQ=='>, Addr) START PID[8025](Python)

期待

Console.app 每秒记录消息

I am invisible from Console.app :(
及其元信息。

提前谢谢您!

python python-3.x macos logging
1个回答
1
投票

我在 Big Sur 上尝试了这个(SysLogHandler),我只看到了 Python 日志级别 ERROR 和 WARNING 的日志条目(没有尝试 CRITICAL,但希望也会出现)。我使用地址

/var/run/syslog
导致使用 Unix 域套接字和设施 LOG_USER。

© www.soinside.com 2019 - 2024. All rights reserved.