Make signalfx-agent
and signalfx-agent/pkg/apm
externally accessible Go packages?
#3594
evantorrie
started this conversation in
Ideas
Replies: 1 comment 1 reply
-
@atoulme Sorry for @'ing you, but you probably have the most context to answer this. |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hi, I see that opening Github “Issues” on https://github.com/signalfx/splunk-otel-collector/issues is now more difficult (wants to redirect me to open an issue via Splunk Support), so I wanted to pose here first since I know there are various Splunk employees who are familiar with this use-case.
This is related to #1821, where I am trying to build a custom distribution of the OpenTelemetry Collector which includes smartagent extension/receivers. Up until a couple of months ago, these extensions/receivers had a dependency on github.com/signalfx/signalfx-agent which was satisfied by pointing them to a specific dated commit in the github.com/signalfx/signalfx-agent repo via a replace statement in go.mod.
Recently, the signalfx/signalfx-agent code used by these extensions has moved completely into the github.com/signalfx/splunk-otel-collector repository as a module under /internal/signalfx-agent , and there is now a top-level replaces block which points the former github.com/signalfx/signalfx-agent and signalfx-agent/pkg/apm modules to this new internal repo location.
Unfortunately, this now makes it very difficult to build an out-of-tree version of the smartagent receiver/extension because they rely directly on a go module which is only available as an internal/ package inside the splunk-otel-collector repo (i.e. not directly accessible from an external build).
I don’t know how much of the signalfx-agent code is actually being used by smartagent{extension,receiver} (looks like mostly config? and other core code), but one way to fix this would be to move the whole /internal/signalfx-agent directory into /pkg/signalfx-agent and tag it appropriately to make it accessible externally from an external “ocb” build of the collector.
I have a proof of concept available to do this (in the same way I had provided a PR to move smartagent{extension,receiver} in the past, but I wanted to ask the splunk-otel-collector team first to see if this is something they would consider.
Beta Was this translation helpful? Give feedback.
All reactions