ios - 在设备控制台中查看 os_log 消息

标签 ios swift iphone xcode logging

我正在尝试通过统一日志记录 (os_log) 从我的应用程序中进行一些日志记录

这是日志的初始化:

var osLog : OSLog = OSLog(subsystem: "com.test.testapp", category: "native-tester")

这是我的使用方法:

os_log("iOS App initialized successfully!", log: osLog, type:.info)

正常调试应用程序时,日志会正确显示在控制台输出上,但是当我查看设备控制台(显示在“设备和模拟器”窗口中)时,我根本看不到它们。

This article表示您应该使用以下命令配置系统以启用调试日志

sudo log config --mode "level:debug" --subsystem com.test.testapp

但这似乎没有什么区别。我猜这是因为我将 Mac 配置为查看日志,而不是 iPad。

如何在设备控制台的 os_log 中查看 ipad/iphone 日志?

最佳答案

“设备和模拟器”窗口仅显示崩溃报告。使用控制台应用程序或终端,通过 log --stream 命令查看实时日志输出。

要通过控制台应用程序查看设备的实时日志消息,无论是从 Xcode 运行还是直接从设备运行:

  • 打开 Console.app。
  • 点击左侧面板“设备”下的设备名称。
  • 选择操作,然后从菜单中选择包括信息消息。如果您还使用 .debug 级别消息,请确保也选择包含调试消息。 (如果没有选择这些项目,控制台将仅显示 .default.fault.error 级别消息。)

如果您仍然没有看到消息,请尝试输入此终端命令来配置应用程序的日志记录级别:

sudo log config --subsystem com.test.testapp --mode level:debug

这会打开子系统“com.test.testapp”的.debug级别日志记录(其中包括.info.default消息)。

如果您想要持久化消息,而不是默认的仅内存,请同时打开三个级别的持久化,如下所示:

sudo log config --subsystem com.test.testapp --mode level:debug,persist:debug

无论任何日志设置如何,只有崩溃报告才会出现在“设备和模拟器”窗口中。

关于ios - 在设备控制台中查看 os_log 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54714979/

相关文章:

ios - .car 在 iOS 中代表什么?编译 Assets (______)..?

ios - 如何创建一个计算器,通过一个输入填充多个具有不同值的标签字段?

ios - 创建 CoreData 关系导致代码中出现 20 多个错误

Iphone:如何在应用程序中显示库中的歌曲列表

iphone - VoiceOver 忽略可见 View ,并说出隐藏 View 的可访问性标签

iphone - 将电话号码和电子邮件添加到地址簿会导致 iPhone 应用程序崩溃

ios - NSLayoutRelationConstraint 到视觉格式约束

objective-c - IMServicePlugin 插件不适用于 OS X El Capitan 上的消息

iphone - 需要在 mac 中升级 Xcode/OS 级别的步骤吗?

iPhone - 如何确定现有项目的部署目标 iOS 版本