Skip to content
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

List OpenTelemetry API and distribution versions with published Lambda Layer version ARNs #158

Open
dude0001 opened this issue Mar 23, 2023 · 0 comments

Comments

@dude0001
Copy link

Looking at the contribution guide releasing a layer section it appears the release build, publishing of a new Lambda Layer version and publishing those versions in the signalfx/lambda-layer-versions repo is an internal process. The Lamba Layer versions publish are not very helpful by themselves. You cannot tell which version of the OpenTelemetry API and distribution/instrumentation packages you should use.

So for example right now https://github.com/signalfx/lambda-layer-versions/blob/main/splunk-apm/splunk-apm.md shows the latest version of the Layer for us-east-2 is arn:aws:lambda:us-east-2:254067382080:layer:splunk-apm:365. If I try to run my application on this Layer without upgrading the API and distribution/instrumentation packages, I can get runtime errors like below that show there is a conflicting version in the site packages compared to what is deployed with the Layer 0.32b in site packages instead of the expected 0.36b in the Layer here.

There is also a log give like [splunk-extension-wrapper] splunk-extension-wrapper, version: 4552de7 that does appear to be a commit hash back to signalfx/splunk-extension-wrapper. You can reverse engineer from the error message or the commit what version of the API and instrumentation packages you need to upgrade your application with to match the layer.

It would be very helpful if the published Lamba Layer versions were published with the API and distribution versions that are included. It appears this needs to come from within the internal release process mentioned in this repo.

Distribution splunk_distro configuration failed
--
Traceback (most recent call last):
File "/opt/python/opentelemetry/instrumentation/auto_instrumentation/sitecustomize.py", line 37, in _load_distros
distro = entry_point.load()()
File "/var/task/pkg_resources/__init__.py", line 2516, in load
self.require(*args, **kwargs)
File "/var/task/pkg_resources/__init__.py", line 2539, in require
items = working_set.resolve(reqs, env, installer, extras=self.extras)
File "/var/task/pkg_resources/__init__.py", line 827, in resolve
dist = self._resolve_dist(
File "/var/task/pkg_resources/__init__.py", line 873, in _resolve_dist
raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.VersionConflict: (opentelemetry-semantic-conventions 0.32b0 (/var/task), Requirement.parse('opentelemetry-semantic-conventions==0.36b0'))
Failed to auto initialize opentelemetry
Traceback (most recent call last):
File "/opt/python/opentelemetry/instrumentation/auto_instrumentation/sitecustomize.py", line 119, in initialize
distro = _load_distros()
File "/opt/python/opentelemetry/instrumentation/auto_instrumentation/sitecustomize.py", line 52, in _load_distros
raise exc
File "/opt/python/opentelemetry/instrumentation/auto_instrumentation/sitecustomize.py", line 37, in _load_distros
distro = entry_point.load()()
File "/var/task/pkg_resources/__init__.py", line 2516, in load
self.require(*args, **kwargs)
File "/var/task/pkg_resources/__init__.py", line 2539, in require
items = working_set.resolve(reqs, env, installer, extras=self.extras)
File "/var/task/pkg_resources/__init__.py", line 827, in resolve
dist = self._resolve_dist(
File "/var/task/pkg_resources/__init__.py", line 873, in _resolve_dist
raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.VersionConflict: (opentelemetry-semantic-conventions 0.32b0 (/var/task), Requirement.parse('opentelemetry-semantic-conventions==0.36b0'))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant