SDK 日志
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.log 和 easemob_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 名称 | 所属模块/类 | 说明 |
|---|---|---|
setDebugMode | EMClient | 设置是否输出 SDK 调试信息;需要在 SDK 初始化完成后调用。 |
