You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For a better overview of Merlin's performance, let's enhance the Merlin telemetry with information about the various cache hits and misses: file caches (cmi/cmt/(cms) cache), buffer cache, and PPX cache.
Current telemetry
The ocamlmerlin frontend already contains information about the time spent during the different Merlin phases:
This issue is about adding the information about cache hits and misses to the Merlin telemetry, similarly to how the timing information is captured and exposed.
Tasks
For that, the following things need to be implemented:
Expose the information about cache hits and misses in Merlin_lib in a way that it can easily be picked up by the different Merlin frontends, i.e. by ocamlmerlin and by ocaml-lsp-server.
Add the cache info to the ocamlmerlin telemetry. There are similar CLI design choices to make as in Enrich Merlin telemetry with GC info #1680, such as: Now that the telemetry is getting richer, how do we want to structure it in the Merlin response? And do we want to make some of it opt-in via an ocamlmerlin flag? To avoid clashes with the work on Enrich Merlin telemetry with GC info #1680, let's think about this later, once the first task is implemented.
In the future, when we have telemetry for ocaml-lsp-server, we'll also add the cache info to the ocaml-lsp-server telemetry.
Motivation for the issue
We want the information about cache hits and misses to be picked up by Merlin telemetry pipelines that
The text was updated successfully, but these errors were encountered:
For a better overview of Merlin's performance, let's enhance the Merlin telemetry with information about the various cache hits and misses: file caches (cmi/cmt/(cms) cache), buffer cache, and PPX cache.
Current telemetry
The
ocamlmerlin
frontend already contains information about the time spent during the different Merlin phases:Current way of getting info about cache hits and misses
Currently, Merlin dumps information about cache hits and misses into an opt-in log-file: After running
your
logs.txt
will contain info such asProposed addition
This issue is about adding the information about cache hits and misses to the Merlin telemetry, similarly to how the timing information is captured and exposed.
Tasks
For that, the following things need to be implemented:
Merlin_lib
in a way that it can easily be picked up by the different Merlin frontends, i.e. byocamlmerlin
and byocaml-lsp-server
.ocamlmerlin
telemetry. There are similar CLI design choices to make as in Enrich Merlin telemetry with GC info #1680, such as: Now that the telemetry is getting richer, how do we want to structure it in the Merlin response? And do we want to make some of it opt-in via anocamlmerlin
flag? To avoid clashes with the work on Enrich Merlin telemetry with GC info #1680, let's think about this later, once the first task is implemented.In the future, when we have telemetry for
ocaml-lsp-server
, we'll also add the cache info to theocaml-lsp-server
telemetry.Motivation for the issue
We want the information about cache hits and misses to be picked up by Merlin telemetry pipelines that
The text was updated successfully, but these errors were encountered: