google-cloud-trace 0.39.0 → 0.41.3
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/AUTHENTICATION.md +3 -2
- data/CHANGELOG.md +49 -0
- data/CONTRIBUTING.md +4 -5
- data/LOGGING.md +1 -1
- data/OVERVIEW.md +1 -2
- data/lib/google-cloud-trace.rb +20 -12
- data/lib/google/cloud/trace.rb +18 -14
- data/lib/google/cloud/trace/async_reporter.rb +7 -6
- data/lib/google/cloud/trace/credentials.rb +2 -2
- data/lib/google/cloud/trace/errors.rb +2 -2
- data/lib/google/cloud/trace/faraday_middleware.rb +5 -7
- data/lib/google/cloud/trace/label_key.rb +1 -1
- data/lib/google/cloud/trace/middleware.rb +7 -8
- data/lib/google/cloud/trace/notifications.rb +13 -14
- data/lib/google/cloud/trace/patches/active_call_with_trace.rb +2 -2
- data/lib/google/cloud/trace/patches/call_with_trace.rb +2 -2
- data/lib/google/cloud/trace/rails.rb +2 -2
- data/lib/google/cloud/trace/result_set.rb +20 -12
- data/lib/google/cloud/trace/service.rb +37 -60
- data/lib/google/cloud/trace/span.rb +7 -7
- data/lib/google/cloud/trace/trace_record.rb +4 -5
- data/lib/google/cloud/trace/utils.rb +1 -1
- data/lib/google/cloud/trace/version.rb +1 -1
- metadata +23 -72
- data/lib/google/cloud/trace/v1.rb +0 -16
- data/lib/google/cloud/trace/v1/credentials.rb +0 -39
- data/lib/google/cloud/trace/v1/doc/google/devtools/cloudtrace/v1/trace.rb +0 -253
- data/lib/google/cloud/trace/v1/doc/google/protobuf/empty.rb +0 -29
- data/lib/google/cloud/trace/v1/doc/google/protobuf/timestamp.rb +0 -113
- data/lib/google/cloud/trace/v1/trace_service_client.rb +0 -425
- data/lib/google/cloud/trace/v1/trace_service_client_config.json +0 -41
- data/lib/google/cloud/trace/v2.rb +0 -123
- data/lib/google/cloud/trace/v2/credentials.rb +0 -39
- data/lib/google/cloud/trace/v2/doc/google/devtools/cloudtrace/v2/trace.rb +0 -356
- data/lib/google/cloud/trace/v2/doc/google/devtools/cloudtrace/v2/tracing.rb +0 -33
- data/lib/google/cloud/trace/v2/doc/google/protobuf/any.rb +0 -131
- data/lib/google/cloud/trace/v2/doc/google/protobuf/empty.rb +0 -29
- data/lib/google/cloud/trace/v2/doc/google/protobuf/timestamp.rb +0 -113
- data/lib/google/cloud/trace/v2/doc/google/protobuf/wrappers.rb +0 -34
- data/lib/google/cloud/trace/v2/doc/google/rpc/status.rb +0 -39
- data/lib/google/cloud/trace/v2/trace_service_client.rb +0 -418
- data/lib/google/cloud/trace/v2/trace_service_client_config.json +0 -36
- data/lib/google/devtools/cloudtrace/v1/trace_pb.rb +0 -82
- data/lib/google/devtools/cloudtrace/v1/trace_services_pb.rb +0 -58
- data/lib/google/devtools/cloudtrace/v2/trace_pb.rb +0 -142
- data/lib/google/devtools/cloudtrace/v2/tracing_pb.rb +0 -29
- data/lib/google/devtools/cloudtrace/v2/tracing_services_pb.rb +0 -53
| @@ -27,7 +27,7 @@ module GRPC | |
| 27 27 | 
             
                # Override GRPC::ActiveCall#request_response method. Wrap the original
         | 
| 28 28 | 
             
                # method with a trace span that will get submitted with the overall request
         | 
| 29 29 | 
             
                # trace span tree.
         | 
| 30 | 
            -
                def request_response *args
         | 
| 30 | 
            +
                def request_response *args, **kwargs
         | 
| 31 31 | 
             
                  Google::Cloud::Trace.in_span SPAN_NAME do |span|
         | 
| 32 32 | 
             
                    if span && !args.empty?
         | 
| 33 33 | 
             
                      grpc_request = args[0]
         | 
| @@ -41,5 +41,5 @@ module GRPC | |
| 41 41 | 
             
              end
         | 
| 42 42 |  | 
| 43 43 | 
             
              # Patch GRPC::ActiveCall#request_response method
         | 
| 44 | 
            -
              ::GRPC::ActiveCall. | 
| 44 | 
            +
              ::GRPC::ActiveCall.prepend ActiveCallWithTrace
         | 
| 45 45 | 
             
            end
         | 
