A lightweight web UI for reqlog — search and trace logs directly from your browser.
It’s designed for small teams that want quick visibility into logs without SSH access.
reqlog-ui is a lightweight web UI intended for internal use within trusted environments (e.g. behind VPN).
- Search logs from browser (same power as reqlog CLI)
- Live log streaming via SSE
- API key-based authentication
- Minimal setup (single binary)
- Built with Go — lightweight and fast
- Concurrency limits for safe multi-user usage
go install github.com/sagarmaheshwary/reqlog-ui/cmd/reqlog-ui@latestcurl -sSL https://raw.githubusercontent.com/sagarmaheshwary/reqlog-ui/master/install.sh | bash- Auto-detects OS/arch
- Installs latest version
- Installs to
/usr/local/bin
Verify:
reqlog-ui --versionDownload from: https://github.com/sagarmaheshwary/reqlog-ui/releases
Then:
- unzip
- add to
PATH
Verify:
reqlog-ui --versionHTTP_AUTH_API_KEY=your-secret-key \
REQLOG_BINARY_PATH=/usr/local/bin/reqlog \
reqlog-uiGenerate a secure API key using:
openssl rand -hex 32http://localhost:4000
- Enter your API key
- Start searching logs
Browser → reqlog-ui → reqlog CLI → log files/containers
reqlog-uidoes not process logs itself- all filtering/searching is handled by
reqlog - UI simply provides a browser interface
| Variable | Description | Default |
|---|---|---|
HTTP_AUTH_API_KEY |
API key required to access the UI | required |
HTTP_SERVER_URL |
Address the server listens on | localhost:4000 |
REQLOG_BINARY_PATH |
Path to reqlog binary | reqlog |
REQLOG_EXECUTION_TIMEOUT |
Max time allowed for log search execution | 15m |
HTTP_STREAM_TOKEN_EXPIRY |
Expiry for SSE stream tokens | 30s |
REQLOG_MAX_LINES |
Max number of log lines returned per search | 5000 |
REQLOG_SEARCH_CONCURRENCY |
Max concurrent search requests | 5 |
REQLOG_STREAM_CONCURRENCY |
Max concurrent live stream connections | 5 |
ENV_FILE |
.env path | .env |
DISABLE_PRETTY_LOGS |
disable pretty logs and output raw JSON | 0 |
See
.env.examplefor all available environment variables.
Concurrency limits help prevent resource exhaustion when multiple users are searching or streaming logs simultaneously.
When limits are exceeded, search requests return HTTP 429 and stream requests emit an SSE error event.
- API key is required for all operations
- API key is stored in browser SessionStorage after login (session-only, not persistent storage)
- SSE uses short-lived tokens for streaming due to token being passed in the querystring
- Input validation is applied before executing CLI commands
⚠️ Intended for internal use within trusted environments (e.g. behind VPN). This tool does not provide enterprise-grade authentication, authorization, or audit capabilities. Do not expose it publicly without additional protections (e.g. reverse proxy auth, HTTPS, IP restrictions).
| reqlog-ui | reqlog |
|---|---|
| v0.2.0 | v0.2.2 |
Ensure compatible versions for correct behavior.
Contributions, issues, and suggestions are welcome.
MIT License