opentelemetry-exporter-jaeger 0.12.0 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +27 -0
- data/README.md +5 -5
- data/lib/opentelemetry/exporter/jaeger/agent_exporter.rb +12 -2
- data/lib/opentelemetry/exporter/jaeger/collector_exporter.rb +13 -7
- data/lib/opentelemetry/exporter/jaeger/encoder.rb +4 -3
- data/lib/opentelemetry/exporter/jaeger/version.rb +1 -1
- metadata +24 -10
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 26e202a0355f910f2a246337567c6ca9909f0c3b189accf5836f035d84b8170a
         | 
| 4 | 
            +
              data.tar.gz: b11ac5dbde83535ae7fb2d71760ac18da00be55a82b1bccda0d3e029d3fbb151
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: df8ed6bf2f857b11cc5e0518f2023369abd834ea0f4470812e8c07a0015d21955205a9ef2340390fad962d9718ec92bc3fb0b5b6cfcc9b41fd2bc8505632b2b4
         | 
| 7 | 
            +
              data.tar.gz: 2984207bd9210bdaf8b707ca979b03f9a1bb8ac379207cc2014e758c19bebd55b6348ea1fb0836ca1ca68585c06cf5c90cbc2403d2625ceb8d441d747290ddda
         | 
    
        data/CHANGELOG.md
    CHANGED
    
    | @@ -1,5 +1,32 @@ | |
| 1 1 | 
             
            # Release History: opentelemetry-exporter-jaeger
         | 
| 2 2 |  | 
| 3 | 
            +
            ### v0.17.0 / 2021-04-22
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            * ADDED: Add zipkin exporter 
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            ### v0.16.0 / 2021-03-17
         | 
| 8 | 
            +
             | 
| 9 | 
            +
            * BREAKING CHANGE: Implement Exporter#force_flush 
         | 
| 10 | 
            +
             | 
| 11 | 
            +
            * ADDED: Implement Exporter#force_flush 
         | 
| 12 | 
            +
            * DOCS: Replace Gitter with GitHub Discussions 
         | 
| 13 | 
            +
             | 
| 14 | 
            +
            ### v0.15.0 / 2021-02-18
         | 
| 15 | 
            +
             | 
| 16 | 
            +
            * BREAKING CHANGE: Streamline processor pipeline 
         | 
| 17 | 
            +
             | 
| 18 | 
            +
            * FIXED: Streamline processor pipeline 
         | 
| 19 | 
            +
             | 
| 20 | 
            +
            ### v0.14.0 / 2021-02-03
         | 
| 21 | 
            +
             | 
| 22 | 
            +
            * (No significant changes)
         | 
| 23 | 
            +
             | 
| 24 | 
            +
            ### v0.13.0 / 2021-01-29
         | 
| 25 | 
            +
             | 
| 26 | 
            +
            * ADDED: Provide default resource in SDK 
         | 
| 27 | 
            +
            * ADDED: Add untraced wrapper to common utils 
         | 
| 28 | 
            +
            * FIXED: Jaeger ref type should be FOLLOWS_FROM 
         | 
| 29 | 
            +
             | 
| 3 30 | 
             
            ### v0.12.0 / 2020-12-24
         | 
| 4 31 |  | 
| 5 32 | 
             
            * ADDED: Structured error handling 
         | 
    
        data/README.md
    CHANGED
    
    | @@ -35,7 +35,7 @@ require 'opentelemetry/exporter/jaeger' | |
| 35 35 | 
             
            OpenTelemetry::SDK.configure do |c|
         | 
| 36 36 | 
             
              c.add_span_processor(
         | 
| 37 37 | 
             
                OpenTelemetry::SDK::Trace::Export::BatchSpanProcessor.new(
         | 
| 38 | 
            -
                   | 
| 38 | 
            +
                  OpenTelemetry::Exporter::Jaeger::AgentExporter.new(host: '127.0.0.1', port: 6831)
         | 
| 39 39 | 
             
                  # Alternatively, for the collector exporter:
         | 
| 40 40 | 
             
                  # exporter: OpenTelemetry::Exporter::Jaeger::CollectorExporter.new(endpoint: 'http://192.168.0.1:14268/api/traces')
         | 
| 41 41 | 
             
                )
         | 
| @@ -85,7 +85,7 @@ The collector exporter can be configured explicitly in code, as shown above, or | |
| 85 85 |  | 
| 86 86 | 
             
            The `opentelemetry-exporter-jaeger` gem source is [on github][repo-github], along with related gems including `opentelemetry-sdk`.
         | 
| 87 87 |  | 
| 88 | 
            -
            The OpenTelemetry Ruby gems are maintained by the OpenTelemetry-Ruby special interest group (SIG). You can get involved by joining us  | 
| 88 | 
            +
            The OpenTelemetry Ruby gems are maintained by the OpenTelemetry-Ruby special interest group (SIG). You can get involved by joining us in [GitHub Discussions][discussions-url] 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].
         | 