| @@ -68,7 +68,7 @@ module GRPC | |
| 68 68 | 
             
                  def run_batch *args
         | 
| 69 69 | 
             
                    span = Google::Cloud::Trace.get
         | 
| 70 70 | 
             
                    # Make sure we're in a "gRPC request" span
         | 
| 71 | 
            -
                    span = nil if span  | 
| 71 | 
            +
                    span = nil if !span.respond_to?(:name) || span.name != GRPC::ActiveCallWithTrace::SPAN_NAME
         | 
| 72 72 |  | 
| 73 73 | 
             
                    if span && !args.empty?
         | 
| 74 74 | 
             
                      message = args[0]
         | 
| @@ -84,6 +84,6 @@ module GRPC | |
| 84 84 | 
             
                end
         | 
| 85 85 |  | 
| 86 86 | 
             
                # Patch GRPC::Core::Call#run_batch method
         | 
| 87 | 
            -
                ::GRPC::Core::Call. | 
| 87 | 
            +
                ::GRPC::Core::Call.prepend CallWithTrace
         | 
| 88 88 | 
             
              end
         | 
| 89 89 | 
             
            end
         | 
| @@ -191,13 +191,13 @@ module Google | |
| 191 191 | 
             
                          Trace::Credentials.new credentials
         | 
| 192 192 | 
             
                        end
         | 
| 193 193 | 
             
                      rescue Exception => e
         | 
| 194 | 
            -
                         | 
| 194 | 
            +
                        $stdout.puts "Note: Google::Cloud::Trace is disabled because " \
         | 
| 195 195 | 
             
                          "it failed to authorize with the service. (#{e.message})"
         | 
| 196 196 | 
             
                        return false
         | 
| 197 197 | 
             
                      end
         | 
| 198 198 |  | 
| 199 199 | 
             
                      if project_id.to_s.empty?
         | 
| 200 | 
            -
                         | 
| 200 | 
            +
                        $stdout.puts "Note: Google::Cloud::Trace is disabled because " \
         | 
| 201 201 | 
             
                          "the project ID could not be determined."
         | 
| 202 202 | 
             
                        return false
         | 
| 203 203 | 
             
                      end
         | 
| @@ -158,7 +158,9 @@ module Google | |
| 158 158 | 
             
                    def next_page
         | 
| 159 159 | 
             
                      return nil unless results_pending?
         | 
| 160 160 | 
             
                      service.list_traces \
         | 
| 161 | 
            -
                        project, | 
| 161 | 
            +
                        project,
         | 
| 162 | 
            +
                        start_time,
         | 
| 163 | 
            +
                        end_time,
         | 
| 162 164 | 
             
                        filter: filter,
         | 
| 163 165 | 
             
                        order_by: order_by,
         | 
| 164 166 | 
             
                        view: view,
         | 
| @@ -167,26 +169,32 @@ module Google | |
| 167 169 | 
             
                    end
         | 
| 168 170 |  | 
| 169 171 | 
             
                    ##
         | 
| 170 | 
            -
                    # Create a new ResultSet given a  | 
| 172 | 
            +
                    # Create a new ResultSet given a Gapic::PagedEnumerable::Page,
         | 
| 171 173 | 
             
                    # and all the query parameters.
         | 
| 172 174 | 
             
                    #
         | 
| 173 175 | 
             
                    # @private
         | 
| 174 176 | 
             
                    #
         | 
| 175 | 
            -
                    def self. | 
| 176 | 
            -
             | 
| 177 | 
            -
             | 
| 178 | 
            -
             | 
| 179 | 
            -
             | 
| 180 | 
            -
             | 
| 181 | 
            -
             | 
| 177 | 
            +
                    def self.from_gapic_page service,
         | 
| 178 | 
            +
                                             project_id,
         | 
| 179 | 
            +
                                             page,
         | 
| 180 | 
            +
                                             start_time,
         | 
| 181 | 
            +
                                             end_time,
         | 
| 182 | 
            +
                                             filter: nil,
         | 
| 183 | 
            +
                                             order_by: nil,
         | 
| 184 | 
            +
                                             view: nil,
         | 
| 185 | 
            +
                                             page_size: nil,
         | 
| 186 | 
            +
                                             page_token: nil
         | 
| 182 187 | 
             
                      next_page_token = page.next_page_token
         | 
| 183 188 | 
             
                      next_page_token = nil unless page.next_page_token?
         | 
| 184 189 | 
             
                      results = page.map do |proto|
         | 
| 185 190 | 
             
                        Google::Cloud::Trace::TraceRecord.from_grpc proto
         | 
| 186 191 | 
             
                      end
         | 
| 187 | 
            -
                      new service, | 
| 188 | 
            -
                           | 
| 189 | 
            -
                           | 
| 192 | 
            +
                      new service,
         | 
