Replies: 1 comment
-
AFAIK, there are ways to achieve observability:
for me, i think the observability should be non-intrusive, the key method signature barely won't change, the only thing we need to care about is inline. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
One of the reasons to open this discussion is that there are a few ways to do this and it would be good to debate some of the approaches. Ideally, we would have a solution that has low performance head and close to zero overhead if no metrics tools are in use.
#1484 will probably be implemented in Pekko 1.1.2 to get the Kamon metrics tool to work with Pekko again. It is likely preferable in future Pekko versions to have an endorsed way to gather the metrics so that we can avoid breaking the metrics tools when we make changes to the Pekko internals. Kamon is basically instrumenting the Pekko code at runtime and is depending on some private functions and if these change name, param signature or get inlined, the Kamon instrumentation will stop working.
To summarise the Pekko 1.1 situation.
@inline
annotation can be inlined by the Scala compiler@noinline
annotations to force some functions not to be inlined. Nothing was inlined in Pekko 1.0. If you find@noinline
annotations in Pekko code, this is likely to be the reason.Beta Was this translation helpful? Give feedback.
All reactions