GlintlogGlintlog

Configuration

Configure Glintlog through the Settings page

Glintlog is configured entirely through the web UI. No environment variables or configuration files are needed.

Initial Setup

On first launch, Glintlog will:

  1. Start with default settings
  2. Prompt you to create an admin account
  3. Be ready to receive logs immediately
./glintlog

Access the web UI at http://localhost:8080 to complete setup.

Default Ports

Glintlog uses the following ports by default:

PortProtocolPurpose
8080HTTPWeb UI and REST API
4317gRPCOTLP log and trace ingestion
4318HTTPOTLP log and trace ingestion

Settings Page

All configuration is managed through Settings in the web UI. Navigate to Settings from the sidebar to configure:

General Settings

  • Log Retention - Number of days to keep log data (default: 30 days)
  • Batch Size - Number of logs to batch before writing to storage
  • Flush Interval - Maximum time between batch flushes

Email Configuration

Configure email for password reset functionality. Choose between:

SMTP

  • Server hostname and port
  • Username and password
  • From address

Resend

  • API key
  • From address

Security

  • JWT Secret Rotation - Rotate the signing key (invalidates all sessions)
  • Session Management - View and revoke active sessions

Database

Glintlog uses an embedded DuckDB database stored at ./data/glintlog.db by default.

Storage Location

The database is created in the working directory where you run Glintlog:

# Running from /opt/glintlog
cd /opt/glintlog
./glintlog
# Database created at /opt/glintlog/data/glintlog.db

Partitioning

Logs are automatically partitioned by day (logs_YYYY_MM_DD). This enables:

  • Efficient retention management
  • Fast queries within time ranges
  • Easy cleanup of old data

Automatic Cleanup

Partitions older than the configured retention period are automatically deleted daily.

Manual Compaction

Trigger database compaction through the admin panel or API:

curl -X POST http://localhost:8080/api/v1/admin/compact \
  -H "Authorization: Bearer YOUR_TOKEN"

Running as a Service

systemd (Linux)

Create a service file at /etc/systemd/system/glintlog.service:

[Unit]
Description=Glintlog Observability Platform
After=network.target

[Service]
Type=simple
User=glintlog
WorkingDirectory=/opt/glintlog
ExecStart=/opt/glintlog/glintlog
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target

Then enable and start:

sudo systemctl enable glintlog
sudo systemctl start glintlog

Next Steps

On this page