| 193 | 
            +
                          project_id,
         | 
| 194 | 
            +
                          results,
         | 
| 195 | 
            +
                          next_page_token,
         | 
| 196 | 
            +
                          start_time,
         | 
| 197 | 
            +
                          end_time,
         | 
| 190 198 | 
             
                          filter: filter,
         | 
| 191 199 | 
             
                          order_by: order_by,
         | 
| 192 200 | 
             
                          view: view,
         | 
| @@ -16,7 +16,6 @@ | |
| 16 16 | 
             
            require "google/cloud/errors"
         | 
| 17 17 | 
             
            require "google/cloud/trace/version"
         | 
| 18 18 | 
             
            require "google/cloud/trace/v1"
         | 
| 19 | 
            -
            require "google/gax/errors"
         | 
| 20 19 | 
             
            require "uri"
         | 
| 21 20 |  | 
| 22 21 | 
             
            module Google
         | 
| @@ -28,17 +27,21 @@ module Google | |
| 28 27 | 
             
                  # @private
         | 
| 29 28 | 
             
                  #
         | 
| 30 29 | 
             
                  class Service
         | 
| 31 | 
            -
                    attr_accessor :project | 
| 30 | 
            +
                    attr_accessor :project
         | 
| 31 | 
            +
                    attr_accessor :credentials
         | 
| 32 | 
            +
                    attr_accessor :timeout
         | 
| 33 | 
            +
                    attr_accessor :host
         | 
| 32 34 |  | 
| 33 35 | 
             
                    ##
         | 
| 34 36 | 
             
                    # Creates a new Service instance.
         | 
| 35 | 
            -
                    def initialize project, | 
| 37 | 
            +
                    def initialize project,
         | 
| 38 | 
            +
                                   credentials,
         | 
| 39 | 
            +
                                   timeout: nil,
         | 
| 36 40 | 
             
                                   host: nil
         | 
| 37 41 | 
             
                      @project = project
         | 
| 38 42 | 
             
                      @credentials = credentials
         | 
| 39 43 | 
             
                      @timeout = timeout
         | 
| 40 | 
            -
                      @ | 
| 41 | 
            -
                      @host = host || V1::TraceServiceClient::SERVICE_ADDRESS
         | 
| 44 | 
            +
                      @host = host
         | 
| 42 45 | 
             
                    end
         | 
| 43 46 |  | 
| 44 47 | 
             
                    def lowlevel_client
         | 
| @@ -50,15 +53,13 @@ module Google | |
| 50 53 | 
             
                          require "google/cloud/trace/patches/active_call_with_trace"
         | 
| 51 54 | 
             
                          require "google/cloud/trace/patches/call_with_trace"
         | 
| 52 55 |  | 
| 53 | 
            -
                          V1:: | 
| 54 | 
            -
                            credentials | 
| 55 | 
            -
                            timeout | 
| 56 | 
            -
                             | 
| 57 | 
            -
                             | 
| 58 | 
            -
                             | 
| 59 | 
            -
             | 
| 60 | 
            -
                            lib_version: Google::Cloud::Trace::VERSION
         | 
| 61 | 
            -
                          )
         | 
| 56 | 
            +
                          V1::TraceService::Client.new do |config|
         | 
| 57 | 
            +
                            config.credentials = credentials if credentials
         | 
| 58 | 
            +
                            config.timeout = timeout if timeout
         | 
| 59 | 
            +
                            config.endpoint = host if host
         | 
| 60 | 
            +
                            config.lib_name = "gccl"
         | 
| 61 | 
            +
                            config.lib_version = Google::Cloud::Trace::VERSION
         | 
| 62 | 
            +
                          end
         | 
| 62 63 | 
             
                        end
         | 
| 63 64 | 
             
                    end
         | 
| 64 65 | 
             
                    attr_accessor :mocked_lowlevel_client
         | 
| @@ -67,55 +68,50 @@ module Google | |
| 67 68 | 
             
                    # Sends new traces to Stackdriver Trace or updates existing traces.
         | 
| 68 69 | 
             
                    def patch_traces traces
         | 
| 69 70 | 
             
                      traces = Array(traces)
         | 
| 70 | 
            -
                      traces_proto = Google:: | 
| 71 | 
            +
                      traces_proto = Google::Cloud::Trace::V1::Traces.new
         | 
| 71 72 | 
             
                      traces.each do |trace|
         | 
| 72 73 | 
             
                        traces_proto.traces.push trace.to_grpc
         | 
| 73 74 | 
             
                      end
         | 
| 74 | 
            -
             | 
| 75 | 
            -
             | 
| 76 | 
            -
                      end
         | 
| 75 | 
            +
             | 
| 76 | 
            +
                      lowlevel_client.patch_traces project_id: @project, traces: traces_proto
         | 
| 77 77 | 
             
                      traces
         | 
