无法注册 BoringSSL 日志调试更新

2024-01-11

当在安装了 iOS 11 beta 的 iPhone 上运行时,在 Xcode 9 beta 中调试应用程序时,我在执行网络调用时开始注意到以下消息:

[] network_config_register_boringssl_log_debug_updates Failed to register for BoringSSL log debug updates
[BoringSSL] Function boringssl_context_get_peer_npn_data: line 1212 Peer's advertised NPN data is NULL or empty

知道是什么原因造成的吗?


UPDATE

实际上有一种非常方便的方法可以使特定模拟器的某些日志静音:

xcrun simctl spawn booted log config --subsystem com.apple.network --category boringssl --mode level:off

还建议静默其他常见的不重要日志:

xcrun simctl spawn booted log config --subsystem com.apple.CoreBluetooth --mode level:off
xcrun simctl spawn booted log config --subsystem com.apple.CoreTelephony --mode level:off

原始答案(背景)

这些烦人的消息来自libboringssl.dylib :: boringssl_metrics_log_event:

int boringssl_metrics_log_event(...) {
  ...
  if (g_boringssl_log != nil && os_log_type_enabled(g_boringssl_log, OS_LOG_TYPE_ERROR) {
    os_log_error(g_boringssl_log, "%s(%d) Failed to log metrics", "boringssl_metrics_log_metric_block_invoke", 151);
  }
  ...
}

消除这些消息的一个简单方法是取消g_boringssl_log.

g_boringssl_log是一个全局变量:

os_log_t g_boringssl_log = nil;

它被初始化为boringssl_log_open:

void boringssl_log_open() {
   static dispatch_token onceToken = nil;
   dispatch_once(onceToken, ^{
     g_boringssl_log = os_log_create("com.apple.network", "boringssl");
   });
}

IMO最简单的解决方案是无效g_boring_ssl是跳过执行dispatch_once.

这可以通过设置断点来实现__boringssl_log_open_block_invoke用行动thread return。该断点将被调用一次,感谢dispatch_once,但是函数体不会被执行,因为立即执行thread return. So g_boringssl_log永远不会被初始化,并且控制台中不会有任何日志。

PS我可能还建议设置一个类似的断点____nwlog_connection_log_block_invoke from libnetwork.dylib.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法注册 BoringSSL 日志调试更新 的相关文章

  • 如何调试 Python 日志记录配置文件错误

    我已将 Python 的日志记录模块添加到我的代码中 以避免混乱的打印语句 但我却因配置错误而陷入困境 错误消息的信息不是很丰富 Traceback most recent call last File HDAudioSync py lin
  • NLog 最好的查看器是哪个? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何使用Python的RotatingFileHandler

    我正在尝试进行测试运行logging模块的RotatingFileHandler https docs python org 3 library logging handlers html logging handlers Rotating
  • grails 中的 log4j:在附加程序配置中使用变量时打印错误

    我在 grails 2 3 4 中使用 slf4j DailyRollingFileAppender 当我尝试使用变量作为 文件 参数的一部分时 grails 总是在应用程序启动时打印一些错误日志 但是我的应用程序的日志消息可以按预期打印到
  • 如何从 os_log() 查找源文件和行号

    The 记录 Apple 参考 https developer apple com reference os 1891852 logging对于 iOS 10 和 macOS Sierra 中的新日志记录系统 明确表示不要包含行号和源文件信
  • .NET Web API - 添加日志记录

    我正在寻找有关处理 API 日志记录的最佳方法的帮助 我想将所有请求和响应记录到 sql 或文本文件 如果这是最好的方法 目前我已经在 SQL Server 的日志表中插入一行 我使用名为 LogAction 的静态方法来执行此操作 并在
  • 如何使用 Serilog ForContext

    我是 Serilog 新手 很难弄清楚如何使用上下文功能 当我运行下面的代码时 输 出文件不包含报告 ID 我缺少什么想法吗 var logger new LoggerConfiguration WriteTo File C Log txt
  • Spring的@PreDestroy导致随机记录而不记录

    我正在使用 Spring 并且在终止时我让 PreDestroy 清理 bean 我不明白为什么日志记录有时会成功 而有时会失败 Using Log4j2 Logger log LogManager getLogger MyClass cl
  • iPad 上的 ios11 iphone 应用程序图标丢失

    我有一个仅限 iPhone 的应用程序 但它也可以在 iPad 上以兼容模式运行 毫不奇怪 但是当我更新了ios11的应用程序后 iPad上的应用程序图标丢失了 这是我尝试过的 在iPhone模拟器上启动 出现图标 在 iPad 模拟器上启
  • XcodeColors 在 XCode 5 中不起作用

    我尝试安装XcodeColors在 XCode 5 中 但不幸的是 它不能与我从 XCode 4 6 获得的旧插件一起使用 下一步 我检查了 github 网站 在那里我看到了以下拉取请求 提供了 XCode 5 的工作版本 https g
  • 如何配置应用程序中的所有记录器

    Python 的日志记录模块允许模块或类定义自己的记录器 不同的记录器可以有不同的处理程序 其中一些可能选择记录到文件 而另一些则选择记录到标准输出 现在 我的应用程序使用其中几个模块 每个模块都有自己的记录器 这些记录器具有各种处理程序
  • 从远程托管上的 PHP 获取 PHP 错误日志

    是否有 PHP 函数或其他方式以字符串形式获取 PHP 错误日志 我需要这个 因为我无法访问在其他人的服务器上运行的站点的错误日志 他提出通过电子邮件将错误日志发送给我 但这不太方便 有什么方法可以将错误日志输出到 PHP 页面吗 我意识到
  • Python 中上下文相关的日志级别

    我正在用 Python 制作一个 Web 应用程序框架的原型 主要是为了教育目的 但我一直坚持一个我一直想要的功能 每条路由的日志级别 此功能的目标是识别我们正在执行诊断的一些特定入口点 例如 我想跟踪呼叫者拨打电话时发生的情况POST s
  • PHP MVC 应用程序中哪里可以捕获异常?

    我有一个中小型 PHP 应用程序 用于练习 OOP 和 MVC 技能 我有初始化 引导程序调用的文件Router谁打电话控制器 gt 服务层 gt 存储库 数据库 然后将变量发送回视图层 所有依赖项均由 DiC IOC 处理 我创建抽象类
  • 为 Logstash 中的新字段设置 Elasticsearch Analyzer

    通过使用GROK filter 我们可以向Logstash添加新字段 但是 我想知道如何为该特定字段设置分析器 例如 我有一个新的 id 字段 其中有一个字段 例如a b 但是 Elasticsearch 附带的普通分析器会将其分解为a a
  • Morgan Logger + Express.js:写入文件并在控制台中显示

    我正在尝试将 Morgan 与 Express js 结合使用来编写日志文件 同时也在控制台上显示我的日志 我正在使用这段代码 var logger require morgan var accessLogStream fs createW
  • 有没有一种简单的方法来为每个类创建一个记录器实例?

    我现在使用静态方法来记录 因为我发现在Android中登录非常容易 但是现在我需要为不同的类配置不同的appender 所以我对静态记录方法有一个问题 我读了Log4J 创建 Logger 实例的策略 https stackoverflow
  • 如何在 Python 中的函数入口、内部和退出处进行日志记录

    我希望能够使用 Python 日志记录工具在我的代码中进行简单且一致的日志记录 我能够执行以下操作 我希望所有现有 未来的模块和函数都有 输入 和 完成 日志消息 我不想添加相同的代码片段来定义日志记录参数 如下所示don t want t
  • 日志中的“时间”字段到底表示什么?

    我在一台存在一些性能问题的服务器上研究了 IIS 7 5 中的 W3C 格式日志文件一段时间 在我看来 与MSDN 文档 http technet microsoft com en us library cc754702 28WS 10 2
  • 带有 RotatingFileHandler 的 Python 3 记录器超出 maxBytes 限制

    我使用以下代码来限制日志文件的大小 最小示例 import logging from logging handlers import RotatingFileHandler Set up logfile and message loggin

随机推荐

  • SQLAlchemy 按字段唯一约束

    我在现场有 UniqueConstraint 但它不允许我添加多个条目 最多两个 from sqlalchemy import Column Integer String Boolean UniqueConstraint class Car
  • ANTLR 4 令牌规则匹配任何字符,直到遇到 XYZ

    我想要一个标记规则 它会吞噬所有字符 直到它到达字符XYZ 因此 如果输入是这样的 helloXYZ 那么令牌规则应该返回这个令牌 hello 如果输入是这样的 Blah Blah XYZ 那么令牌规则应该返回这个令牌 Blah Blah
  • 反序列化 YAML 数据“表”

    我正在使用 yamldotnet 和 c 来反序列化由第三方软件应用程序创建的文件 以下 YAML 文件示例在应用程序中均有效 File1 Groups Name ATeam FirstName LastName Age Height Jo
  • 将图片存储为文件或像 Web 应用程序的 MSSQL 一样存储在数据库中?

    我正在构建一个 ASP NET Web 解决方案 其中包含大量图片并希望包含相当多的流量 我真的很想取得成绩 我应该将图片保存在数据库还是文件系统中 不管答案如何 我更感兴趣的是为什么选择特定的方式 将图片存储在文件系统中并将图片位置存储在
  • 从文件名中提取数字

    我有很多文件 其名称如下 tmp1 csv tmp32 csv tmp9 csv tmp76 csv 它们位于同一目录中 我想提取文件名中的数字 我怎样才能做到这一点bash PS I tried grep 但是做不到 我也尝试过 file
  • 在 Linux 中存储和访问多达 1000 万个文件

    我正在编写一个应用程序 需要存储多达约 1000 万个的大量文件 它们目前以 UUID 命名 每个大小约为 4MB 但大小始终相同 从 向这些文件读取和写入始终是连续的 我正在寻求答案的两个主要问题 1 哪种文件系统最适合这个 XFS 还是
  • 使用 firebase unity sdk firestore 包时 Android 设备上出现错误

    我正在尝试在我的 Android 应用程序中使用 firebase unity sdk 具体来说是 FirebaseFirestore unitypackage 我可以通过统一直接运行我的应用程序 让一切正常运行 但是当我进行 androi
  • 如何在 Java 中以编程方式减小 PDF 文件大小?

    Document document new Document reader getPageSizeWithRotation 1 PdfCopy writer new PdfCopy document new FileOutputStream
  • 如何在 Bootstrap 中创建带有关闭图标的标签?

    使用 Bootstrap 3 获得带有关闭图标的边框标签的好方法是什么 Stack Overflow 上的一个例子 我最终得到http jsfiddle net 7zkCU 30 http jsfiddle net 7zkCU 30 改编自
  • 如何使 JavaScript Date.prototype.toString() 始终显示本地时区

    我设置了 UTC 0 时间 并希望它显示在每台计算机本地时区的不同计算机上 但是当我在我的计算机 VMware VM 中的 Chrome 中运行代码时 它给了我以下信息 Date UTC 2014 0 27 6 1390802400000
  • webpack:在 MacOS 上正常,在 Linux 上加载器错误

    我遇到一些 webpack raw loader sass sync loader 问题 在我的本地机器上 一切运行良好 但是 在我的 Linux CI 服务器上 webpack 失败了 有人可以指导我如何开始诊断正在发生的事情吗 我不太确
  • SwiftUI macOS 右侧边栏检查器

    我有一个基于文档的 SwiftUI 应用程序 我想制作一个像 Xcode 中那样的检查器侧边栏 从 Xcode 的文档应用程序模板开始 我尝试了以下操作 struct ContentView View Binding var documen
  • 实例成员不能用于自定义类的类型

    我有一个名为 威士忌制造商 的课程 它只启动新的威士忌 现在我想在我的 WhiskyOverViewController 中添加新添加的威士忌 但我面临以下问题 class WhiskyOverViewController UIViewCo
  • 用于匹配方括号或大括号之间的文本的正则表达式

    与我相关的上一个问题 https stackoverflow com questions 2403122 regular expression to extract text between square brackets 我有一个以下格式
  • ActionMailer 使用 rspec 进行测试 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在开发一个Rails 4 应用其中涉及发送 接收电子邮件 例如 我在用户注册 用户评论以及应用程序
  • 使用 C# 解析 XML

    I have an XML file as follows 我上传了 XML 文件 http dl dropbox com u 10773282 2011 result xml http dl dropbox com u 10773282
  • 什么是交叉编译器和跨平台?

    我对跨平台和交叉编译器的术语有点困惑 首先让我澄清一下跨平台 当人们谈论跨平台时 指的是CPU的架构 即X86和X64 或操作系统 即 Windows 32 位或 Windows 64 服务器或桌面 UNIX 没有 64 位或 32 位等不
  • 如何将本地主机重定向到127.0.0.1:8080?

    当我使用 Apache gt Service gt Test Port 80 检查时 它显示 Your port 80 is actually used by Server Microsoft HTTPAPI 2 0 我怎样才能禁用这个功能
  • 使用 jupyter 笔记本中的散景小部件更新散景图

    我想使用 jupyter 笔记本中的散景小部件来更新散景图 我的 有点hacky 代码如下所示 from bokeh plotting import figure from bokeh io import output notebook p
  • 无法注册 BoringSSL 日志调试更新

    当在安装了 iOS 11 beta 的 iPhone 上运行时 在 Xcode 9 beta 中调试应用程序时 我在执行网络调用时开始注意到以下消息 network config register boringssl log debug u