How to log and report bugs

Article overview
ADB debugging
UART debugging
Kernel debugging
Capture bugreports
Submit bugreports
Log filtering
Raspberry Pi
Reporting bugs

ADB debugging

Android Debug Bridge (adb) is a powerful command-line tool with many features and capabilities. One of which lets you record live logs of your device.

How to set it up:

  1. Download and install Android Studio or SDK Platform Tools.
  2. On your device go to Settings > Emteria Settings and toggle to Enable ADB over Ethernet.
    enable-ethernet-marked-2
  3. Make sure your computer is in the same Network as your device.
  4. On your computer open: 
    cmd/terminal/shell
  5. To establish a connection with your device use: 
    adb connect <ip>
  6. To live log in terminal use: 
    adb logcat
  7. Pipe the output into a file with: 
    adb logcat -b all > path/to/log.txt

UART debugging

A serial connection to your device gives you debug information even before ADB is started, so that you can debug the whole boot of your device.

More information:

Kernel debugging

Access the device's shell either via ADB or UART and get diagnostic messages from the kernel:
dmesg

Bugreports

Capture bugreports

You can capture the generated bugreport with:

adb pull /data/user_de/0/com.android.shell/files/bugreports

Alternatively, you can create the bugreport using:

adb bugreport

For more information, see the Android documentation.

Submit bugreports

From your Device:

You can upload the current system log directly to our support service via:
Settings > Emteria > Submit bugreport.

The report will be automatically generated and uploaded in the background. Please use this feature immediately after you have discovered a crash or a broken application. Waiting or rebooting the device may overwrite the existing logs.

Note: This is possible starting with version 0.5.7 of emteria.OS.

 

From your Device Hub:

You can also sumbit a bugreport with an MDM command from your Device Hub. To do so:

  1. Log into your Device Hub and open the Devices overview page.
  2. In the Devices overview select the device for which you want to submit a bugreport.
    commands
  3. Navigate to the Commands tab.
  4. Click on the plus symbol (+) to open the Command dialog..
  5. Now the New Command window opens.
    sumbit-bugreport-command
  6. In the Examples tab select Submit new bugreport.
  7. Click Create.

Log filtering

Android may summarize, filter and rate-limit similar messages if user applications generate excessive amounts of logs.
To change this behavior, persist.logd.filter property can be disabled through the shell, for example, by using ADB:

adb shell setprop persist.logd.filter disable

Raspberry Pi

We have vcgencmd on our RPi images. In closed casings without a heat sink the CPU can become very hot, which leads to CPU throttling and might also cause freezes. You can check the current CPU temperature in the Raspberry Pi Settings or in the device shell using:

vcgencmd measure_temp

Reporting bugs

When you encountered a bug, please head to our forum to report it. Please be concise in your description but give as much details as needed. A good bugreport consists of the following parts:

  • Device / model and connected peripherals
  • emteria.OS version
  • What steps have you performed
  • What outcome did you expect
  • What outcome did you actually encounter
  • Was there an error message
  • Append logs