From c797444ee70d5f925922e60be86eaae191d798c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Ka=C5=BAmierczak?= Date: Wed, 5 Feb 2025 22:29:33 +0100 Subject: [PATCH 1/7] ci(grpc): plug in dependabot --- .github/dependabot.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 3bebd5f9c8..4b4401e44a 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -201,3 +201,7 @@ updates: directory: "/resources/google_cloud_platform" schedule: interval: weekly +- package-ecosystem: bundler + directory: "/instrumentation/grpc" + schedule: + interval: weekly From fe7c3933afb9c31214e797df5d9b4f79a9fee3eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Ka=C5=BAmierczak?= Date: Wed, 5 Feb 2025 22:29:55 +0100 Subject: [PATCH 2/7] fix(grpc): update changelog to match the style --- instrumentation/grpc/CHANGELOG.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/instrumentation/grpc/CHANGELOG.md b/instrumentation/grpc/CHANGELOG.md index 975153cc04..2cb2fb095e 100644 --- a/instrumentation/grpc/CHANGELOG.md +++ b/instrumentation/grpc/CHANGELOG.md @@ -1,4 +1,4 @@ -## [Unreleased] +# Release History: opentelemetry-instrumentation-grpc ### v0.2.0 / 2025-01-16 @@ -6,19 +6,19 @@ * ADDED: Set minimum supported version to Ruby 3.1 -## [0.1.3] - 2024-09-11 +### v0.1.3 / 2024-09-11 -- Fix error in handling of non-gRPC errors -- Fix error in method signature for OpenTelemetry::Instrumentation::Grpc.client_interceptor [#1](https://github.com/hibachrach/opentelemetry-instrumentation-grpc/pull/1) +* Fix error in handling of non-gRPC errors +* Fix error in method signature for OpenTelemetry::Instrumentation::Grpc.client_interceptor [#1](https://github.com/hibachrach/opentelemetry-instrumentation-grpc/pull/1) -## [0.1.2] - 2024-06-26 +### v0.1.2 / 2024-06-26 -- Align span naming with spec +* Align span naming with spec -## [0.1.1] - 2024-06-26 +### v0.1.1 / 2024-06-26 -- Fix `uninitialized constant Interceptors` error +* Fix `uninitialized constant Interceptors` error -## [0.1.0] - 2024-06-18 +### v0.1.0 / 2024-06-18 -- Initial release +* Initial release From 23dc926c55f6aee9ef44b7bb0aa404c6ddc78eba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Ka=C5=BAmierczak?= Date: Wed, 5 Feb 2025 22:30:06 +0100 Subject: [PATCH 3/7] fix(grpc): update readme to match the style --- instrumentation/grpc/README.md | 40 ++++++++++++++++++++-------------- 1 file changed, 24 insertions(+), 16 deletions(-) diff --git a/instrumentation/grpc/README.md b/instrumentation/grpc/README.md index 788c1866d9..6d7c6ad814 100644 --- a/instrumentation/grpc/README.md +++ b/instrumentation/grpc/README.md @@ -1,28 +1,25 @@ -# OpenTelemetry::Instrumentation::Grpc +# OpenTelemetry gRPC Instrumentation > [!CAUTION] > This gem is not ready for release by the open-telemetry org yet, but other versions are available on RubyGems [![Gem Version](https://badge.fury.io/rb/opentelemetry-instrumentation-grpc.svg)](https://badge.fury.io/rb/opentelemetry-instrumentation-grpc) [![GitHub Actions CI Status](https://github.com/hibachrach/opentelemetry-instrumentation-grpc/actions/workflows/main.yml/badge.svg)](https://github.com/hibachrach/opentelemetry-instrumentation-grpc/actions?query=branch%3Amain) -OpenTelemetry instrumentation for users of the `grpc` gem +OpenTelemetry instrumentation for users of the [gRPC](https://github.com/grpc/grpc/tree/master/src/ruby) gem. > [!WARNING] > Right now, the gem only instruments outbound requests to gRPC services -## Installation +## How do I get started? -Install the gem and add to the application's Gemfile by executing: +Install the gem using: -```sh - $ bundle add opentelemetry-instrumentation-grpc +```console +gem install opentelemetry-instrumentation-grpc ``` -If bundler is not being used to manage dependencies, install the gem by executing: +Or, if you use [bundler][bundler-home], include `opentelemetry-instrumentation-grpc` to your `Gemfile`. -```sh - $ gem install opentelemetry-instrumentation-grpc -``` ## Usage @@ -46,6 +43,10 @@ instrumentation. end ``` +## Examples + +Example usage can be seen in the `./example/trace_demonstration.rb` file [here](https://github.com/open-telemetry/opentelemetry-ruby-contrib/blob/main/instrumentation/grpc/example/trace_demonstration.rb) + ## Development Integration tests rely on a real gRPC server that is started by relevant tests. The proto definition is located in `test/support/proto/ping.proto`. Making changes to the proto definition requires re-creating gRPC-generated code. To do this, run the following command: @@ -54,14 +55,21 @@ Integration tests rely on a real gRPC server that is started by relevant tests. bundle exec grpc_tools_ruby_protoc --ruby_out=. --grpc_out=. test/support/proto/ping.proto ``` -## Contributing +## How can I get involved? -Bug reports and pull requests are welcome on GitHub at https://github.com/open-telemetry/opentelemetry-ruby-contrib. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/open-telemetry/opentelemetry-ruby-contrib/blob/main/CODE_OF_CONDUCT.md). +The `opentelemetry-instrumentation-sidekiq` gem source is [on github][repo-github], along with related gems including `opentelemetry-api` and `opentelemetry-sdk`. -## License +The OpenTelemetry Ruby gems are maintained by the OpenTelemetry Ruby special interest group (SIG). You can get involved by joining us on our [GitHub Discussions][discussions-url], [Slack Channel][slack-channel] or attending our weekly meeting. See the [meeting calendar][community-meetings] for dates and times. For more information on this and other language SIGs, see the OpenTelemetry [community page][ruby-sig]. -The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT). +## License -## Code of Conduct +The `opentelemetry-instrumentation-sidekiq` gem is distributed under the Apache 2.0 license. See [LICENSE][license-github] for more information. -Everyone interacting in the OpenTelemetry::Instrumentation::Grpc project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/open-telemetry/opentelemetry-ruby-contrib/blob/main/CODE_OF_CONDUCT.md). +[sidekiq-home]: https://github.com/mperham/sidekiq +[bundler-home]: https://bundler.io +[repo-github]: https://github.com/open-telemetry/opentelemetry-ruby +[license-github]: https://github.com/open-telemetry/opentelemetry-ruby-contrib/blob/main/LICENSE +[ruby-sig]: https://github.com/open-telemetry/community#ruby-sig +[community-meetings]: https://github.com/open-telemetry/community#community-meetings +[slack-channel]: https://cloud-native.slack.com/archives/C01NWKKMKMY +[discussions-url]: https://github.com/open-telemetry/opentelemetry-ruby/discussions From f1aa0cc2fab3dc968faa668915c07bc77fbf17e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Ka=C5=BAmierczak?= Date: Wed, 5 Feb 2025 22:40:49 +0100 Subject: [PATCH 4/7] fix(grpc): fix changelog copy-paste errors --- instrumentation/grpc/README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/instrumentation/grpc/README.md b/instrumentation/grpc/README.md index 6d7c6ad814..ec25ffecfd 100644 --- a/instrumentation/grpc/README.md +++ b/instrumentation/grpc/README.md @@ -57,15 +57,15 @@ bundle exec grpc_tools_ruby_protoc --ruby_out=. --grpc_out=. test/support/proto/ ## How can I get involved? -The `opentelemetry-instrumentation-sidekiq` gem source is [on github][repo-github], along with related gems including `opentelemetry-api` and `opentelemetry-sdk`. +The `opentelemetry-instrumentation-grpc` gem source is [on github][repo-github], along with related gems including `opentelemetry-api` and `opentelemetry-sdk`. The OpenTelemetry Ruby gems are maintained by the OpenTelemetry Ruby special interest group (SIG). You can get involved by joining us on our [GitHub Discussions][discussions-url], [Slack Channel][slack-channel] or attending our weekly meeting. See the [meeting calendar][community-meetings] for dates and times. For more information on this and other language SIGs, see the OpenTelemetry [community page][ruby-sig]. ## License -The `opentelemetry-instrumentation-sidekiq` gem is distributed under the Apache 2.0 license. See [LICENSE][license-github] for more information. +The `opentelemetry-instrumentation-grpc` gem is distributed under the Apache 2.0 license. See [LICENSE][license-github] for more information. -[sidekiq-home]: https://github.com/mperham/sidekiq +[grpc-home]: https://github.com/grpc/grpc [bundler-home]: https://bundler.io [repo-github]: https://github.com/open-telemetry/opentelemetry-ruby [license-github]: https://github.com/open-telemetry/opentelemetry-ruby-contrib/blob/main/LICENSE From d5e821f022c8b3e5f8ca05618d9813ae705d8e3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Ka=C5=BAmierczak?= Date: Thu, 6 Feb 2025 08:33:06 +0100 Subject: [PATCH 5/7] Update instrumentation/grpc/CHANGELOG.md Co-authored-by: Kayla Reopelle <87386821+kaylareopelle@users.noreply.github.com> --- instrumentation/grpc/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/instrumentation/grpc/CHANGELOG.md b/instrumentation/grpc/CHANGELOG.md index 2cb2fb095e..5819cf6d42 100644 --- a/instrumentation/grpc/CHANGELOG.md +++ b/instrumentation/grpc/CHANGELOG.md @@ -17,7 +17,7 @@ ### v0.1.1 / 2024-06-26 -* Fix `uninitialized constant Interceptors` error +* FIXED: Fix `uninitialized constant Interceptors` error ### v0.1.0 / 2024-06-18 From 87d6da5fe62e5fd2678345d69076a55ff621cff7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Ka=C5=BAmierczak?= Date: Thu, 6 Feb 2025 08:33:23 +0100 Subject: [PATCH 6/7] Update instrumentation/grpc/CHANGELOG.md Co-authored-by: Kayla Reopelle <87386821+kaylareopelle@users.noreply.github.com> --- instrumentation/grpc/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/instrumentation/grpc/CHANGELOG.md b/instrumentation/grpc/CHANGELOG.md index 5819cf6d42..7e7da07e38 100644 --- a/instrumentation/grpc/CHANGELOG.md +++ b/instrumentation/grpc/CHANGELOG.md @@ -13,7 +13,7 @@ ### v0.1.2 / 2024-06-26 -* Align span naming with spec +* FIXED: Align span naming with spec ### v0.1.1 / 2024-06-26 From b55ea9a823c294082876e953e3624302d316ed08 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Ka=C5=BAmierczak?= Date: Thu, 6 Feb 2025 08:33:29 +0100 Subject: [PATCH 7/7] Update instrumentation/grpc/CHANGELOG.md Co-authored-by: Kayla Reopelle <87386821+kaylareopelle@users.noreply.github.com> --- instrumentation/grpc/CHANGELOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/instrumentation/grpc/CHANGELOG.md b/instrumentation/grpc/CHANGELOG.md index 7e7da07e38..50201318ea 100644 --- a/instrumentation/grpc/CHANGELOG.md +++ b/instrumentation/grpc/CHANGELOG.md @@ -8,8 +8,8 @@ ### v0.1.3 / 2024-09-11 -* Fix error in handling of non-gRPC errors -* Fix error in method signature for OpenTelemetry::Instrumentation::Grpc.client_interceptor [#1](https://github.com/hibachrach/opentelemetry-instrumentation-grpc/pull/1) +* FIXED: Fix error in handling of non-gRPC errors +* FIXED: Fix error in method signature for OpenTelemetry::Instrumentation::Grpc.client_interceptor [#1](https://github.com/hibachrach/opentelemetry-instrumentation-grpc/pull/1) ### v0.1.2 / 2024-06-26