| 89 89 |  | 
| 90 90 | 
             
            ## License
         | 
| 91 91 |  | 
| @@ -96,8 +96,8 @@ The `opentelemetry-exporter-jaeger` gem is distributed under the Apache 2.0 lice | |
| 96 96 | 
             
            [opentelemetry-home]: https://opentelemetry.io
         | 
| 97 97 | 
             
            [bundler-home]: https://bundler.io
         | 
| 98 98 | 
             
            [repo-github]: https://github.com/open-telemetry/opentelemetry-ruby
         | 
| 99 | 
            -
            [license-github]: https://github.com/open-telemetry/opentelemetry-ruby/blob/ | 
| 100 | 
            -
            [examples-github]: https://github.com/open-telemetry/opentelemetry-ruby/tree/ | 
| 99 | 
            +
            [license-github]: https://github.com/open-telemetry/opentelemetry-ruby/blob/main/LICENSE
         | 
| 100 | 
            +
            [examples-github]: https://github.com/open-telemetry/opentelemetry-ruby/tree/main/examples
         | 
| 101 101 | 
             
            [ruby-sig]: https://github.com/open-telemetry/community#ruby-sig
         | 
| 102 102 | 
             
            [community-meetings]: https://github.com/open-telemetry/community#community-meetings
         | 
