Class: Google::Apis::CloudtraceV1::CloudTraceService

Inherits:
Google::Apis::Core::BaseService show all
Defined in:
generated/google/apis/cloudtrace_v1/service.rb

Overview

Stackdriver Trace API

Sends application trace data to Stackdriver Trace for viewing. Trace data is collected for all App Engine applications by default. Trace data from other applications can be provided using this API. This library is used to interact with the Trace API directly. If you are looking to instrument your application for Stackdriver Trace, we recommend using OpenCensus.

Examples:

require 'google/apis/cloudtrace_v1'

Cloudtrace = Google::Apis::CloudtraceV1 # Alias the module
service = Cloudtrace::CloudTraceService.new

See Also:

Instance Attribute Summary collapse

Attributes inherited from Google::Apis::Core::BaseService

#authorization, #base_path, #batch_path, #client, #client_options, #request_options, #root_url, #upload_path

Instance Method Summary collapse

Methods inherited from Google::Apis::Core::BaseService

#batch, #batch_upload, #fetch_all, #http

Methods included from Google::Apis::Core::Logging

#logger

Constructor Details

#initializeCloudTraceService

Returns a new instance of CloudTraceService



49
50
51
52
# File 'generated/google/apis/cloudtrace_v1/service.rb', line 49

def initialize
  super('https://cloudtrace.googleapis.com/', '')
  @batch_path = 'batch'
end

Instance Attribute Details

#keyString

Returns API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.

Returns:

  • (String)

    API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.



42
43
44
# File 'generated/google/apis/cloudtrace_v1/service.rb', line 42

def key
  @key
end

#quota_userString

Returns Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

Returns:

  • (String)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.



47
48
49
# File 'generated/google/apis/cloudtrace_v1/service.rb', line 47

def quota_user
  @quota_user
end

Instance Method Details

#get_project_trace(project_id, trace_id, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudtraceV1::Trace

Gets a single trace by its ID.

Parameters:

  • project_id (String)

    ID of the Cloud project where the trace data is stored.

  • trace_id (String)

    ID of the trace to return.

  • fields (String)

    Selector specifying which fields to include in a partial response.

  • quota_user (String)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:



113
114
115
116
117
118
119
120
121
122
# File 'generated/google/apis/cloudtrace_v1/service.rb', line 113

def get_project_trace(project_id, trace_id, fields: nil, quota_user: nil, options: nil, &block)
  command =  make_simple_command(:get, 'v1/projects/{projectId}/traces/{traceId}', options)
  command.response_representation = Google::Apis::CloudtraceV1::Trace::Representation
  command.response_class = Google::Apis::CloudtraceV1::Trace
  command.params['projectId'] = project_id unless project_id.nil?
  command.params['traceId'] = trace_id unless trace_id.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#list_project_traces(project_id, end_time: nil, filter: nil, order_by: nil, page_size: nil, page_token: nil, start_time: nil, view: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudtraceV1::ListTracesResponse

Returns of a list of traces that match the specified filter conditions.

