hyperlight-dev / hyperlight-dev/hyperlight

Address guest tracing improvements

Aperta
#964 3 commenti 0 reazioni 1 assegnatario Rivendicata da @dblnz Vedi su GitHub
kind/enhancement
Lingua principale
Rust
Stelle
4.7k
Fork
208
Merge medio
1g 7h
PR unite (30g)
47

Descrizione

The current version using `opentelemetry` is an incremental step, after which additional `tunables` can be added to improve usability.

Improvements to be considered:
- [x] Fix max tracing level based on the max log level the guest is provided
- [ ] The guest logging shall use the same logic as tracing for reporting back to host. [Maybe we can have spans/events emitted as logs in the guest](https://github.com/hyperlight-dev/hyperlight/pull/844#discussion_r2444557732).
- [ ] Change the tracing underlying storage to a circular buffer for traces/events to avoid context switches. This ensures the guest doesn't do host calls to further degrade performance. Trace/logs loss is an acceptable compromise
- [ ] Provide a mechanism on the guest to enable/disable the tracing support, configure the memory used and log level at runtime
- [x] Consider changing to a heap allocated circular buffer, which is runtime configurable
- [x] Use `flatbuffers` to serialize the data exchanged between the guest and host
- [x] CoW related changes

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.