1

在 Xcode 11.6 上,我了解到 Instruments 应用程序包含一个“os_log”工具,它揭示了一些可能对调试 CoreML 模型非常有用的信息。当我在 macOS 上对 CoreML 模型运行推理时,我可以看到来自com.apple.coremlcom.apple.espresso子系统的有关创建和运行模型的日志记录。

令我困惑的是,我在控制台应用程序中看不到那些日志消息。

所以我想知道,Instruments 中的“os_log”工具是否提供了其他情况下不可用的日志消息视图?有关于这个仪器的任何文件吗?或者有没有办法配置控制台应用程序——或者更好的是,使用命令行log可执行文件——来查看所有这些可见仪器的消息?

4

1 回答 1

0

回答,是的。

log默认情况下,与 Console.app 或默认情况下的可执行文件相比,Instruments 中的 os_log 工具似乎可以访问未编辑且日志级别更深的日志消息。

但是,我发现您在 Mac 上安装了自定义设备配置文件,以禁用日志消息的编辑,然后您可以使用如下命令从命令行查看所有这些详细信息:

log show --predicate '(subsystem IN {"com.apple.espresso","com.apple.coreml"}) && (category IN { "espresso","coreml"})' --info --debug --last 1m

这将显示过去一分钟内记录的来自 CoreML 或 espresso 子风暴的所有消息(因为它包括info和级别)。debug

如果您关闭日志编辑,这些消息将变得更加有用。例如,您可以看到在即时编译过程中发出的日志。

于 2020-09-16T22:41:49.657 回答