Iphone 如何使asl_日志显示在iOS系统控制台输出中?

Iphone 如何使asl_日志显示在iOS系统控制台输出中?,iphone,ios,logging,Iphone,Ios,Logging,我正在调查asl_log是否比iPhone/iOS上的NSLog性能更好(可能是…),但我被困在一个点上,asl的日志输出似乎不会显示在系统控制台中(系统控制台、iConsolle等许多应用程序都可以看到)。我知道我的设置是正确的,因为我用ASL_OPT_STDERR打开它,当设备被拴住时,我在XCode中看到日志条目 我在网上探索了很多有趣的东西(例如),最有希望的似乎是带有“com.apple.console”功能的asl_open(),但遗憾的是,控制台中仍然没有显示输出。NSLog是唯一

我正在调查asl_log是否比iPhone/iOS上的NSLog性能更好(可能是…),但我被困在一个点上,asl的日志输出似乎不会显示在系统控制台中(系统控制台、iConsolle等许多应用程序都可以看到)。我知道我的设置是正确的,因为我用ASL_OPT_STDERR打开它,当设备被拴住时,我在XCode中看到日志条目


我在网上探索了很多有趣的东西(例如),最有希望的似乎是带有“com.apple.console”功能的asl_open(),但遗憾的是,控制台中仍然没有显示输出。NSLog是唯一的选项吗?

您需要使用ReadUID或ReadGID设置邮件的读取权限。设置为-1将允许任何用户/组根据头文件文档查看消息

aslmsg msg = asl_new(ASL_TYPE_MSG);
asl_set(msg, ASL_KEY_READ_UID, "-1");
asl_log(NULL, msg, ASL_LEVEL_NOTICE, "Hello, world!");
asl_free(msg);

将STDERR添加到ASL,然后它显示在控制台中

asl_add_log_file(NULL, STDERR_FILENO);