https://github.com/carlo-colombo/streamlog
single elixir script to ingest, visualize, and filter logs from your system
https://github.com/carlo-colombo/streamlog
elixir
Last synced: about 1 year ago
JSON representation
single elixir script to ingest, visualize, and filter logs from your system
- Host: GitHub
- URL: https://github.com/carlo-colombo/streamlog
- Owner: carlo-colombo
- License: mit
- Created: 2024-03-16T00:05:14.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-03-11T08:23:14.000Z (over 1 year ago)
- Last Synced: 2025-03-11T09:29:04.243Z (over 1 year ago)
- Topics: elixir
- Language: Elixir
- Homepage:
- Size: 9.24 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# streamlog
Local log viewer supporting filtering and highlighting all in a single elixir script, using Phoenix Live View through `phoenix_playground`.
* Regex based filtering and highlighting
* Filtered out logs are retained (until streamlog runs)
```bash
tail -f some-log-file | /streamlog.exs --open --port 9090 --title 'some-log-file logs'
```

## Usage
Download `streamlog.exs` and ensure is executable `chmod+x`
```bash
tail -f some-log-file | /streamlog.exs --open --port 9090 --title 'some-log-file logs'
```
or
```bash
./some-program-loggin-on-stdout | /streamlog.exs --port 9091 --title 'program logs'
```
## Options
* `--port` to run on a different port than the defaul (5051)
* `--title` to assign a title to the page
* `--open` open Streamlog in the browser
## Technicalities
* logs are stored in an ets table in memory.
* streamlog exposes Phoenix Live Dashboard on `/dashboard` for debug purpose and curiosity.