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
Fix profiler config propagation #1403
Conversation
3af3242
to
c244e46
Compare
Codecov Report
@@ Coverage Diff @@
## master #1403 +/- ##
==========================================
+ Coverage 94.24% 94.28% +0.03%
==========================================
Files 155 155
Lines 6275 6282 +7
==========================================
+ Hits 5914 5923 +9
+ Misses 361 359 -2
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The idea behind how this is currently written is to expose the profiler with a public API that would match what would be exposed to users. Right now one of the problems of the tracer is that it's very clunky to configure because nothing is exposed, so everything must be a configuration option even when it makes no sense and would be better served by a programmatic API. For example, 2 different exporters could have completely different available options, and that is confusing to configure with only configuration options.
Any way to fix the issue while ensuring that we can still expose a public API that makes the most sense from a usability perspective?
I'm not really sure what you mean by that. Logically, this change is no different from the current code other than just passing through the url, hostname, and port of the agent. The other restructuring is functionally identical as long as it remains directly connected to the tracer code but just isolates it a bit better which makes it easier to possibly extract the profiler to another module in the future, which may be required for the shared native module we are building. |
Yes but that was precisely the point of exposing the exporters directly, although that may actually be a lower-level package later on instead. I will approve since for now it doesn't matter anyway and the change is minimal. |
c244e46
to
4e003d6
Compare
4e003d6
to
4651463
Compare
The profiler configs are not currently propagated correctly, so it's impossible to use a non-localhost agent. This fixes that and better encapsulates config handling within the profiler rather than in tracer code.