xref: /aosp_15_r20/external/webrtc/docs/native-code/logging.md (revision d9f758449e529ab9291ac668be2861e7a55c2422)
1*d9f75844SAndroid Build Coastguard WorkerNative logs are often valuable in order to debug issues that can't be easily
2*d9f75844SAndroid Build Coastguard Workerreproduced. Following are instructions for gathering logs on various platforms.
3*d9f75844SAndroid Build Coastguard Worker
4*d9f75844SAndroid Build Coastguard WorkerTo enable native logs for a native application, you can either:
5*d9f75844SAndroid Build Coastguard Worker
6*d9f75844SAndroid Build Coastguard Worker  * Use a debug build of WebRTC (a build where `NDEBUG` is not defined),
7*d9f75844SAndroid Build Coastguard Worker    which will enable `INFO` logging by default.
8*d9f75844SAndroid Build Coastguard Worker
9*d9f75844SAndroid Build Coastguard Worker  * Call `rtc::LogMessage::LogToDebug(rtc::LS_INFO)` within your application.
10*d9f75844SAndroid Build Coastguard Worker    Or use `LS_VERBOSE` to enable `VERBOSE` logging.
11*d9f75844SAndroid Build Coastguard Worker
12*d9f75844SAndroid Build Coastguard WorkerFor the location of the log output on different platforms, see below.
13*d9f75844SAndroid Build Coastguard Worker
14*d9f75844SAndroid Build Coastguard Worker#### Android
15*d9f75844SAndroid Build Coastguard Worker
16*d9f75844SAndroid Build Coastguard WorkerLogged to Android system log. Can be obtained using:
17*d9f75844SAndroid Build Coastguard Worker
18*d9f75844SAndroid Build Coastguard Worker~~~~ bash
19*d9f75844SAndroid Build Coastguard Workeradb logcat -s "libjingle"
20*d9f75844SAndroid Build Coastguard Worker~~~~
21*d9f75844SAndroid Build Coastguard Worker
22*d9f75844SAndroid Build Coastguard WorkerTo enable the logging in a non-debug build from Java code, use
23*d9f75844SAndroid Build Coastguard Worker`Logging.enableLogToDebugOutput(Logging.Severity.LS_INFO)`.
24*d9f75844SAndroid Build Coastguard Worker
25*d9f75844SAndroid Build Coastguard Worker#### iOS
26*d9f75844SAndroid Build Coastguard Worker
27*d9f75844SAndroid Build Coastguard WorkerOnly logged to `stderr` by default. To log to a file, use `RTCFileLogger`.
28*d9f75844SAndroid Build Coastguard Worker
29*d9f75844SAndroid Build Coastguard Worker#### Mac
30*d9f75844SAndroid Build Coastguard Worker
31*d9f75844SAndroid Build Coastguard WorkerFor debug builds of WebRTC (builds where `NDEBUG` is not defined), logs to
32*d9f75844SAndroid Build Coastguard Worker`stderr`. To do this for release builds as well, set a boolean preference named
33*d9f75844SAndroid Build Coastguard Worker'logToStderr' to `true` for your application. Or, use `RTCFileLogger` to log to
34*d9f75844SAndroid Build Coastguard Workera file.
35*d9f75844SAndroid Build Coastguard Worker
36*d9f75844SAndroid Build Coastguard Worker#### Windows
37*d9f75844SAndroid Build Coastguard Worker
38*d9f75844SAndroid Build Coastguard WorkerLogs to the debugger and `stderr`.
39*d9f75844SAndroid Build Coastguard Worker
40*d9f75844SAndroid Build Coastguard Worker#### Linux/Other Platforms
41*d9f75844SAndroid Build Coastguard Worker
42*d9f75844SAndroid Build Coastguard WorkerLogs to `stderr`.
43