将应用程序部署到我的iOS设备,通过 sysdiagnose 触发日志收集,然后浏览从iTunes同步获取的system_logs.logarchive
中的日志消息时,我的应用程序从未显示过Info / Debug日志消息类型。
请注意,此问题与现有但类似声音的问题不同,例如
我正在使用Paper Company(Swift)sample code from Apple来说明我的问题。我开始将应用程序部署到运行iOS 11.0.3的iOS设备上。该方案使用调试模式。就我而言:
logarchive
文件时,我从未看到我应用的信息和调试消息即可。其他消息类型,默认,错误和故障,继续显示,就像我在直播时一样。
由于这种令人费解的行为,我开始认为它可能与系统的配置有关。在Logging documentation:
信息级消息最初存储在内存缓冲区中。如果没有配置更改,它们不会移动到数据存储,并在内存缓冲区填充时被清除。 然而,当出现故障和可选的错误时,它们会在数据存储中被捕获。当信息级消息添加到数据存储时,它们会一直存在,直到超出存储配额为止,点,最早的消息被清除。使用此级别来捕获可能有用的信息,但对于排除错误不是必需的。
在阅读之后,我还尝试将错误类型更改为故障类型,只是为了验证信息类型消息是否会显示。
os_log("B-b-b-b-b-b-b-bomb !", log: ViewController.ui_log, type: .fault) // previously .error
但是,我仍然没有在logarchive
文件中看到任何信息日志消息。
我的问题:
ASSETCATALOG_COMPRESSION
Build Settings,因为已经指出使os_log
按预期工作很重要。请参阅Read logs using the new swift os_log api
logarchive
的信息/调试消息,我是否真的需要添加自定义配置文件,如Apple的日志文档和this mobleconfig example中所示?但是,考虑到即使使用Fault类型,Info消息仍然没有被记录,并且我仍然可以看到来自其他进程的Info / Debug消息,这似乎是可疑的。