| 103 | 
            -
            [ | 
| 103 | 
            +
            [discussions-url]: https://github.com/open-telemetry/opentelemetry-ruby/discussions
         | 
| @@ -43,13 +43,23 @@ module OpenTelemetry | |
| 43 43 | 
             
                      end
         | 
| 44 44 | 
             
                    end
         | 
| 45 45 |  | 
| 46 | 
            -
                    # Called when {OpenTelemetry::SDK::Trace:: | 
| 47 | 
            -
                    # this exporter is registered to a {OpenTelemetry::SDK::Trace:: | 
| 46 | 
            +
                    # Called when {OpenTelemetry::SDK::Trace::TracerProvider#force_flush} is called, if
         | 
| 47 | 
            +
                    # this exporter is registered to a {OpenTelemetry::SDK::Trace::TracerProvider}
         | 
| 48 | 
            +
                    # object.
         | 
| 49 | 
            +
                    #
         | 
| 50 | 
            +
                    # @param [optional Numeric] timeout An optional timeout in seconds.
         | 
| 51 | 
            +
                    def force_flush(timeout: nil)
         | 
| 52 | 
            +
                      SUCCESS
         | 
| 53 | 
            +
                    end
         | 
| 54 | 
            +
             | 
| 55 | 
            +
                    # Called when {OpenTelemetry::SDK::Trace::TracerProvider#shutdown} is called, if
         | 
| 56 | 
            +
                    # this exporter is registered to a {OpenTelemetry::SDK::Trace::TracerProvider}
         | 
| 48 57 | 
             
                    # object.
         | 
| 49 58 | 
             
                    #
         | 
| 50 59 | 
             
                    # @param [optional Numeric] timeout An optional timeout in seconds.
         | 
| 51 60 | 
             
                    def shutdown(timeout: nil)
         | 
| 52 61 | 
             
                      @shutdown = true
         | 
| 62 | 
            +
                      SUCCESS
         | 
| 53 63 | 
             
                    end
         | 
| 54 64 |  | 
| 55 65 | 
             
                    private
         | 
| @@ -45,7 +45,7 @@ module OpenTelemetry | |
| 45 45 | 
             
                        @transport.write(@serializer.serialize(batch))
         | 
| 46 46 | 
             
                      end
         | 
| 47 47 |  | 
| 48 | 
            -
                      untraced do
         | 
| 48 | 
            +
                      OpenTelemetry::Common::Utilities.untraced do
         | 
| 49 49 | 
             
                        @transport.flush
         | 
| 50 50 | 
             
                      end
         | 
| 51 51 | 
             
                      SUCCESS
         | 
| @@ -54,13 +54,23 @@ module OpenTelemetry | |
| 54 54 | 
             
                      FAILURE
         | 
| 55 55 | 
             
                    end
         | 
| 56 56 |  | 
| 57 | 
            -
                    # Called when {OpenTelemetry::SDK::Trace:: | 
| 58 | 
            -
                    # this exporter is registered to a {OpenTelemetry::SDK::Trace:: | 
| 57 | 
            +
                    # Called when {OpenTelemetry::SDK::Trace::TracerProvider#force_flush} is called, if
         | 
| 58 | 
            +
                    # this exporter is registered to a {OpenTelemetry::SDK::Trace::TracerProvider}
         | 
| 59 | 
            +
                    # object.
         | 
| 60 | 
            +
                    #
         | 
| 61 | 
            +
                    # @param [optional Numeric] timeout An optional timeout in seconds.
         | 
| 62 | 
            +
                    def force_flush(timeout: nil)
         | 
| 63 | 
            +
                      SUCCESS
         | 
| 64 | 
            +
                    end
         | 
| 65 | 
            +
             | 
| 66 | 
            +
                    # Called when {OpenTelemetry::SDK::Trace::TracerProvider#shutdown} is called, if
         | 
| 67 | 
            +
                    # this exporter is registered to a {OpenTelemetry::SDK::Trace::TracerProvider}
         | 
| 59 68 | 
             
                    # object.
         | 
| 60 69 | 
             
                    #
         | 
| 61 70 | 
             
                    # @param [optional Numeric] timeout An optional timeout in seconds.
         | 
| 62 71 | 
             
                    def shutdown(timeout: nil)
         | 
| 63 72 | 
             
                      @shutdown = true
         | 
| 73 | 
            +
                      SUCCESS
         | 
| 64 74 | 
             
                    end
         | 
| 65 75 |  | 
| 66 76 | 
             
                    private
         | 
| @@ -74,10 +84,6 @@ module OpenTelemetry | |
| 74 84 | 
             
                      true
         | 
| 75 85 | 
             
                    end
         | 
| 76 86 |  | 
| 77 | 
            -
                    def untraced
         | 
| 78 | 
            -
                      OpenTelemetry::Trace.with_span(OpenTelemetry::Trace::Span.new) { yield }
         | 
| 79 | 
            -
                    end
         | 
| 80 | 
            -
             | 
| 81 87 | 
             
                    def encoded_batches(span_data)
         | 
| 82 88 | 
             
                      span_data.group_by(&:resource).map do |resource, spans|
         | 
| 83 89 | 
             
                        process = Encoder.encoded_process(resource)
         | 
| @@ -30,10 +30,11 @@ module OpenTelemetry | |
| 30 30 | 
             
                      OpenTelemetry::Trace::SpanKind::PRODUCER => 'producer',
         | 
| 31 31 | 
             
                      OpenTelemetry::Trace::SpanKind::CONSUMER => 'consumer'
         | 
| 32 32 | 
             
                    }.freeze
         | 
| 33 | 
            -
                     | 
| 33 | 
            +
                    DEFAULT_SERVICE_NAME = OpenTelemetry::SDK::Resources::Resource.default.attribute_enumerator.find { |k, _| k == 'service.name' }&.last || 'unknown_service'
         | 
| 34 | 
            +
                    private_constant(:EMPTY_ARRAY, :LONG, :DOUBLE, :STRING, :BOOL, :KEY, :TYPE, :TYPE_MAP, :KIND_MAP, :DEFAULT_SERVICE_NAME)
         | 
| 34 35 |  | 
| 35 36 | 
             
                    def encoded_process(resource)
         | 
| 36 | 
            -
                      service_name =  | 
| 37 | 
            +
                      service_name = DEFAULT_SERVICE_NAME
         | 
| 37 38 | 
             
                      tags = resource&.attribute_enumerator&.select do |key, value|
         | 
| 38 39 | 
             
                        service_name = value if key == 'service.name'
         | 
| 39 40 | 
             
                        key != 'service.name'
         | 
| @@ -110,7 +111,7 @@ module OpenTelemetry | |
| 110 111 | 
             
                    def encoded_references(links)
         | 
| 111 112 | 
             
                      links&.map do |link|
         | 
