tricorder-observability / Starship

Starship: next-generation Observability platform built with eBPF+WASM
GNU Affero General Public License v3.0
164 stars 24 forks source link

Prototyping a libbpf wasm binding library for wasmtime #15

Open nascentcore-eng opened 1 year ago

nascentcore-eng commented 1 year ago

@yunwei37 will add more detail.

This work should be done in the eunomia-bpf/wasm-bpf

yunwei37 commented 1 year ago

There is a test repo in https://github.com/eunomia-bpf/wasmtime-test, where they are trying to mirage to wasmtime.

Some problems related to wasmtime is reported in https://github.com/bytecodealliance/wasmtime/issues/5775

An issue for tracking this is opened in https://github.com/eunomia-bpf/wasm-bpf/issues/15

nascentcore-eng commented 1 year ago

https://github.com/eunomia-bpf/WasmEdge/tree/master/plugins/wasm-bpf Need to show how to use wasmedge go sdk to work with ebpf object file

nascentcore-eng commented 1 year ago

https://github.com/eunomia-bpf/c-struct-bindgen#usage---genereate-struct-to-struct-binding JSON string output from c struct

nascentcore-eng commented 1 year ago

Any updates @yunwei37

yunwei37 commented 1 year ago

see https://github.com/eunomia-bpf/WasmEdge, we have a wasmedge libbpf plugin in https://github.com/eunomia-bpf/WasmEdge/tree/master/plugins/wasm-bpf

You can directly use this plugin with wasmedge go sdk, see https://wasmedge.org/book/en/sdk/go.html

BPF programs can run inside wasmedge, without any changes to the outside host sdks.