| 78 78 | 
             
                    end
         | 
| 79 79 |  | 
| 80 80 | 
             
                    ##
         | 
| 81 81 | 
             
                    # Returns a trace given its ID
         | 
| 82 82 | 
             
                    def get_trace trace_id
         | 
| 83 | 
            -
                      trace_proto =  | 
| 84 | 
            -
                        lowlevel_client.get_trace @project, trace_id
         | 
| 85 | 
            -
                      end
         | 
| 83 | 
            +
                      trace_proto = lowlevel_client.get_trace project_id: @project, trace_id: trace_id
         | 
| 86 84 | 
             
                      Google::Cloud::Trace::TraceRecord.from_grpc trace_proto
         | 
| 87 85 | 
             
                    end
         | 
| 88 86 |  | 
| 89 87 | 
             
                    ##
         | 
| 90 88 | 
             
                    # Searches for traces matching the given criteria.
         | 
| 91 89 | 
             
                    #
         | 
| 92 | 
            -
                    def list_traces project_id, | 
| 90 | 
            +
                    def list_traces project_id,
         | 
| 91 | 
            +
                                    start_time,
         | 
| 92 | 
            +
                                    end_time,
         | 
| 93 93 | 
             
                                    filter: nil,
         | 
| 94 94 | 
             
                                    order_by: nil,
         | 
| 95 95 | 
             
                                    view: nil,
         | 
| 96 96 | 
             
                                    page_size: nil,
         | 
| 97 97 | 
             
                                    page_token: nil
         | 
| 98 | 
            -
                      call_opts = if page_token
         | 
| 99 | 
            -
                                    Google::Gax::CallOptions.new page_token: page_token
         | 
| 100 | 
            -
                                  else
         | 
| 101 | 
            -
                                    Google::Gax::CallOptions.new
         | 
| 102 | 
            -
                                  end
         | 
| 103 98 | 
             
                      start_proto = Google::Cloud::Trace::Utils.time_to_grpc start_time
         | 
| 104 99 | 
             
                      end_proto = Google::Cloud::Trace::Utils.time_to_grpc end_time
         | 
| 105 | 
            -
                      paged_enum =  | 
| 106 | 
            -
             | 
| 107 | 
            -
             | 
| 108 | 
            -
             | 
| 109 | 
            -
             | 
| 110 | 
            -
             | 
| 111 | 
            -
             | 
| 112 | 
            -
             | 
| 113 | 
            -
             | 
| 114 | 
            -
                       | 
| 115 | 
            -
             | 
| 116 | 
            -
             | 
| 117 | 
            -
                         | 
| 118 | 
            -
                         | 
| 100 | 
            +
                      paged_enum = lowlevel_client.list_traces  project_id: project_id,
         | 
| 101 | 
            +
                                                                view: view,
         | 
| 102 | 
            +
                                                                page_size: page_size,
         | 
| 103 | 
            +
                                                                start_time: start_proto,
         | 
| 104 | 
            +
                                                                end_time: end_proto,
         | 
| 105 | 
            +
                                                                filter: filter,
         | 
| 106 | 
            +
                                                                order_by: order_by,
         | 
| 107 | 
            +
                                                                page_token: page_token
         | 
| 108 | 
            +
             | 
| 109 | 
            +
                      Google::Cloud::Trace::ResultSet.from_gapic_page \
         | 
| 110 | 
            +
                        self,
         | 
| 111 | 
            +
                        project_id,
         | 
| 112 | 
            +
                        paged_enum.page,
         | 
| 113 | 
            +
                        start_time,
         | 
| 114 | 
            +
                        end_time,
         | 
| 119 115 | 
             
                        filter: filter,
         | 
| 120 116 | 
             
                        order_by: order_by,
         | 
| 121 117 | 
             
                        view: view,
         | 
| @@ -127,25 +123,6 @@ module Google | |
| 127 123 | 
             
                    def inspect
         | 
| 128 124 | 
             
                      "#{self.class}(#{@project})"
         | 
| 129 125 | 
             
                    end
         | 
| 130 | 
            -
             | 
| 131 | 
            -
                    protected
         | 
| 132 | 
            -
             | 
| 133 | 
            -
                    def service_address
         | 
| 134 | 
            -
                      return nil if host.nil?
         | 
| 135 | 
            -
                      URI.parse("//#{host}").host
         | 
| 136 | 
            -
                    end
         | 
| 137 | 
            -
             | 
| 138 | 
            -
                    def service_port
         | 
| 139 | 
            -
                      return nil if host.nil?
         | 
| 140 | 
            -
                      URI.parse("//#{host}").port
         | 
| 141 | 
            -
                    end
         | 
| 142 | 
            -
             | 
| 143 | 
            -
                    def execute
         | 
| 144 | 
            -
                      yield
         | 
