Eventum
Eventum is a high-performance data generation platform that enables users to create realistic, schema-compliant synthetic events for testing, development, and system monitoring requirements.
Eventum is a powerful data generation platform designed to fuel systems with synthetic, realistic, and schema-compliant events. It serves as an essential solution for developers and data engineers who need to test data-driven systems without waiting for real data to accumulate or relying on throwaway scripts. By offering a declarative configuration approach, Eventum enables users to define complex data generation workflows using YAML, minimizing the need for manual coding. The platform provides a flexible pipeline architecture consisting of three primary stages: inputs, which control timing and frequency; events, which define the data structure and content; and outputs, which manage the delivery of generated data to various destinations.
Eventum excels in versatility, offering both live streaming and sample generation modes. In live mode, events are produced at specific real-world timestamps, making it ideal for simulating production traffic, testing monitoring systems, or verifying SIEM rule efficacy. In sample mode, users can generate massive datasets as fast as the system allows, facilitating efficient load testing or large-scale data analysis tasks. The template engine, powered by Jinja2 and integrated with libraries like Faker and Mimesis, allows for highly customized, domain-specific data generation, including realistic IPs, timestamps, and business-specific values.
Some of the key features are:
- Precise scheduling of events: Support for cron expressions, fixed intervals, uniform ranges, and statistical patterns to mimic realistic traffic flow.
- Template engine with extended API: Utilization of Jinja2 templates combined with Faker and Mimesis to produce believable, high-fidelity synthetic data.
- Ability to generate data using Python scripts: Full programmatic control for advanced scenarios requiring complex logic beyond standard templates.
- Generation debugging: Built-in tools for real-time preview and troubleshooting of event generation to ensure data quality and schema compliance.
- Various endpoints for sending events: Multi-destination fan-out support, including stdout, files, ClickHouse, OpenSearch, Kafka, and custom HTTP endpoints.
- Centralized management: A comprehensive web UI called Eventum Studio for visual configuration, monitoring, and debugging of running generators.
Operating Eventum is straightforward, as it runs a modular pipeline defined in simple YAML files. Users define input patterns, template content, and output destinations independently, allowing for easy updates to one stage of the pipeline without affecting others. The platform supports sophisticated state management across generations, allowing for complex session simulation via finite state machines or shared state across multiple instances. Eventum also includes advanced features like automated secrets management via an integrated keyring, systemd service integration for production deployment, and aREST API for orchestration.
Some common use cases include:
- SIEM rule development: Generating realistic Windows Security logs or firewall telemetry to validate security detection logic in OpenSearch or other SIEM platforms.
- API Load Testing: Stress-testing REST services by producing high-volume, diverse payloads in sample mode to evaluate system performance and scalability.
- Analytics and ML Training: Creating shaped CSV or JSON datasets of transactions, user sessions, or sensor readings for model training and analytical testing.
- IoT Sensor Simulation: Streaming continuous telemetry data from multiple devices with realistic drift and noise patterns for monitoring system validation.
Comments
0Markdown is supported.