| 112 113 | 
             
                        Thrift::SpanRef.new(
         | 
| 113 | 
            -
                          'refType' => Thrift::SpanRefType:: | 
| 114 | 
            +
                          'refType' => Thrift::SpanRefType::FOLLOWS_FROM,
         | 
| 114 115 | 
             
                          'traceIdLow' => int64(link.span_context.trace_id[16, 16]),
         | 
| 115 116 | 
             
                          'traceIdHigh' => int64(link.span_context.trace_id[0, 16]),
         | 
| 116 117 | 
             
                          'spanId' => int64(link.span_context.span_id)
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: opentelemetry-exporter-jaeger
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0. | 
| 4 | 
            +
              version: 0.17.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - OpenTelemetry Authors
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date:  | 
| 11 | 
            +
            date: 2021-04-23 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: opentelemetry-api
         | 
| @@ -16,28 +16,42 @@ dependencies: | |
| 16 16 | 
             
                requirements:
         | 
| 17 17 | 
             
                - - "~>"
         | 
| 18 18 | 
             
                  - !ruby/object:Gem::Version
         | 
| 19 | 
            -
                    version: 0. | 
| 19 | 
            +
                    version: 0.17.0
         | 
| 20 20 | 
             
              type: :runtime
         | 
| 21 21 | 
             
              prerelease: false
         | 
| 22 22 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 23 23 | 
             
                requirements:
         | 
| 24 24 | 
             
                - - "~>"
         | 
| 25 25 | 
             
                  - !ruby/object:Gem::Version
         | 
| 26 | 
            -
                    version: 0. | 
| 26 | 
            +
                    version: 0.17.0
         | 
| 27 27 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 28 28 | 
             
              name: opentelemetry-common
         | 
| 29 29 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 30 30 | 
             
                requirements:
         | 
| 31 31 | 
             
                - - "~>"
         | 
| 32 32 | 
             
                  - !ruby/object:Gem::Version
         | 
| 33 | 
            -
                    version: 0. | 
| 33 | 
            +
                    version: 0.17.0
         | 
| 34 34 | 
             
              type: :runtime
         | 
| 35 35 | 
             
              prerelease: false
         | 
| 36 36 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 37 37 | 
             
                requirements:
         | 
| 38 38 | 
             
                - - "~>"
         | 
| 39 39 | 
             
                  - !ruby/object:Gem::Version
         | 
| 40 | 
            -
                    version: 0. | 
| 40 | 
            +
                    version: 0.17.0
         | 
| 41 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 42 | 
            +
              name: opentelemetry-sdk
         | 
| 43 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 44 | 
            +
                requirements:
         | 
| 45 | 
            +
                - - "~>"
         | 
| 46 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 47 | 
            +
                    version: 0.17.0
         | 
| 48 | 
            +
              type: :runtime
         | 
| 49 | 
            +
              prerelease: false
         | 
| 50 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 51 | 
            +
                requirements:
         | 
| 52 | 
            +
                - - "~>"
         | 
| 53 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 54 | 
            +
                    version: 0.17.0
         | 
| 41 55 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 42 56 | 
             
              name: thrift
         | 
| 43 57 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -209,10 +223,10 @@ homepage: https://github.com/open-telemetry/opentelemetry-ruby | |
| 209 223 | 
             
            licenses:
         | 
| 210 224 | 
             
            - Apache-2.0
         | 
| 211 225 | 
             
            metadata:
         | 
| 212 | 
            -
              changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-jaeger/v0. | 
| 213 | 
            -
              source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby/tree/ | 
| 226 | 
            +
              changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-jaeger/v0.17.0/file.CHANGELOG.html
         | 
| 227 | 
            +
              source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby/tree/main/exporter/jaeger
         | 
| 214 228 | 
             
              bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby/issues
         | 
| 215 | 
            -
              documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-jaeger/v0. | 
| 229 | 
            +
              documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-jaeger/v0.17.0
         | 
| 216 230 | 
             
            post_install_message: 
         | 
| 217 231 | 
             
            rdoc_options: []
         | 
| 218 232 | 
             
            require_paths:
         | 
| @@ -228,7 +242,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 228 242 | 
             
                - !ruby/object:Gem::Version
         | 
| 229 243 | 
             
                  version: '0'
         | 
| 230 244 | 
             
            requirements: []
         | 
| 231 | 
            -
            rubygems_version: 3.1. | 
| 245 | 
            +
            rubygems_version: 3.1.6
         | 
| 232 246 | 
             
            signing_key: 
         | 
| 233 247 | 
             
            specification_version: 4
         | 
| 234 248 | 
             
            summary: Jaeger trace exporter for the OpenTelemetry framework
         |