Skip to main content

Overview

This template provides a production‑ready Jitsu instance as a Monk runnable. You can:
  • Run it directly to get a managed customer data platform
  • Inherit it in your own infrastructure to collect, transform, and route event data
Jitsu is an open-source data ingestion and event collection engine. It’s a self-hosted alternative to Segment, capturing events from websites and apps, transforming them, and sending to data warehouses and analytics tools.

What this template manages

  • Jitsu server for event collection
  • Jitsu configurator UI (optional)
  • PostgreSQL for configuration storage
  • Redis for event queuing
  • Web UI and API
  • Event transformation engine

Quick start (run directly)

  1. Load templates
  1. Run Jitsu stack
  1. Customize credentials (recommended via inheritance)
Running directly uses the defaults defined in this template’s variables. Secrets added with monk secrets add will not affect this runnable unless you inherit it and reference those secrets.
  • Preferred: inherit and replace variables with secret("...") as shown below.
  • Alternative: fork/clone and edit the variables in the template files, then monk load MANIFEST and run.
Once started:
  • Events API: http://localhost:8001
  • Configurator UI: http://localhost:7000

Configuration

Key variables you can customize in this template:
Data is persisted under ${monk-volume-path}/jitsu on the host. Inherit Jitsu for event collection and routing. Example:
Set secrets and run:

Ports and connectivity

  • Service: jitsu on TCP port 8001 (Events API)
  • Service: configurator on TCP port 7000 (UI)
  • From web/mobile apps, send events to http://\<host>:8001/api/v1/event
  • From other runnables in the same process group, use connection-hostname("\<connection-name>") to resolve the Jitsu host.

Persistence and configuration

  • Jitsu config: ${monk-volume-path}/jitsu/data:/home/eventnative/data
  • PostgreSQL data: ${monk-volume-path}/postgres:/var/lib/postgresql/data
  • Redis data: ${monk-volume-path}/redis:/data

Features

  • Event Collection: JavaScript SDK, HTTP API, and server-side libraries
  • Transformations: Transform events with JavaScript functions
  • Destinations: Send to 20+ destinations (BigQuery, Redshift, Snowflake, etc.)
  • Schema Mapping: Map events to destination schemas
  • Real-Time: Stream events to destinations in real-time
  • Batching: Batch events for efficiency
  • User Identification: Merge anonymous and identified users
  • Privacy: GDPR-compliant, self-hosted data

Event Collection

JavaScript SDK example:

Destinations

Jitsu supports:
  • Data Warehouses: BigQuery, Redshift, Snowflake, ClickHouse
  • Databases: PostgreSQL, MySQL
  • Analytics: Google Analytics, Amplitude, Mixpanel
  • Marketing: Facebook Ads, Google Ads
  • Webhooks: Custom HTTP endpoints

Use cases

Jitsu excels at:
  • Product analytics data collection
  • Customer data platform (CDP)
  • Event streaming to data warehouses
  • Multi-destination event routing
  • Privacy-compliant analytics
  • Segment replacement for self-hosted needs
  • Combine with monitoring tools (e.g., prometheus-grafana/) for observability
  • See other templates in this repository for complementary services

Troubleshooting

  • Access configurator UI at http://localhost:7000
  • Test event ingestion:
  • Check logs:
  • For missing events, check Redis queue and destination configs
  • Verify destination credentials in configurator UI
  • Monitor PostgreSQL for configuration issues
  • Check transformation functions for errors
  • Ensure host volumes are writable by container users