# Pywayne Adb Logcat Reader

> Android device logcat reader for real-time log monitoring. Use when working with pywayne.adb.logcat_reader module to read Android device logs via adb logcat command, supporting both C++ backend (faster) and Python backend (subprocess) with generator-style output for streaming logs. Use when this capability is needed.

- Skill: `tomevault-io/pywayne-adb-logcat-reader` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/pywayne-adb-logcat-reader`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/pywayne-adb-logcat-reader/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/pywayne-adb-logcat-reader

---


# Pywayne ADB Logcat Reader

This module provides real-time Android device log reading capabilities via the `adb logcat` command.

## Quick Start

```python
from pywayne.adb.logcat_reader import AdbLogcatReader

# Create reader (default C++ backend)
reader = AdbLogcatReader()

# Start log capture and read
reader.start()
for line in reader.read():
    print(line)
```

# Use Python backend (alternative)
reader = AdbLogcatReader(backend='python')
reader.start()
for line in reader.read():
    print(line)
```

# Stop and cleanup
reader.stop()
```

## Initialization

```python
# C++ backend (default, faster)
reader = AdbLogcatReader()

# Python backend (alternative, may be more compatible)
reader = AdbLogcatReader(backend='python')
```

## Reading Logs

The `read()` method yields log lines incrementally as a generator, suitable for processing large logs or real-time monitoring.

```python
# Process logs as they arrive
for line in reader.read():
    # Filter, parse, store...
```

## Properties

| Property | Description |
|---------|-------------|
| `backend` | 'cpp' or 'python' | Active backend for adb logcat |
| `running` | Whether logcat process is running |

## Methods

| Method | Description |
|---------|-------------|
| `start()` | Start adb logcat process |
| `read()` | Generator yielding log lines |
| `stop()` | Stop logcat process |
| `get_backend()` | Get active backend type |

## Backends

### C++ Backend (Default)

- Uses native C++ implementation
- Faster performance for real-time streaming
- Better compatibility with adb logcat

### Python Backend (Alternative)

- Uses Python subprocess to call adb
- More compatible across different environments
- Easier debugging and integration

## Notes

- C++ backend is faster and recommended for production
- Python backend may be useful during development
- `stop()` terminates adb logcat; use `Ctrl+C` to send interrupt signal
- Logs are cleared automatically when process stops

---
> Converted and distributed by [TomeVault](https://tomevault.io/claim/wangyendt) — claim your Tome and manage your conversions.
<!-- tomevault:4.0:skill_md:2026-04-13 -->

