Skip to content

k-wall/kroxylicious-wasm

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Kroxylicious WASM Filter Sample

This sample filter project provides an example usage of custom filters in Kroxylicious. Here we leverage a pure Java Wasm interpreter called Chicory to build a filter that can be dynamically reconfigured with arbitrary "compiled to Wasm" programs.

To learn more about Kroxylicious, visit the docs. To learn more about Chicory, visit the docs.

Getting started

Build

Building the sample project is easy!

mvn verify

Configure

Filters can be added and removed by altering the filters list in the sample-proxy-config.yml file. You can also reconfigure the sample filters by changing the configuration values in this file.

The SampleFetchResponseFilter and SampleProduceRequestFilter each have two configuration values that must be specified for them to work:

  • replacerModule - the string represent the wasm module to be loaded

Default Configuration

The default configuration for SampleProduceRequestFilter is:

filters:
  - type: SampleProduceRequestFilterFactory
    config:
      replacerModule: foobar.wasm

This means that it will execute the foobar.wasm module compiled from the Rust program foobar.wasm.

The default configuration for SampleFetchResponseFilter is:

filters:
  - type: SampleFetchResponseFilterFactory
    config:
      replacerModule: barbaz.wasm

This means that it will execute the barbaz.wasm module compiled from the Rust program barbaz.wasm.

About

Kroxylicious WASM Filter Sample

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Java 94.4%
  • Rust 4.4%
  • Shell 1.2%