问题标签 [oslog]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
124 浏览

ios - 如何使用日志工具从设备流式传输 os_log 日志条目?

这是一个关于 Apple 统一日志记录和活动跟踪系统的问题,有时称为os_log.

我有一个不会在模拟器中运行的应用程序,而只能在设备上运行。我想用来os_log发出日志。我想查看日志的实时流,而不是在控制台应用程序中,而是使用log命令行工具,因为它提供了一个更灵活的界面来过滤日志消息。有没有办法做到这一点?

一种从设备(不是模拟器)查看日志(不是文件)的方法,这些日志是通过调用(不是其他系统)创建的?os_log

0 投票
1 回答
2072 浏览

ios - os_log - 使用未解决的标识符错误

我正在尝试通过记录一个简单的语句来使用新的 os_log API: os_log("Hello")

我收到 os_log 错误:使用未解析的标识符“os_log”

我也试过把它包在一个块里,像这样

我仍然得到同样的错误。我想在 Swift 4 中使用它。

我寻找可能需要的框架,但没有找到可能的候选者。

我也没有从这些链接中找到解决方案:

https://developer.apple.com/documentation/os/logging

https://developer.apple.com/videos/play/wwdc2016/721/

0 投票
1 回答
725 浏览

c# - How to P/Invoke os_log?

What should the syntax be to call the MacOS' os_log from C# in a .NET Core console app?

Based on
https://developer.apple.com/documentation/os/os_log
and
How to use iOS OSLog with Xamarin?
and
https://opensource.apple.com/source/xnu/xnu-4903.221.2/libkern/os/log.h.auto.html
I was expecting something like this:

However, when I try to run this on my Mac I get a System.DllNotFoundException that says Unable to load shared library '__Internal' or one of its dependencies... .

Any help with this issue or P/Invoke between C# and MacOS would be very helpful, thanks!

0 投票
2 回答
1398 浏览

ios - 如何禁用某个 oslog 日志级别?

对于以下功能:

如果我想禁用/启用某个日志级别该怎么办?

目前使用 API,我唯一可以访问的是isEnabled功能:

它只返回它是否启用。

0 投票
1 回答
269 浏览

ios - 如何为 oslog 创建的日志添加不同的记录器(输出目的地,如文件和 Crashlytics)?

现在,如果我更改 stddr 的路径,那么我的日志将不再进入控制台,它们只会进入日志文件。

我想知道是否有一种简单的方法可以同时拥有它们?

还有无论如何我可以将生成的日志传递OSLog给 toCrashlytics吗?

0 投票
1 回答
503 浏览

ios - 如何使用 Console.app 从模拟器中运行的 iOS 应用程序中查看来自 os_log 的调试级日志?

这是一个关于如何使用 Apple 的统一日志框架的问题,也称为“os_log”,您从 Swift 调用的函数。

具体来说,我想知道是否有可能:

  1. 在 Console.app 中查看日志(不使用log命令行工具)...
  2. 查看debug级别日志(不仅仅是info级别日志)...
  3. 对于在模拟器中运行的 iOS 应用程序(不仅仅是在设备上运行)。

您不能仅通过运行 Console.app、指向模拟器并选择Action / Include Debug Message来做到这一点,这是显而易见的事情。

This article建议debug-级别日志不显示,因为“'系统'日志级别设置为info”但我无法在任何地方找到解释这意味着什么的讨论。

0 投票
0 回答
286 浏览

ios - OSLog 将结构值写入文件并将日志绘制到文件中

我有两个关于使用 OSLog lib 进行日志记录的问题。我曾经使用 log4j 和类似的日志库,现在我对 OSLog 感到困惑。

  1. 我有一个名为 coord 的结构,其中包含 x 和 y 变量。我可以使用 print 直接绘制它,但不能将它添加到 os_log 函数中:
  1. 我知道 OSLog 将日志条目存储在内存中,我必须使用 console.app 来查看它们,但是,我可以将我的应用程序的所有日志条目假脱机到日志文件中吗?我在苹果文档中看到了一些属性文件,但并不关心将它们写入文本文件。

    2.1 是否可以只将一个类别的日志条目写入文件以仅分析某些类别,例如仅分析算法?

0 投票
0 回答
36 浏览

ios - 即使 AppleWatch 未连接到 Mac,如何存储来自 AppleWatch 的日志

我正在尝试存储我编写的应用程序中的日志(仅限 Apple Watch,Swift/SwiftUI),以便稍后在我将 iPhone 连接到我的 Mac 后访问它们。是否有可能将日志全天存储在 AppleWatch 或 iPhone 上并稍后访问它们?如果我可以保存 的条目,那就太好了os_log,因为我用它创建了我的所有日​​志。我希望能够保存我的应用程序的所有日志以供以后使用,例如自编写的调试配置文件,但我没有设法实现这一点。

我在应用程序中编写日志,例如:

如果我的 iPhone 已连接,我只能在我的 Mac 上的控制台应用程序中看到当前日志,但我想查看例如最后一天的所有日志条目。

您知道如何实现这一目标吗?

提前谢谢了

0 投票
4 回答
18499 浏览

ios - Xcode 日志记录:“启用金属 API 验证”

我正在通过 Xcode 构建一个 macOS 应用程序。每次构建时,我都会得到日志输出:

启用金属 API 验证

据我所知,我的应用程序没有使用任何 Metal 功能。我没有使用硬件加速的 3D 图形或着色器或视频游戏功能或类似的东西。

为什么 Xcode 打印 Metal API 日志输出?

我的应用程序中是否使用了 Metal?我可以或应该禁用它吗?

如何禁用此“启用金属 API 验证”日志消息?

0 投票
2 回答
2142 浏览

swift - Xcode 12 和 OSLog (os.log):包装 OSLogMessage 会导致编译错误:参数必须是字符串插值

在 Xcode 12 / iOS 14 中,OSLog 获得了对字符串插值的支持(耶!)。但是仍然不可能附加挂钩以轻松登录到其他渠道,例如 Crashlytics。

所以我想我会做一个简单的包装器并传递参数。然而,关于字符串插值似乎发生了一些神奇的事情。

提供的新 Logger 类,它带有一个OSLogMessageas 参数,可以按如下方式使用:


包装新的 Logger 结构

所以让我们把它包装在一个结构中:

相同的签名,但不幸的是,编译器不允许这样做:

此外,尝试调用我的结构也会导致一个奇怪的特定编译器错误:

产量:

直接调用os_log(_: OSLogMessage)而不是新结构会给出相同的结果。

有没有办法解决这个问题?我错过了什么吗?