Parameters:

  • project_id (String)

    ID of the Cloud project where the trace data is stored.

  • end_time (String)

    End of the time interval (inclusive) during which the trace data was collected from the application.

  • filter (String)

    An optional filter against labels for the request. By default, searches use prefix matching. To specify exact match, prepend a plus symbol (+) to the search term. Multiple terms are ANDed. Syntax:

    • root:NAME_PREFIX or NAME_PREFIX: Return traces where any root span starts with NAME_PREFIX.
    • +root:NAME or +NAME: Return traces where any root span's name is exactly NAME.
    • span:NAME_PREFIX: Return traces where any span starts with NAME_PREFIX.
    • +span:NAME: Return traces where any span's name is exactly NAME.
    • latency:DURATION: Return traces whose overall latency is greater or equal to than DURATION. Accepted units are nanoseconds (ns), milliseconds (ms), and seconds (s). Default is ms. For example, latency:24ms returns traces whose overall latency is greater than or equal to 24 milliseconds.
    • label:LABEL_KEY: Return all traces containing the specified label key (exact match, case-sensitive) regardless of the key:value pair's value (including empty values).
    • LABEL_KEY:VALUE_PREFIX: Return all traces containing the specified label key (exact match, case-sensitive) whose value starts with VALUE_PREFIX. Both a key and a value must be specified.
    • +LABEL_KEY:VALUE: Return all traces containing a key:value pair exactly matching the specified text. Both a key and a value must be specified.
    • method:VALUE: Equivalent to /http/method:VALUE.
    • url:VALUE: Equivalent to /http/url:VALUE.
  • order_by (String)

    Field used to sort the returned traces. Optional. Can be one of the following:

    • trace_id
    • name (name field of root span in the trace)
    • duration (difference between end_time and start_time fields of the root span)
    • start (start_time field of the root span) Descending order can be specified by appending desc to the sort field (for example, name desc). Only one sort field is permitted.
  • page_size (Fixnum)

    Maximum number of traces to return. If not specified or <= 0, the implementation selects a reasonable value. The implementation may return fewer traces than the requested page size. Optional.

  • page_token (String)

    Token identifying the page of results to return. If provided, use the value of the next_page_token field from a previous request. Optional.

  • start_time (String)

    Start of the time interval (inclusive) during which the trace data was collected from the application.

  • view (String)

    Type of data returned for traces in the list. Optional. Default is MINIMAL.

  • fields (String)

    Selector specifying which fields to include in a partial response.

  • quota_user (String)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:



200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
# File 'generated/google/apis/cloudtrace_v1/service.rb', line 200

def list_project_traces(project_id, end_time: nil, filter: nil, order_by: nil, page_size: nil, page_token: nil, start_time: nil, view: nil, fields: nil, quota_user: nil, options: nil, &block)
  command =  make_simple_command(:get, 'v1/projects/{projectId}/traces', options)
  command.response_representation = Google::Apis::CloudtraceV1::ListTracesResponse::Representation
  command.response_class = Google::Apis::CloudtraceV1::ListTracesResponse
  command.params['projectId'] = project_id unless project_id.nil?
  command.query['endTime'] = end_time unless end_time.nil?
  command.query['filter'] = filter unless filter.nil?
  command.query['orderBy'] = order_by unless order_by.nil?
  command.query['pageSize'] = page_size unless page_size.nil?
  command.query['pageToken'] = page_token unless page_token.nil?
  command.query['startTime'] = start_time unless start_time.nil?
  command.query['view'] = view unless view.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#patch_project_traces(project_id, traces_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudtraceV1::Empty

Sends new traces to Stackdriver Trace or updates existing traces. If the ID of a trace that you send matches that of an existing trace, any fields in the existing trace and its spans are overwritten by the provided values, and any new fields provided are merged with the existing trace data. If the ID does not match, a new trace is created.

Parameters:

  • project_id (String)

    ID of the Cloud project where the trace data is stored.

  • traces_object (Google::Apis::CloudtraceV1::Traces) (defaults to: nil)
  • fields (String)

    Selector specifying which fields to include in a partial response.

  • quota_user (String)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:



79
80
81
82
83
84
85
86
87
88
89
# File 'generated/google/apis/cloudtrace_v1/service.rb', line 79

def patch_project_traces(project_id, traces_object = nil, fields: nil, quota_user: nil, options: nil, &block)
  command =  make_simple_command(:patch, 'v1/projects/{projectId}/traces', options)
  command.request_representation = Google::Apis::CloudtraceV1::Traces::Representation
  command.request_object = traces_object
  command.response_representation = Google::Apis::CloudtraceV1::Empty::Representation
  command.response_class = Google::Apis::CloudtraceV1::Empty
  command.params['projectId'] = project_id unless project_id.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end