LoggingHive is an open-source, self-hostable logging platform built for simplicity and ease of use. Keep track of your application logs in a centralized, organized way without the complexity of enterprise solutions.
- 🚀 Simple Setup - Get started in minutes with Docker
- 🔐 Secure - Built-in authentication and API key management
- 📊 Organized - Structure logs by organizations and projects
- 🐳 Self-Hostable - Complete control over your data
- 🔍 Log Management - Filter and search through your log entries
- 🔑 API Key Management - Generate and manage API keys per project
You need to provide a database URL via the DATABASE_URL environment variable. LoggingHive uses PostgreSQL as its
database.
-
Pull the Docker image:
docker pull ghcr.io/nicogenz/logginghive:latest
-
Run the container:
docker run -p 3000:3000 \ -e DATABASE_URL="postgresql://username:password@host:5432/database" \ --name logginghive \ ghcr.io/nicogenz/logginghive:latest -
Access LoggingHive at
http://localhost:3000
-
Clone the repository:
git clone https://github.com/nicogenz/logginghive.git cd logginghive -
Install dependencies:
npm install
-
Set up your environment variables:
echo 'DATABASE_URL="postgresql://username:password@localhost:5432/database"' > .env
-
Run database migrations:
npm run db:dev:migrate
-
Start the development server:
npm run dev
-
Access the application at
http://localhost:3000
Once you have created an organization, project, and API key, you can send logs using a simple HTTP POST request:
curl -X POST http://localhost:3000/api/v1/log-entries \
-H "Content-Type: application/json" \
-H "Authorization: your-api-key-here" \
-d '{
"message": "This is a log message",
"level": "INFO",
"metadata": {
"userId": "12345",
"action": "user_login"
}
}'Available log levels: DEBUG, INFO, WARN, ERROR, FATAL
| Variable | Description | Required | Default |
|---|---|---|---|
DATABASE_URL |
PostgreSQL connection string | Yes | - |
# Install dependencies
npm install
# Generate Prisma client
npm run db:generate
# Build the application
npm run build
# Start the production server
npm run start# Generate Prisma client
npm run db:generate
# Push schema changes (development)
npm run db:dev:push
# Create a migration (development)
npm run db:dev:migrate
# Deploy migrations (production)
npm run db:prod:migrate
# Reset database (development)
npm run db:dev:resetContributions are welcome! Please feel free to submit a Pull Request.
This project is open source and available under the MIT License.
If you encounter any issues or have questions, please open an issue on GitHub.