Flexible event generator
Project description
Eventum
Data generation platform
📖 Documentation · 🎓 Tutorials · 🔌 API Reference · 📋 Changelog · 📅 Task tracker · 💬 Discuss
Eventum produces synthetic events and delivers them anywhere — in real time or in batch. Generate a continuous stream of logs for your SIEM, seed a staging database with realistic data, or stress-test a pipeline with high-throughput traffic. Define everything in YAML, no code required.
✨ Highlights
🎭 Realistic data — Jinja2 templates with Faker and Mimesis generate believable names, IPs, timestamps, and domain-specific values
🕐 Flexible scheduling — cron expressions, fixed intervals, or statistical time patterns that mimic real-world traffic curves
📤 Multiple destinations — fan-out to stdout, files, ClickHouse, OpenSearch, or any HTTP endpoint simultaneously
🔀 Two modes — stream events in real time at their scheduled timestamps, or generate everything as fast as possible
🖥️ Built-in web UI — Eventum Studio for visual editing, event preview, and monitoring
⚡ REST API — start, stop, and manage generators programmatically
🔒 Encrypted secrets — credentials stored securely via an encrypted keyring
🐳 Docker ready — multi-stage builds, runs anywhere
🚀 Quick start
Install
pip install eventum-generator
Also available via uv (
uv tool install eventum-generator) or Docker (docker pull rnv812/eventum-generator).
Create a template — events.jinja
{{ timestamp }} INFO user={{ module.faker.locale.en.user_name() }} action=login ip={{ module.faker.locale.en.ipv4() }}
Create a config — generator.yml
input:
- cron:
expression: "* * * * * *"
count: 1
event:
template:
mode: all
templates:
- my_event:
template: events.jinja
output:
- stdout: {}
Run
eventum generate --path generator.yml --live-mode
2026-02-23 12:00:01+00:00 INFO user=jsmith action=login ip=192.168.44.12
2026-02-23 12:00:02+00:00 INFO user=amiller action=login ip=10.0.128.55
2026-02-23 12:00:03+00:00 INFO user=kwilson action=login ip=172.16.0.91
🔌 Plugins
Each part of the pipeline is a plugin. Swap, combine, or extend — change the schedule without touching templates, add new outputs without modifying anything else. See the plugin reference for the full list.
🖥️ Application mode
Run multiple generators with a web UI and REST API:
eventum run -c eventum.yml
Starts on port 9474 with Eventum Studio (web UI), REST API, and multi-generator orchestration — each generator runs independently with its own schedule, templates, and outputs.
📖 Documentation
Full documentation at eventum.run:
- Getting started — overview and first example
- Installation — pip, Docker, or from source
- Core concepts — pipeline, plugins, scheduling
- Plugin reference — every plugin with full parameter tables
- Tutorials — end-to-end walkthroughs (SIEM, clickstream, IoT, and more)
📊 Activity
📄 License
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file eventum_generator-2.4.0.tar.gz.
File metadata
- Download URL: eventum_generator-2.4.0.tar.gz
- Upload date:
- Size: 40.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fd6681592bfb05615a6668b69ee2f4b167ece92eb485eda0afdaa4714b14cc0c
|
|
| MD5 |
5f6ac6b161035c43f176aa566dc21784
|
|
| BLAKE2b-256 |
a1b8b54e475f6f800ffbc05bf1f0855ffd6a4bdef852ccbddf81f5615b215d80
|
Provenance
The following attestation bundles were made for eventum_generator-2.4.0.tar.gz:
Publisher:
release.yml on eventum-generator/eventum
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
eventum_generator-2.4.0.tar.gz -
Subject digest:
fd6681592bfb05615a6668b69ee2f4b167ece92eb485eda0afdaa4714b14cc0c - Sigstore transparency entry: 1210053873
- Sigstore integration time:
-
Permalink:
eventum-generator/eventum@2da11cbb3332564e6f17f4f5b27f0e9dc9ff4731 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/eventum-generator
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@2da11cbb3332564e6f17f4f5b27f0e9dc9ff4731 -
Trigger Event:
push
-
Statement type:
File details
Details for the file eventum_generator-2.4.0-py3-none-any.whl.
File metadata
- Download URL: eventum_generator-2.4.0-py3-none-any.whl
- Upload date:
- Size: 3.1 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0b80ba86ec2af31850cca7de5f3b2594b297b5713a340b6823e40d8eecce5e90
|
|
| MD5 |
3c8883cd51bdb7707eec9c6adb56dc88
|
|
| BLAKE2b-256 |
07933b8379ee7c08d21d46a1a9094ed0e3fd625895c875b596d4be44312bb922
|
Provenance
The following attestation bundles were made for eventum_generator-2.4.0-py3-none-any.whl:
Publisher:
release.yml on eventum-generator/eventum
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
eventum_generator-2.4.0-py3-none-any.whl -
Subject digest:
0b80ba86ec2af31850cca7de5f3b2594b297b5713a340b6823e40d8eecce5e90 - Sigstore transparency entry: 1210053971
- Sigstore integration time:
-
Permalink:
eventum-generator/eventum@2da11cbb3332564e6f17f4f5b27f0e9dc9ff4731 -
Branch / Tag:
refs/tags/v2.4.0 - Owner: https://github.com/eventum-generator
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@2da11cbb3332564e6f17f4f5b27f0e9dc9ff4731 -
Trigger Event:
push
-
Statement type: