opentelemetry-ruby
opentelemetry-ruby copied to clipboard
feat: add manticore instrumentation
This PR adds instrumentation to the manticore http client. This is a JRUBY Library.
https://github.com/cheald/manticore
Update June 25, 2021 Opening PR early to get some feedbacks in the meantime, the following work is still incomplete.
- Add more unit test and coverage
- Add Appraisal file if needed
- Update README.md
- Add more annotations docs for new classes created
Update Nov 21, 2021
- Woke up one morning and wanted to contribute again
- Addressed PR comments and pulled in latest changes
- Removed
alias
methods attempted to usesuper
method. Went withself.method(:call).super_method.call
as thesuper
method somehow becomes missing. - Followed more conventions provided.
Some of the non-jruby related builds are failing. As Manticore requires Jruby (and possibly truffleruby) build in order to install the gem, how would one go about trying to pass unrelated builds? @ahayworth
Can take a closer look this week, but We should bake explicit checks for platform into the compatible block, our patching tests should explicitly test that itβs incompatible without the platform being jruby, and then our instrumentation tests ought to be wrapped with a platform check. Just my two cents
@schanjr my bad here, my week blew by. I am going to try to get some eyes on this otw or early next week, apologies for the delay here and again, appreciate the contribution
@schanjr my bad here, my week blew by. I am going to try to get some eyes on this otw or early next week, apologies for the delay here and again, appreciate the contribution @ericmustin No worries. I'm not in hurry to merge in this PR. Looking for proper solution is good for long term. Take your time π
@ericmustin Comments should be addressed, please take a look.
However... the builds for non-jruby runtimes still failing. How do we address those?
CI Failures:
opentelemetry-instrumentation-manticore: bundle
opentelemetry-instrumentation-manticore: rubocop
opentelemetry-instrumentation-manticore: yard
I suspect related to rake file? Since the gem should only be installed on JRUBY engines (compiles to java). TruffleRuby also is also java based.
if RUBY_ENGINE == 'truffleruby'
task default: %i[test]
else
task default: %i[test rubocop yard]
end
@ericmustin @ahayworth I need some help on passing the CI...
@arielvalentin @fbogsany @mwear @ahayworth @ericmustin @robertlaurin Any possibilities of getting this merged? It's been opened as PR for a long time.
Hello, and thank you for your contribution!
We recently split Ruby instrumentation out into the opentelemetry-ruby-contrib
repo.
This PR is related to instrumentation, so we'll need you to re-open it against opentelemetry-ruby-contrib
. Sorry for the inconvenience!
To do that, you can:
-
Create a fork of
opentelemetry-ruby-contrib
and copy the git url - In your
opentelemetry-ruby
repo, rungit remote add tmp-contrib <your-fork-git-url>
-
git push tmp-contrib your-branch-name
- Open a new PR in contrib (feel free to just copy/paste your original PR description there)
- Close your open PR in this repo with a comment that links to your new PR in contrib
- Delete your
tmp-contrib
remote fromopentelemetry-ruby
(git remote rm tmp-contrib
) -
git clone
youropentelemetry-ruby-contrib
fork, check out your branch, and make all changes in that repo from now on!
Sorry again for the inconvenience, and thank you for contributing!
π Hi, @schanjr! Thank you for your PR!
As Sam mentioned, Ruby instrumentation now lives in the opentelemetry-ruby-contrib repo. We'd be happy to take another look at your work in that context.
Since this PR is focused on instrumentation, I'm going to close it.
We appreciate your contribution and hope to work with you again soon!