Reading the repo
Reading the repo
How to install on macOS
Event-driven log analytics platform built with Go, Kafka, Redis, Elasticsearch, and PostgreSQL.
Saved setup from 2 min ago
Will it work on macOS?
Heads-upIt also needs PostgreSQL, Redis and 11 settings in .env.
Then run bash setup.sh. It stops at the first error and is safe to run again. Servers and tests aren't started; it lists them at the end. Read it first.
Needs Git: xcode-select --install
git clone https://github.com/Rzmy7/logLogger.git cd logLogger
Go 1.26.4, Docker
brew install go brew install --cask docker # Docker Desktop
cp .env.example .env
Needs: PostgreSQL, Redis (no compose file — install locally or run via Docker)
go mod download
go test ./...
1.24 or later installed (Download Go)git clone https://github.com/Rzmy7/logLogger.git
cd logLogger
Copy the example environment file and adjust if necessary:
cp .env.example .env
Default local .env values:
POSTGRES_URL=postgresql://postgres:password@localhost:5432/log_analytics?sslmode=disable
REDIS_URL=redis://localhost:6379
KAFKA_BROKERS=localhost:9092
ELASTICSEARCH_URL=http://localhost:9200
HTTP_PORT=8081
ANALYTICS_PORT=8082
PROCESSOR_METRICS_PORT=8083
LOG_LEVEL=info
Start Kafka, Elasticsearch, Redis, PostgreSQL, Prometheus, and Grafana:
docker compose -f deployments/docker-compose.yml up -d
Verify running containers:
docker ps
| Service | Port | Health Check URL |
|---|---|---|
| Kafka Broker | 9092 | localhost:9092 |
| Elasticsearch | 9200 | http://localhost:9200 |
| Redis | 6379 | localhost:6379 |
| PostgreSQL | 5432 | localhost:5432 |
| Prometheus | 9090 | http://localhost:9090/-/healthy |
| Grafana | 3000 | http://localhost:3000 (admin/admin) |
Open separate terminals to run each service:
# Terminal 1: Ingestor Service (:8081)
go run ./cmd/ingestor
# Terminal 2: Stream Processor (:8083 metrics)
go run ./cmd/processor
# Terminal 3: Analytics API (:8082)
go run ./cmd/analytics
No reports for macOS yet.
Opens a chat with this manual already filled in, for macOS. It uses your own account; gitmanual sends nothing.