Collector
The collector is the central processing engine of walkerOS that receives events from sources, enriches them with additional data, applies consent rules, and routes them to destinations. It acts as the intelligent middleware between event capture and event delivery.
What it does
The Collector transforms raw events into enriched, compliant data streams by:
- Event processing - Validates, normalizes, and enriches incoming events
- Consent management - Applies privacy rules and user consent preferences
- Data enrichment - Adds session data, user context, and custom properties
- Destination routing - Sends processed events to configured analytics platforms
Key features
- Compatibility - Works in both web browsers and server environments
- Privacy-first - Built-in consent management and data protection
- Event validation - Ensures data quality and consistency
- Flexible routing - Send events to multiple destinations simultaneously
Role in architecture
In the walkerOS data flow, the collector sits between sources and destinations:
Sources capture events and send them to the collector, which processes and routes them to your chosen destinations like Google Analytics, custom APIs, or data warehouses.
Installation
Basic setup
Configuration reference
| Property | Type | Description | More |
|---|---|---|---|
run | boolean | Whether to run collector automatically on initialization | |
tagging | number | Tagging version number | |
globalsStatic | Record<string, any> | Static global properties that persist across collector runs | |
sessionStatic | Record<string, any> | Static session data that persists across collector runs | |
verbose | boolean | Enable verbose logging for debugging | |
onError | function | Error handler function: (error, state?) => void | |
onLog | function | Log handler function: (message, verbose?) => void | |
consent | Record<string, boolean> | Initial consent state | |
user | any | Initial user data | |
globals | Record<string, any> | Initial global properties | |
sources | any | Source configurations | |
destinations | any | Destination configurations | |
custom | Record<string, any> | Initial custom implementation-specific properties |
Advanced setup
Event transformation
The collector works with mapping to transform events as they flow through the system. Mapping is configured at the destination level and controls how walkerOS events are converted to vendor-specific formats.
For example, transforming a product add event into GA4's add_to_cart:
See also
- Operating modes: integrated vs bundled approaches
- CLI documentation: configure with JSON and build with CLI
- Sources: available event capture sources
- Destinations: available event delivery destinations