SDK logs

Updated

Collect SDK logs for trouble shooting.

If you’re troubleshooting an issue with the Agora Chat SDK, Agora support team might ask you to send the SDK logs. Logs record information about events that occurred in the SDK. These include errors and warnings as well as informational events.

By default, the SDK generates three log files, easemob.log and two easemob_Y-m-d_H-M-S.log files, each with a maximum size of 2048 KB (2 MB). These log files are encoded in UTF-8. The SDK writes the latest logs in easemob.log. When easemob.log is full, the SDK renames it to the name of the current time-dependent log file. If there are more than three log files, the SDK deletes the earliest log file, and creates a new easemob.log to record the latest logs.

For example, the SDK generates easemob.log to record logs at 8:00

a.m. on January 1, 2024. If this file is completely written at 8:30
a.m., the SDK renames it easemob_2024-01-01_08-30-00.log. At 9:30
a.m. and 10:30
a.m., the SDK generates easemob_2024-01-01_09-30-30.log and easemob_2024-01-01_10-30-30.log. At this time, easemob_2024-01-01_08-30-00.log will be removed before the SDK generates easemob.log to record the latest logs.

AgoraChatOptions#AgoraChatLogLevel specifies the log level for output.

  • (default) AgoraChatLogLevelDebug: All logs;
  • AgoraChatLogLevelWarning: Warnings and errors.
  • AgoraChatLogLevelError: Errors.

If you want to output SDK logs on the XCode console, you can enable log output during SDK initialization.

AgoraChatOptions* option = [AgoraChatOptions optionsWithAppkey:@""];
// Output logs on the XCode console
option.enableConsoleLog = YES;
// Set the log level. The default value is `AgoraChatLogLevelDebug`, indicating all logs are output.
option.logLevel = AgoraChatLogLevelDebug;
[ChatClient.sharedClient initializeSDKWithOptions:option];

Collect SDK logs

Here, a simulator is used as an example. To access SDK logs, take the following steps:

  1. Copy the app sandbox path printed by NSHomeDirectory().
  2. In the Finder on your Mac system, select Go > Go to Folder.
  3. Press Ctrl+V to paste the path and press Return.
  4. Open the logs directory {app sandbox path}/Library/Application Support/HyphenateSDK/easemobLog/ which contains the SDK logs.