Hyrouter defaults to info logging. For detailed inspection of packet flow and stream behavior, run with:
hyrouter -config config.yaml -log-level debugOr:
task run:debugThe examples/ directory uses Go build tags (-tags=examples). Many editors will show diagnostics unless the tag is enabled.
Example build/run commands in this repository already pass -tags=examples.
Common causes:
- A plugin denies the connection but the stream is not closed.
- A plugin blocks and the router never sends
DisconnectorClientReferral.
Current Hyrouter behavior:
- If a plugin denies, Hyrouter sends
Disconnect(packet ID1) and closes the stream. - Each plugin call runs with a fixed timeout. If the plugin does not respond, Hyrouter logs an error and continues.
If a plugin returns an error (or times out), Hyrouter continues with the next plugin.
When debugging:
- Run with
-log-level debug. - Confirm that your plugin process is reachable (gRPC) or that the
.wasmfile exists and exports the required functions.
The Docker image expects a config file at /app/config.yaml.
Recommended pattern:
- Mount your config into the container.
- Or bake a config into the image by editing the Dockerfile.