{"repo":"lixiasky-back/coroTracer","free":true,"listed":false,"github":"https://github.com/lixiasky-back/coroTracer","clone":"git clone https://github.com/lixiasky-back/coroTracer.git","description":"A cross-language, zero-copy coroutine observability framework based on the cTP shared-memory protocol, utilizing lock-free ring buffers for ultra-low overhead state tracing.","language":"Go","stars":32,"topics":["coroutines","golang-application","ipc","language-agnostic","low-latency","observability","profiling","shared-memory","tracing","zero-copy"],"license":"MIT","category":"analytics","readme_excerpt":"coroTracer: Cross-Language, Zero-Copy Coroutine Observability Why I built this : while debugging one of my own M:N schedulers, I ran into an especially nasty failure mode. Under heavy load, throughput would suddenly collapse to zero, but ASAN and TSAN stayed silent because nothing was corrupt in the usual memory-safety sense. It turned out to be a classic lost wakeup : the coroutine had become logically unreachable, but traditional tooling was terrible at surfacing that kind of state-machine break. coroTracer was built for exactly this class of problem. coroTracer is an out-of-process coroutine trace collector. It is designed for M:N coroutine schedulers, with a very specific goal: - capture coroutine state transitions - minimize interference with the target process - emit reusable raw traces - provide a reliable low-level foundation for later offline analysis and database export It is not positioned as an APM product or an online analysis platform. At the moment, this repository is focused on two things: 1. safely collecting coroutine state into JSONL 2. exporting an existing JSONL trace into SQLite / MySQL / PostgreSQL / CSV The core safety properties of the collection protocol have also been modeled and proved in Lean 4. Relevant files: - proof/proof.lean - proof.md - proof en.md - docs/cli usage.md Project status : at this point the project is already usable end to end. The collection, persistence, and export pipeline is working as a closed loop. If I had to point out the","default_branch":null,"files":null,"tree":[],"storefront":"/r/lixiasky-back","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/lixiasky-back/coroTracer/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}