SDK 日志

大约 2 分钟

SDK 日志

功能说明

环信即时通讯 IM 日志记录 SDK 相关的信息和事件。环信技术支持团队帮你排查问题时可能会请你发送 SDK 日志。

输出信息到日志文件

默认情况下,SDK 最多可生成和保存三个文件,easemob.log 和两个 easemob_YYYY-MM-DD_HH-MM-SS.log 文件。这些文件为 UTF-8 编码,每个不超过 5 MB。SDK 会将最新的日志写入 easemob.log 文件,写满时则会将其重命名为对应时间点的 easemob_YYYY-MM-DD_HH-MM-SS.log 文件,若日志文件超过三个,则会删除最早的文件。

例如,SDK 在 2024 年 1 月 1 日上午 8:00:00 记录日志时会生成 easemob.log 文件,若在 8:30:00 将 easemob.log 文件写满则会将其重命名为 easemob_2024-01-01_08-30-00.log 文件,随后在 9:30:30 和 10:30:30 分别生成了 easemob_2024-01-01_09-30-30.logeasemob_2024-01-01_10-30-30.log 文件,则此时 easemob_2024-01-01_08-30-00.log 文件会被移除。

SDK 默认关闭调试信息输出。排查问题时,如需输出调试信息,可在 SDK 初始化完成后开启调试模式;生产环境建议关闭调试模式。关闭调试模式后,SDK 不再输出调试、信息和警告级别的日志,但仍会输出错误日志。

// 需要在 SDK 初始化完成后调用;true 表示开启调试信息输出。
EMClient.getInstance().setDebugMode(true);

获取本地日志

当应用的外部专属存储目录可用且可写时,可以通过以下命令获取本地日志。在下列代码中,你需要进行如下替换:

  • {应用包名} 替换为应用的包名,例如 com.hyphenate.chatuidemo
  • {App Key} 需要替换为应用的环信 App Key。
adb pull /sdcard/Android/data/{应用包名}/{App Key}/core_log

如果外部专属存储目录不可用,SDK 会将日志写入应用内部的 files 目录。该目录通常不能直接通过上述 adb pull 命令读取,可在应用内导出日志,或在可调试应用中使用相应的调试方式获取。

接口列表

API 名称所属模块/类说明
setDebugModeEMClient设置是否输出 SDK 调试信息;需要在 SDK 初始化完成后调用。
上次编辑于: