rust-android-telemetry

Configure Android Rust telemetry channels and deterministic JSON serialization for RIPDPI.

58|4|Updated Mar 8, 2026
One-click install
npx skills add https://github.com/po4yka/RIPDPI --skill rust-android-telemetry
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: rust-android-telemetry
Source: https://github.com/po4yka/RIPDPI/tree/main/.claude/skills/rust-android-telemetry
Command: npx skills add https://github.com/po4yka/RIPDPI --skill rust-android-telemetry

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Telemetry on Android incurs higher costs due to log pathways, channel selection, and cross-layer observability needs. This skill standardizes where events are emitted, how they are serialized, and how per-packet observability is surfaced without harming performance.

Core Features & Use Cases

  • Channel selection between android_logger, tracing-android, and tracing-android-trace, with performance trade-offs for per-packet paths.
  • Deterministic JSON for goldens using serde_json with PrettyFormatter and sorted keys to ensure stable diffs.
  • Data/control-plane separation with bounded event rings, atomic counters, and a pull-model 1 Hz polling for Kotlin consumers.
  • Privacy-conscious emission ensuring no sensitive data appears in telemetry per network-fingerprint-privacy rules.

Quick Start

Configure the telemetry module to route per-packet events through the chosen channel (android_logger or tracing) and enable deterministic JSON export for goldens.

Frequently Asked Questions about rust-android-telemetry

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I configure Rust telemetry on Android to separate control-plane and data-plane events?

Rust telemetry on Android separates control-plane and data-plane events using bounded event rings and atomic counters, exposing data to Kotlin consumers via a 1 Hz pull-model polling interface. This prevents per-packet logging from harming performance.

How do I generate deterministic JSON for golden tests in a Rust Android project?

Deterministic JSON for goldens is generated using serde_json with PrettyFormatter and sorted keys, ensuring stable diffs. This serialization approach standardizes event formatting for consistent telemetry testing.

What's the best way to choose between android_logger and tracing-android for per-packet observability?

Channel selection between android_logger, tracing-android, and tracing-android-trace depends on performance trade-offs for per-packet paths. The telemetry module routes events through the chosen channel to balance observability with throughput.

Does Rust telemetry on Android enforce privacy constraints for network fingerprinting?

Privacy-conscious emission enforces network-fingerprint-privacy rules, ensuring no sensitive data appears in telemetry. This prevents leaking personal information through logs or tracing channels on Android.

Why does Android telemetry incur higher performance costs and how can I reduce it?

Android telemetry incurs higher costs due to log pathways and cross-layer observability needs. Centralizing channel selection, applying bounded event rings, and using a pull-model polling interface reduces per-packet overhead.