Wasm
The WasmPlugin filter runs a WebAssembly binary as a stage in the pipeline. Each event is
handed to your plugin, which can transform it, drop it, or expand it into several events — so
you can write custom filter logic in any language that compiles to WASM (Go, Rust, Assembly
Script, …) without forking Oura.
Requires a custom build
The WASM plugin runtime isn’t in the default binary (it’s large). Build Oura with the wasm
feature — see Install from source.
Configuration
[[filters]]type = "WasmPlugin"path = "./extract_fee/plugin.wasm"type(required): the literal valueWasmPlugin.path(required): the path to the compiled.wasmplugin to load.
Building a plugin
The wasm_basic example
walks through building a plugin in Go, including the expected entry point and how records are
passed in and out.