slog

Ingest HTTP logs into SQLite and query them via CLI.

Updated Mar 31, 2026
One-click install
npx skills add https://github.com/zdenham/slog --skill slog
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: slog
Source: https://github.com/zdenham/slog/tree/main
Command: npx skills add https://github.com/zdenham/slog --skill slog

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve?

slog provides a local, self-contained log drain that ingests structured logs over HTTP and stores them in SQLite, enabling offline analysis and debugging without external services.

Core Features & Use Cases

  • Ingest logs via HTTP POST to /log (single objects or arrays)
  • Store logs as events with typed properties (EAV model) for flexible queries
  • Query and inspect logs locally with the CLI: slog query, slog tail, and custom SQL
  • Use for debugging apps, CI pipelines, and local development

Quick Start

Start the server with slog serve, post a log to http://localhost:4526/log, and run slog query to inspect the results.

Frequently Asked Questions about slog

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I store and query HTTP logs locally during development?

You can store and query HTTP logs locally by posting structured log payloads to a local ingestion endpoint, which saves the data into SQLite tables for offline querying via a CLI. This allows flexible searching without external services.

What is the best way to debug application logs offline without external services?

The best way to debug application logs offline is to use a local log drain that ingests HTTP POST requests and stores them directly in a SQLite backend. This enables rich offline analysis and debugging entirely on your local machine.

Can I query nested fields in structured logs using SQLite?

Yes, you can query nested fields in structured logs using SQLite by leveraging an EAV model with typed properties. The system supports dot notation for nested fields, making rich searches easy within the local SQLite database.

Does the slog log ingestion server require any external dependencies?

The log ingestion server relies on Bun for its runtime and ULID for generating unique identifiers, but it requires no external services. It operates entirely self-contained, storing ingested HTTP logs in local SQLite tables.

How do I batch ingest structured logs over HTTP for local analysis?

You can batch ingest structured logs over HTTP by POSTing arrays of log objects to the local server endpoint. The server processes these batched arrays and stores the events with typed properties in the local SQLite backend.