| 145 | 
            -
                    rescue Google::Gax::GaxError => e
         | 
| 146 | 
            -
                      # GaxError wraps BadStatus, but exposes it as #cause
         | 
| 147 | 
            -
                      raise Google::Cloud::Error.from_error(e.cause)
         | 
| 148 | 
            -
                    end
         | 
| 149 126 | 
             
                  end
         | 
| 150 127 | 
             
                end
         | 
| 151 128 | 
             
              end
         | 
| @@ -140,7 +140,7 @@ module Google | |
| 140 140 | 
             
                    # Create a new Span object from a TraceSpan protobuf and insert it
         | 
| 141 141 | 
             
                    # into the given trace.
         | 
| 142 142 | 
             
                    #
         | 
| 143 | 
            -
                    # @param [Google:: | 
| 143 | 
            +
                    # @param [Google::Cloud::Trace::V1::Tracespan] span_proto The
         | 
| 144 144 | 
             
                    #     span protobuf from the V1 gRPC Trace API.
         | 
| 145 145 | 
             
                    # @param [Google::Cloud::Trace::TraceRecord] trace The trace object
         | 
| 146 146 | 
             
                    #     to contain the span.
         | 
| @@ -169,13 +169,13 @@ module Google | |
| 169 169 | 
             
                    #
         | 
| 170 170 | 
             
                    # @param [Integer] default_parent_id The parent span ID to use if the
         | 
| 171 171 | 
             
                    #     span has no parent in the trace tree. Optional; defaults to 0.
         | 
| 172 | 
            -
                    # @return [Google:: | 
| 172 | 
            +
                    # @return [Google::Cloud::Trace::V1::TraceSpan] The generated
         | 
| 173 173 | 
             
                    #     protobuf.
         | 
| 174 174 | 
             
                    #
         | 
| 175 175 | 
             
                    def to_grpc default_parent_id = 0
         | 
| 176 176 | 
             
                      start_proto = Google::Cloud::Trace::Utils.time_to_grpc start_time
         | 
| 177 177 | 
             
                      end_proto = Google::Cloud::Trace::Utils.time_to_grpc end_time
         | 
| 178 | 
            -
                      Google:: | 
| 178 | 
            +
                      Google::Cloud::Trace::V1::TraceSpan.new \
         | 
| 179 179 | 
             
                        span_id: span_id.to_i,
         | 
| 180 180 | 
             
                        kind: kind.to_sym,
         | 
| 181 181 | 
             
                        name: name,
         | 
| @@ -323,7 +323,7 @@ module Google | |
| 323 323 | 
             
                      ensure_exists!
         | 
| 324 324 | 
             
                      unless start_time
         | 
| 325 325 | 
             
                        self.start_time = ::Time.now.utc
         | 
| 326 | 
            -
                        parent | 
| 326 | 
            +
                        parent&.ensure_started
         | 
| 327 327 | 
             
                      end
         | 
| 328 328 | 
             
                      self
         | 
| 329 329 | 
             
                    end
         | 
| @@ -350,8 +350,8 @@ module Google | |
| 350 350 | 
             
                    def delete
         | 
| 351 351 | 
             
                      ensure_exists!
         | 
| 352 352 | 
             
                      @children.each(&:delete)
         | 
| 353 | 
            -
                      parent | 
| 354 | 
            -
                      trace.remove_span | 
| 353 | 
            +
                      parent&.remove_child self
         | 
| 354 | 
            +
                      trace.remove_span self
         | 
| 355 355 | 
             
                      @trace = nil
         | 
| 356 356 | 
             
                      @parent = nil
         | 
| 357 357 | 
             
                      self
         | 
| @@ -428,7 +428,7 @@ module Google | |
| 428 428 | 
             
                    def ensure_no_cycle! new_parent
         | 
| 429 429 | 
             
                      ptr = new_parent
         | 
| 430 430 | 
             
                      until ptr.nil?
         | 
| 431 | 
            -
                        raise "Move would result in a cycle" if ptr.equal? | 
| 431 | 
            +
                        raise "Move would result in a cycle" if ptr.equal? self
         | 
| 432 432 | 
             
                        ptr = ptr.parent
         | 
| 433 433 | 
             
                      end
         | 
| 434 434 | 
             
                    end
         | 
| @@ -56,8 +56,7 @@ module Google | |
| 56 56 | 
             
                      @trace_context = trace_context || Stackdriver::Core::TraceContext.new
         | 
| 57 57 | 
             
                      @root_spans = []
         | 
| 58 58 | 
             
                      @spans_by_id = {}
         | 
| 59 | 
            -
                      @span_id_generator =
         | 
| 60 | 
            -
                        span_id_generator || ::Proc.new { rand(1..0xffffffffffffffff) }
         | 
| 59 | 
            +
                      @span_id_generator = span_id_generator || proc { rand(1..0xffffffffffffffff) }
         | 
