ios - 您可以使用 macOS "log stream"或 "log show"从连接的 iOS 设备获取消息吗?

标签 ios logging macos-sierra

随着 macOS 10.12 Sierra 中“统一日志记录”的引入,人们可以使用 log 命令在终端中查看系统日志消息。例如

sudo log stream

sudo log stream --process `pgrep -f /usr/local/bin/myprogram` --info --debug

log show --predicate 'process == "myprogram"' --last 1h --info --debug

使用新的“统一”Console.app,可以查看系统消息,也可以查看来自连接的 iOS 设备的消息。

有什么方法可以使用 log 命令或任何其他命令行界面在终端中查看 iOS 设备消息,或将它们发送到文件中?还是 Console.app 是唯一的方法?

最佳答案

tl;dr:log collect —device

log collect --device让您检索可以传递到 log show --archive system_logs.logarchive 中的日志存档包含您熟悉的所有选项。

使用 log collect --device自动猜测您所指的设备。 log collect device-name="Maxs iPhone"log collect device-udid=abcdefg从特定设备收集。

log collect --output /your/path将它保存到您指定的文件名或目录。如果--output没有给出,你的输出将在当前目录中为 system_logs.logarchive .

注意:我偶尔会收到关于 log: failed to create archive: Device not configured (6) 的错误或 log: failed to create archive: Connection reset by peer (54)但如果我只是重新运行命令,它有时会起作用🤷🏾‍♀️

关于ios - 您可以使用 macOS "log stream"或 "log show"从连接的 iOS 设备获取消息吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42145276/

相关文章:

ios - restoreCompletedTransactionsFailedWithError : Error Code 0 (SKErrorUnknown) on Cancel

python - 在 Mac 上尝试 pip 卸载时出现 "Operation not permitted"错误

java - 以编程方式配置 LogBack DBAppender

php - 在共享内存中记录访问

swift - Swift 3 是否完全向后兼容以前的操作系统版本

java - 更新到 MacOS Sierra 后,带有 Surefire (TestNG) 的 Maven 运行缓慢

ios - 有没有办法在 Swift 中将特殊字符转换为普通字符?

objective-c - 在连续的内存块中分配objective-c对象

objective-c - CLLocationManagerDelegate 中的街道名称

java - 如何使用 java.util.logging.* 更改存储日志的目录