-
-
Notifications
You must be signed in to change notification settings - Fork 169
[PoC] feat: Implement a more feature complete telemetry system #2389
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
@staabm @infection/core happy to get a first round of feedback about the functionality (i.e. not the code). The description is up to date, but there is more options available about what to display. A few notes to keep in mind/consider:
We parsed fileA, it resulted in X mutations/mutants. Heuristics = checks done on the mutation to see if we can kill it before executing it in a separate process. I use the term
What I want to achieve with this system, is to have a reliable way to assess the execution of infection, to evaluate if a change is an improvement or not. I think the base framework introduced here is a good base, but I'm unsure of what it is missing to be able to use it for this purpose comfortably. I already invested quite some time on it, hence I would appreciate a round of feedback before proceeding any further. I am totally fine with "this is not going anywhere, let's drop it", or defining what sort of result we want to see. |
This PR is not ready for review yet.
This PR is a draft for me to explore a more complete telemetry system. The goal is to have more insights about the flow & performance for a given run.
The current terminology employed is borrowed from well established telemetry systems (e.g. OpenTelemetry or Sentry).
Currently each span* has the following information:
*: To those not familiar with the concept of span, the general idea is that it is a unit of an operation. Here is an example of spans with a UI (which I find easier to interpret than the blob I printed bellow):
The snapshot includes:
Currently at the end of the run command the trace is serialized and dumped into a file. One can then view it using
$ infection telemetry:dump-trace build/trace/<trace-id>
.The current output is something like this:
example of trace dump
Missing pieces:
--profile
?)