| 61 60 | 
             
                    end
         | 
| 62 61 |  | 
| 63 62 | 
             
                    ##
         | 
| @@ -76,7 +75,7 @@ module Google | |
| 76 75 | 
             
                    ##
         | 
| 77 76 | 
             
                    # Create a new Trace object from a trace protobuf.
         | 
| 78 77 | 
             
                    #
         | 
| 79 | 
            -
                    # @param [Google:: | 
| 78 | 
            +
                    # @param [Google::Cloud::Trace::V1::Trace] trace_proto The
         | 
| 80 79 | 
             
                    #     trace protobuf from the V1 gRPC Trace API.
         | 
| 81 80 | 
             
                    # @return [Trace, nil] A corresponding Trace object, or `nil` if the
         | 
| 82 81 | 
             
                    #     proto does not represent an existing trace object.
         | 
| @@ -104,14 +103,14 @@ module Google | |
| 104 103 | 
             
                    # Convert this Trace object to an equivalent Trace protobuf suitable
         | 
| 105 104 | 
             
                    # for the V1 gRPC Trace API.
         | 
| 106 105 | 
             
                    #
         | 
| 107 | 
            -
                    # @return [Google:: | 
| 106 | 
            +
                    # @return [Google::Cloud::Trace::V1::Trace] The generated
         | 
| 108 107 | 
             
                    #     protobuf.
         | 
| 109 108 | 
             
                    #
         | 
| 110 109 | 
             
                    def to_grpc
         | 
| 111 110 | 
             
                      span_protos = @spans_by_id.values.map do |span|
         | 
| 112 111 | 
             
                        span.to_grpc trace_context.span_id.to_i
         | 
| 113 112 | 
             
                      end
         | 
| 114 | 
            -
                      Google:: | 
| 113 | 
            +
                      Google::Cloud::Trace::V1::Trace.new \
         | 
| 115 114 | 
             
                        project_id: project_id,
         | 
| 116 115 | 
             
                        trace_id: trace_id,
         | 
| 117 116 | 
             
                        spans: span_protos
         | 
| @@ -32,7 +32,7 @@ module Google | |
| 32 32 |  | 
| 33 33 | 
             
                      # sometimes this gets called with time as a float or
         | 
| 34 34 | 
             
                      # int. Coerce into a time object, and move on.
         | 
| 35 | 
            -
                      time = Time.at | 
| 35 | 
            +
                      time = Time.at time if time.is_a? Numeric
         | 
| 36 36 |  | 
| 37 37 | 
             
                      raise ArgumentError unless time.is_a? Time
         | 
| 38 38 |  | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: google-cloud-trace
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0. | 
| 4 | 
            +
              version: 0.41.3
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Daniel Azuma
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date:  | 
| 11 | 
            +
            date: 2021-07-08 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: google-cloud-core
         | 
| @@ -16,14 +16,14 @@ dependencies: | |
| 16 16 | 
             
                requirements:
         | 
| 17 17 | 
             
                - - "~>"
         | 
| 18 18 | 
             
                  - !ruby/object:Gem::Version
         | 
| 19 | 
            -
                    version: '1. | 
| 19 | 
            +
                    version: '1.5'
         | 
| 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: '1. | 
| 26 | 
            +
                    version: '1.5'
         | 
| 27 27 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 28 28 | 
             
              name: stackdriver-core
         | 
| 29 29 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -39,101 +39,75 @@ dependencies: | |
| 39 39 | 
             
                  - !ruby/object:Gem::Version
         | 
| 40 40 | 
             
                    version: '1.3'
         | 
| 41 41 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 42 | 
            -
              name:  | 
| 42 | 
            +
              name: concurrent-ruby
         | 
| 43 43 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 44 44 | 
             
                requirements:
         | 
| 45 45 | 
             
                - - "~>"
         | 
| 46 46 | 
             
                  - !ruby/object:Gem::Version
         | 
| 47 | 
            -
                    version: '1. | 
| 47 | 
            +
                    version: '1.1'
         | 
| 48 48 | 
             
              type: :runtime
         | 
| 49 49 | 
             
              prerelease: false
         | 
| 50 50 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 51 51 | 
             
                requirements:
         | 
| 52 52 | 
             
                - - "~>"
         | 
| 53 53 | 
             
                  - !ruby/object:Gem::Version
         | 
| 54 | 
            -
                    version: '1. | 
| 55 | 
            -
            - !ruby/object:Gem::Dependency
         | 
| 56 | 
            -
              name: googleapis-common-protos
         | 
| 57 | 
            -
              requirement: !ruby/object:Gem::Requirement
         | 
| 58 | 
            -
                requirements:
         | 
| 59 | 
            -
                - - ">="
         | 
| 60 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 61 | 
            -
                    version: 1.3.9
         | 
