A live log streaming workspace with ambient audio cues
Project description
Logs ASMR
A desktop log streaming workspace with ambient audio that reacts to your error rate. Calm ocean waves when things are healthy, rain when errors trickle in, full thunderstorm when it hits the fan.
Install
pip install logs-asmr
Quick Start
logs-asmr --fake # demo mode with synthetic logs
Log Sources
Connect to logs from multiple backends:
- AWS CloudWatch — browse log groups and streams
- Docker — tail container logs
- Kubernetes — stream pod logs
- GCP Cloud Logging — Google Cloud logs
- Grafana Loki — WebSocket streaming
- systemd journald — system journal (Linux)
- File / stdin — tail local files
Audio
Three ambient tracks crossfade based on error rate over a 10-second sliding window:
| Error Rate | Sound | Track |
|---|---|---|
| 0 errors/sec | Ocean waves | beach.opus |
| > 0 and ≤ 1/sec | Rain + distant thunder | rain_thunder.opus |
| > 1/sec | Full thunderstorm | thunderstorm.opus |
A white noise floor smooths transitions between tracks. Cooldown timers (30s for alarm, 10s for warning) prevent flip-flopping when error rates fluctuate.
Swap in your own sounds from Settings > Audio — any .wav, .mp3, or .opus file works. Night mode (auto-detected from system dark mode) cuts volume by half.
Filtering
A slide-out filter drawer with live-updating results:
- Text include/exclude with optional regex
- Level chips — toggle ERROR, WARN, INFO, DEBUG
- Component chips — auto-discovered from log fields (
service,component,logger, etc.) - Filter presets — save and load per log group
Keyboard Shortcuts
| Key | Action |
|---|---|
Space |
Pause / resume live tail |
M |
Mute / unmute audio |
Ctrl+F |
Open filter drawer |
Ctrl+L |
Clear log view |
Escape |
Close filter drawer |
Performance
- 10,000-event ring buffer with overflow detection
- 100ms processing ticks with batched rendering
- Up to 50,000 lines retained in the viewport
- Live event rate and drop count in the status bar
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file logs_asmr-1.0.2.tar.gz.
File metadata
- Download URL: logs_asmr-1.0.2.tar.gz
- Upload date:
- Size: 938.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
20da2f47e2c570b97e3cdeea494dc8dca29a491dc075b259c82ceaebbc7a77c5
|
|
| MD5 |
fddf6d532488a41699f0b422d3de840f
|
|
| BLAKE2b-256 |
75da5a8b277d3a8a14d503f4ab6e3d7ceffe40dff6d2b424688075f7e88d2326
|
Provenance
The following attestation bundles were made for logs_asmr-1.0.2.tar.gz:
Publisher:
publish.yml on justinGrosvenor/logs-asmr
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
logs_asmr-1.0.2.tar.gz -
Subject digest:
20da2f47e2c570b97e3cdeea494dc8dca29a491dc075b259c82ceaebbc7a77c5 - Sigstore transparency entry: 1006650283
- Sigstore integration time:
-
Permalink:
justinGrosvenor/logs-asmr@1dc20da0a4c9f1fbcf6d377ed0559a76d222547f -
Branch / Tag:
refs/tags/v1.0.2 - Owner: https://github.com/justinGrosvenor
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@1dc20da0a4c9f1fbcf6d377ed0559a76d222547f -
Trigger Event:
release
-
Statement type:
File details
Details for the file logs_asmr-1.0.2-py3-none-any.whl.
File metadata
- Download URL: logs_asmr-1.0.2-py3-none-any.whl
- Upload date:
- Size: 965.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8602f9682380e1f5ee715fdab1753069aae2d51829be330964ca71d17d4c7837
|
|
| MD5 |
f4e327c09e77f8babdefde90d52e24ac
|
|
| BLAKE2b-256 |
ffe2105b36121bc9b6972189fbed4e7a6c9803cade16622882cd831999a9c99c
|
Provenance
The following attestation bundles were made for logs_asmr-1.0.2-py3-none-any.whl:
Publisher:
publish.yml on justinGrosvenor/logs-asmr
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
logs_asmr-1.0.2-py3-none-any.whl -
Subject digest:
8602f9682380e1f5ee715fdab1753069aae2d51829be330964ca71d17d4c7837 - Sigstore transparency entry: 1006650285
- Sigstore integration time:
-
Permalink:
justinGrosvenor/logs-asmr@1dc20da0a4c9f1fbcf6d377ed0559a76d222547f -
Branch / Tag:
refs/tags/v1.0.2 - Owner: https://github.com/justinGrosvenor
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@1dc20da0a4c9f1fbcf6d377ed0559a76d222547f -
Trigger Event:
release
-
Statement type: