A lightweight tool to filter important error lines from Android logcat output.
This tool helps developers quickly extract useful log lines such as:
FATAL EXCEPTIONExceptionErrorElevel logsAndroidRuntimeANRCaused by
Built with Python + Streamlit.
Try the tool online:
https://logcat-error-filter.streamlit.app
Android logcat is often noisy and difficult to read.
A typical logcat output may contain:
- info logs
- debug logs
- network logs
- framework logs
- only a few lines that are actually useful for debugging
Example raw logcat:
03-11 10:01:21.123 1234 1234 I ActivityManager: Start proc 4321:com.example.app/u0a123 for activity
03-11 10:01:22.456 1234 5678 D NetworkClient: request start
03-11 10:01:23.789 1234 1234 E AndroidRuntime: FATAL EXCEPTION: main
03-11 10:01:23.790 1234 1234 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method on a null object reference
03-11 10:01:23.791 1234 1234 E AndroidRuntime: at com.example.app.MainActivity.onCreate(MainActivity.kt:42)
03-11 10:01:24.100 1234 5678 D OkHttp: request finished
Only a few lines are truly important.
This tool extracts those lines automatically.
03-11 10:01:23.789 1234 1234 E AndroidRuntime: FATAL EXCEPTION: main
03-11 10:01:23.790 1234 1234 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method on a null object reference
03-11 10:01:23.791 1234 1234 E AndroidRuntime: at com.example.app.MainActivity.onCreate(MainActivity.kt:42)
This makes log inspection much faster.
-
Filter Android logcat output
-
Extract important error-related lines
-
Detect FATAL EXCEPTION
-
Detect Exception and Error
-
Highlight E level logs
-
Show a simplified debugging view
Currently optimized for:
-
Android logcat
-
Android crash logs
-
AndroidRuntimeoutput -
Java / Kotlin exception lines
-
ANR-related lines
Supported keywords include:
-
FATAL -
Exception -
E -
AndroidRuntime -
ANR -
Caused by
The filter uses simple keyword-based matching.
Steps:
-
Split logcat into lines
-
Check each line for important error keywords
-
Keep only matching lines
-
Return a simplified error-focused output
This approach keeps the tool lightweight and fast.
Install dependencies
pip install -r requirements.txt
Run the Streamlit app
streamlit run app.py
Then open your browser:
http://localhost:8501
logcat-error-filter
│
├── app.py
├── requirements.txt
└── README.md
03-11 10:01:21.123 1234 1234 I ActivityManager: Start proc 4321:com.example.app/u0a123 for activity
03-11 10:01:22.456 1234 5678 D NetworkClient: request start
03-11 10:01:23.789 1234 1234 E AndroidRuntime: FATAL EXCEPTION: main
03-11 10:01:23.790 1234 1234 E AndroidRuntime: java.lang.NullPointerException
03-11 10:01:23.791 1234 1234 E AndroidRuntime: at com.example.app.MainActivity.onCreate(MainActivity.kt:42)
03-11 10:01:24.100 1234 5678 D OkHttp: request finished
This project targets common developer searches such as:
-
logcat error filter
-
android logcat filter
-
filter logcat errors
-
android logcat exception filter
-
androidruntime log parser
-
logcat debugging tool
You may also be interested in:
- Crash Log Analyzer : https://crash-log-analyzer.streamlit.app
- Stack Trace Root Cause Finder : https://stack-trace-root-cause-finder.streamlit.app
These tools help developers debug logs more efficiently.