| 62 | 
            -
                - - "<"
         | 
| 63 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 64 | 
            -
                    version: '2.0'
         | 
| 65 | 
            -
              type: :runtime
         | 
| 66 | 
            -
              prerelease: false
         | 
| 67 | 
            -
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 68 | 
            -
                requirements:
         | 
| 69 | 
            -
                - - ">="
         | 
| 70 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 71 | 
            -
                    version: 1.3.9
         | 
| 72 | 
            -
                - - "<"
         | 
| 73 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 74 | 
            -
                    version: '2.0'
         | 
| 54 | 
            +
                    version: '1.1'
         | 
| 75 55 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 76 | 
            -
              name:  | 
| 56 | 
            +
              name: google-cloud-trace-v1
         | 
| 77 57 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 78 58 | 
             
                requirements:
         | 
| 79 | 
            -
                - - " | 
| 80 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 81 | 
            -
                    version: 1.0.4
         | 
| 82 | 
            -
                - - "<"
         | 
| 59 | 
            +
                - - "~>"
         | 
| 83 60 | 
             
                  - !ruby/object:Gem::Version
         | 
| 84 | 
            -
                    version: ' | 
| 61 | 
            +
                    version: '0.0'
         | 
| 85 62 | 
             
              type: :runtime
         | 
| 86 63 | 
             
              prerelease: false
         | 
| 87 64 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 88 65 | 
             
                requirements:
         | 
| 89 | 
            -
                - - " | 
| 90 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 91 | 
            -
                    version: 1.0.4
         | 
| 92 | 
            -
                - - "<"
         | 
| 66 | 
            +
                - - "~>"
         | 
| 93 67 | 
             
                  - !ruby/object:Gem::Version
         | 
| 94 | 
            -
                    version: ' | 
| 68 | 
            +
                    version: '0.0'
         | 
| 95 69 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 96 | 
            -
              name:  | 
| 70 | 
            +
              name: google-cloud-trace-v2
         | 
| 97 71 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 98 72 | 
             
                requirements:
         | 
| 99 73 | 
             
                - - "~>"
         | 
| 100 74 | 
             
                  - !ruby/object:Gem::Version
         | 
| 101 | 
            -
                    version: ' | 
| 75 | 
            +
                    version: '0.0'
         | 
| 102 76 | 
             
              type: :runtime
         | 
| 103 77 | 
             
              prerelease: false
         | 
| 104 78 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 105 79 | 
             
                requirements:
         | 
| 106 80 | 
             
                - - "~>"
         | 
| 107 81 | 
             
                  - !ruby/object:Gem::Version
         | 
| 108 | 
            -
                    version: ' | 
| 82 | 
            +
                    version: '0.0'
         | 
| 109 83 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 110 84 | 
             
              name: google-style
         | 
| 111 85 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 112 86 | 
             
                requirements:
         | 
| 113 87 | 
             
                - - "~>"
         | 
| 114 88 | 
             
                  - !ruby/object:Gem::Version
         | 
| 115 | 
            -
                    version: 1. | 
| 89 | 
            +
                    version: 1.25.1
         | 
| 116 90 | 
             
              type: :development
         | 
| 117 91 | 
             
              prerelease: false
         | 
| 118 92 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 119 93 | 
             
                requirements:
         | 
| 120 94 | 
             
                - - "~>"
         | 
| 121 95 | 
             
                  - !ruby/object:Gem::Version
         | 
| 122 | 
            -
                    version: 1. | 
| 96 | 
            +
                    version: 1.25.1
         | 
| 123 97 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 124 98 | 
             
              name: minitest
         | 
| 125 99 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 126 100 | 
             
                requirements:
         | 
| 127 101 | 
             
                - - "~>"
         | 
| 128 102 | 
             
                  - !ruby/object:Gem::Version
         | 
| 129 | 
            -
                    version: '5. | 
| 103 | 
            +
                    version: '5.14'
         | 
| 130 104 | 
             
              type: :development
         | 
| 131 105 | 
             
              prerelease: false
         | 
| 132 106 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 133 107 | 
             
                requirements:
         | 
| 134 108 | 
             
                - - "~>"
         | 
| 135 109 | 
             
                  - !ruby/object:Gem::Version
         | 
| 136 | 
            -
                    version: '5. | 
| 110 | 
            +
                    version: '5.14'
         | 
| 137 111 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 138 112 | 
             
              name: minitest-autotest
         | 
| 139 113 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -196,14 +170,14 @@ dependencies: | |
| 196 170 | 
             
                requirements:
         | 
| 197 171 | 
             
                - - "~>"
         | 
| 198 172 | 
             
                  - !ruby/object:Gem::Version
         | 
| 199 | 
            -
                    version: ' | 
| 173 | 
            +
                    version: '1.3'
         | 
| 200 174 | 
             
              type: :development
         | 
