xref: /expo/docs/pages/workflow/logging.mdx (revision 83783687)
1---
2title: View logs
3description: Learn how to view logs when using Expo CLI, native logs in Android Studio and Xcode, and system logs.
4---
5
6import { Terminal } from '~/ui/components/Snippet';
7
8Logging information in a React Native app works similarly to in a web browser. You can use `console.log`, `console.warn` and `console.error`. However, at times, you might want to dive deep to get more useful information about what's happening in your app. For that, you can use **native logs** and **system logs**.
9
10## Console logs
11
12When you run `npx expo start` and connect a device, console logs will show up in the terminal process. These logs are sent from the runtime to Expo CLI over web sockets, meaning the results are lower fidelity than connecting dev tools directly to the engine.
13
14You can view **high fidelity** logs and use advanced logging functions like `console.table` by creating a development build with [Hermes](/guides/using-hermes), and [connecting the inspector](/guides/using-hermes#javascript-inspector-for-hermes).
15
16## Native logs
17
18You can view native runtime logs in Android Studio and Xcode by compiling the native app locally. For more information, see [native debugging](/debugging/runtime-issues/#native-debugging).
19
20## System logs
21
22While it's usually not necessary, if you want to see logs for everything happening on your device, for example, even the logs from other apps and the OS, you can use the following commands:
23
24<Terminal
25  cmd={[
26    '# Show system logs for an Android device with adb logcat',
27    '$ npx react-native log-android',
28    '# Show system logs for an iOS device',
29    '$ npx react-native log-ios',
30  ]}
31/>
32