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

Added an otel module image variant. #871

Merged
merged 1 commit into from
Mar 19, 2024
Merged

Conversation

thresheek
Copy link
Collaborator

@thresheek thresheek commented Mar 9, 2024

Proposed changes

The variant provides an image built with a recently opensourced opentelemetry module developed by F5/NGINX [1].

I've decided to make a separate variant based on the main image instead of extending it because the module build-depends on a fairly large chunk of C++ code from multiple projects, which takes around 10 minutes to compile and link on an 8-core amd64 machine. This is why it's currently limited to amd64 and arm64v8, which nginx.org provides builds for. Users can build them on less popular architectures as the instructions are still provided in the dockerfiles.

Also, it's currently only available for the "mainline" branch, with "stable" to follow in the future.

[1] https://nginx.org/en/docs/ngx_otel_module.html
[2] https://nginx.org/en/linux_packages.html#dynmodules

Checklist

Before creating a PR, run through this checklist and mark each as complete:

  • I have read the CONTRIBUTING document
  • I have run ./update.sh and ensured all entrypoint/Dockerfile template changes have been applied to the relevant image entrypoint scripts & Dockerfiles
  • If applicable, I have added tests that prove my fix is effective or that my feature works
  • If applicable, I have checked that any relevant tests pass after adding my changes
  • I have updated any relevant documentation

The variant provides an image built with a recently opensourced
opentelemetry module developed by F5/NGINX [1].

I've decided to make a separate variant based on the main image instead
of extending it because the module build-depends on a fairly large chunk
of C++ code from multiple projects, which takes around 10 minutes to
compile and link on an 8-core amd64 machine.  This is why it's currently
limited to amd64 and arm64v8, which nginx.org provides builds for.
Users can build them on less popular architectures as the instructions
are still provided in the dockerfiles.

Also, it's currently only available for the "mainline" branch, with
"stable" to follow in the future.

[1] https://nginx.org/en/docs/ngx_otel_module.html
[2] https://nginx.org/en/linux_packages.html#dynmodules
@thresheek
Copy link
Collaborator Author

cc @tianon @yosifkit

I plan to merge this and submit to the official library - can you let me know what are your feelings about it?

Thanks!

@thresheek thresheek merged commit 9cb2788 into nginxinc:master Mar 19, 2024
9 checks passed
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

Successfully merging this pull request may close these issues.

1 participant