| 201 175 | 
             
              prerelease: false
         | 
| 202 176 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 203 177 | 
             
                requirements:
         | 
| 204 178 | 
             
                - - "~>"
         | 
| 205 179 | 
             
                  - !ruby/object:Gem::Version
         | 
| 206 | 
            -
                    version: ' | 
| 180 | 
            +
                    version: '1.3'
         | 
| 207 181 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 208 182 | 
             
              name: railties
         | 
| 209 183 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -325,30 +299,7 @@ files: | |
| 325 299 | 
             
            - lib/google/cloud/trace/time_sampler.rb
         | 
| 326 300 | 
             
            - lib/google/cloud/trace/trace_record.rb
         | 
| 327 301 | 
             
            - lib/google/cloud/trace/utils.rb
         | 
| 328 | 
            -
            - lib/google/cloud/trace/v1.rb
         | 
| 329 | 
            -
            - lib/google/cloud/trace/v1/credentials.rb
         | 
| 330 | 
            -
            - lib/google/cloud/trace/v1/doc/google/devtools/cloudtrace/v1/trace.rb
         | 
| 331 | 
            -
            - lib/google/cloud/trace/v1/doc/google/protobuf/empty.rb
         | 
| 332 | 
            -
            - lib/google/cloud/trace/v1/doc/google/protobuf/timestamp.rb
         | 
| 333 | 
            -
            - lib/google/cloud/trace/v1/trace_service_client.rb
         | 
| 334 | 
            -
            - lib/google/cloud/trace/v1/trace_service_client_config.json
         | 
| 335 | 
            -
            - lib/google/cloud/trace/v2.rb
         | 
| 336 | 
            -
            - lib/google/cloud/trace/v2/credentials.rb
         | 
| 337 | 
            -
            - lib/google/cloud/trace/v2/doc/google/devtools/cloudtrace/v2/trace.rb
         | 
| 338 | 
            -
            - lib/google/cloud/trace/v2/doc/google/devtools/cloudtrace/v2/tracing.rb
         | 
| 339 | 
            -
            - lib/google/cloud/trace/v2/doc/google/protobuf/any.rb
         | 
| 340 | 
            -
            - lib/google/cloud/trace/v2/doc/google/protobuf/empty.rb
         | 
| 341 | 
            -
            - lib/google/cloud/trace/v2/doc/google/protobuf/timestamp.rb
         | 
| 342 | 
            -
            - lib/google/cloud/trace/v2/doc/google/protobuf/wrappers.rb
         | 
| 343 | 
            -
            - lib/google/cloud/trace/v2/doc/google/rpc/status.rb
         | 
| 344 | 
            -
            - lib/google/cloud/trace/v2/trace_service_client.rb
         | 
| 345 | 
            -
            - lib/google/cloud/trace/v2/trace_service_client_config.json
         | 
| 346 302 | 
             
            - lib/google/cloud/trace/version.rb
         | 
| 347 | 
            -
            - lib/google/devtools/cloudtrace/v1/trace_pb.rb
         | 
| 348 | 
            -
            - lib/google/devtools/cloudtrace/v1/trace_services_pb.rb
         | 
| 349 | 
            -
            - lib/google/devtools/cloudtrace/v2/trace_pb.rb
         | 
| 350 | 
            -
            - lib/google/devtools/cloudtrace/v2/tracing_pb.rb
         | 
| 351 | 
            -
            - lib/google/devtools/cloudtrace/v2/tracing_services_pb.rb
         | 
| 352 303 | 
             
            homepage: https://github.com/googleapis/google-cloud-ruby/tree/master/google-cloud-trace
         | 
| 353 304 | 
             
            licenses:
         | 
| 354 305 | 
             
            - Apache-2.0
         | 
| @@ -361,14 +312,14 @@ required_ruby_version: !ruby/object:Gem::Requirement | |
| 361 312 | 
             
              requirements:
         | 
| 362 313 | 
             
              - - ">="
         | 
| 363 314 | 
             
                - !ruby/object:Gem::Version
         | 
| 364 | 
            -
                  version: '2. | 
| 315 | 
            +
                  version: '2.5'
         | 
| 365 316 | 
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 366 317 | 
             
              requirements:
         | 
| 367 318 | 
             
              - - ">="
         | 
| 368 319 | 
             
                - !ruby/object:Gem::Version
         | 
| 369 320 | 
             
                  version: '0'
         | 
| 370 321 | 
             
            requirements: []
         | 
| 371 | 
            -
            rubygems_version: 3. | 
| 322 | 
            +
            rubygems_version: 3.2.17
         | 
| 372 323 | 
             
            signing_key: 
         | 
| 373 324 | 
             
            specification_version: 4
         | 
| 374 325 | 
             
            summary: Application Instrumentation and API Client library for Stackdriver Trace
         |