hyperlight-dev / hyperlight-dev/hyperlight

Address guest tracing improvements

Open
#964 3 comments 0 reactions 1 assignee Claimed by @dblnz View on GitHub
kind/enhancement
Dominant language
Rust
Stars
4.7k
Forks
208
Avg merge
1d 7h
Merged PRs (30d)
47

Description

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

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.