google-cloud-debugger 0.28.2 → 0.29.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 +5 -5
- data/README.md +33 -33
- data/lib/google-cloud-debugger.rb +12 -9
- data/lib/google/cloud/debugger.rb +23 -17
- data/lib/google/cloud/debugger/credentials.rb +32 -15
- data/lib/google/cloud/debugger/debuggee.rb +16 -1
- data/lib/google/cloud/debugger/middleware.rb +1 -1
- data/lib/google/cloud/debugger/project.rb +6 -5
- data/lib/google/cloud/debugger/rails.rb +9 -3
- data/lib/google/cloud/debugger/service.rb +4 -24
- data/lib/google/cloud/debugger/v2.rb +182 -0
- data/lib/google/cloud/debugger/v2/controller2_client.rb +85 -58
- data/lib/google/cloud/debugger/v2/debugger2_client.rb +81 -56
- data/lib/google/cloud/debugger/v2/doc/google/devtools/clouddebugger/v2/data.rb +24 -27
- data/lib/google/cloud/debugger/v2/doc/google/devtools/clouddebugger/v2/debugger.rb +23 -11
- data/lib/google/cloud/debugger/v2/doc/google/protobuf/timestamp.rb +26 -1
- data/lib/google/cloud/debugger/v2/doc/overview.rb +54 -0
- data/lib/google/cloud/debugger/version.rb +1 -1
- data/lib/google/devtools/clouddebugger/v2/controller_services_pb.rb +10 -11
- data/lib/google/devtools/clouddebugger/v2/debugger_services_pb.rb +4 -4
- metadata +8 -7
@@ -25,37 +25,22 @@ module Google
|
|
25
25
|
# @private Represents the gRPC Debugger service, including all the API
|
26
26
|
# methods.
|
27
27
|
class Service
|
28
|
-
attr_accessor :project, :credentials, :
|
28
|
+
attr_accessor :project, :credentials, :timeout, :client_config
|
29
29
|
|
30
30
|
##
|
31
31
|
# Creates a new Service instance.
|
32
|
-
def initialize project, credentials,
|
33
|
-
client_config: nil
|
32
|
+
def initialize project, credentials, timeout: nil, client_config: nil
|
34
33
|
@project = project
|
35
34
|
@credentials = credentials
|
36
|
-
@host = host || V2::Controller2Client::SERVICE_ADDRESS
|
37
35
|
@timeout = timeout
|
38
36
|
@client_config = client_config || {}
|
39
37
|
end
|
40
38
|
|
41
|
-
def channel
|
42
|
-
require "grpc"
|
43
|
-
GRPC::Core::Channel.new host, nil, chan_creds
|
44
|
-
end
|
45
|
-
|
46
|
-
def chan_creds
|
47
|
-
return credentials if insecure?
|
48
|
-
require "grpc"
|
49
|
-
GRPC::Core::ChannelCredentials.new.compose \
|
50
|
-
GRPC::Core::CallCredentials.new credentials.client.updater_proc
|
51
|
-
end
|
52
|
-
|
53
39
|
def cloud_debugger
|
54
40
|
return mocked_debugger if mocked_debugger
|
55
41
|
@debugger ||=
|
56
42
|
V2::Controller2Client.new(
|
57
|
-
|
58
|
-
channel: channel,
|
43
|
+
credentials: credentials,
|
59
44
|
timeout: timeout,
|
60
45
|
client_config: client_config,
|
61
46
|
lib_name: "gccl",
|
@@ -67,8 +52,7 @@ module Google
|
|
67
52
|
return mocked_transmitter if mocked_transmitter
|
68
53
|
@transmitter ||=
|
69
54
|
V2::Controller2Client.new(
|
70
|
-
|
71
|
-
channel: channel,
|
55
|
+
credentials: credentials,
|
72
56
|
timeout: timeout,
|
73
57
|
client_config: client_config,
|
74
58
|
lib_name: "gccl",
|
@@ -76,10 +60,6 @@ module Google
|
|
76
60
|
end
|
77
61
|
attr_accessor :mocked_transmitter
|
78
62
|
|
79
|
-
def insecure?
|
80
|
-
credentials == :this_channel_is_insecure
|
81
|
-
end
|
82
|
-
|
83
63
|
def register_debuggee debuggee_grpc
|
84
64
|
execute do
|
85
65
|
cloud_debugger.register_debuggee debuggee_grpc,
|
@@ -1,4 +1,5 @@
|
|
1
1
|
# Copyright 2017, Google Inc. All rights reserved.
|
2
|
+
#
|
2
3
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
3
4
|
# you may not use this file except in compliance with the License.
|
4
5
|
# You may obtain a copy of the License at
|
@@ -13,3 +14,184 @@
|
|
13
14
|
|
14
15
|
require "google/cloud/debugger/v2/debugger2_client"
|
15
16
|
require "google/cloud/debugger/v2/controller2_client"
|
17
|
+
|
18
|
+
module Google
|
19
|
+
module Cloud
|
20
|
+
# rubocop:disable LineLength
|
21
|
+
|
22
|
+
##
|
23
|
+
# # Ruby Client for Stackdriver Debugger API ([Alpha](https://github.com/GoogleCloudPlatform/google-cloud-ruby#versioning))
|
24
|
+
#
|
25
|
+
# [Stackdriver Debugger API][Product Documentation]:
|
26
|
+
# Examines the call stack and variables of a running application
|
27
|
+
# without stopping or slowing it down.
|
28
|
+
# - [Product Documentation][]
|
29
|
+
#
|
30
|
+
# ## Quick Start
|
31
|
+
# In order to use this library, you first need to go through the following
|
32
|
+
# steps:
|
33
|
+
#
|
34
|
+
# 1. [Select or create a Cloud Platform project.](https://console.cloud.google.com/project)
|
35
|
+
# 2. [Enable the Stackdriver Debugger API.](https://console.cloud.google.com/apis/api/debugger)
|
36
|
+
# 3. [Setup Authentication.](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/google-cloud/master/guides/authentication)
|
37
|
+
#
|
38
|
+
# ### Next Steps
|
39
|
+
# - Read the [Stackdriver Debugger API Product documentation][Product Documentation]
|
40
|
+
# to learn more about the product and see How-to Guides.
|
41
|
+
# - View this [repository's main README](https://github.com/GoogleCloudPlatform/google-cloud-ruby/blob/master/README.md)
|
42
|
+
# to see the full list of Cloud APIs that we cover.
|
43
|
+
#
|
44
|
+
# [Product Documentation]: https://cloud.google.com/debugger
|
45
|
+
#
|
46
|
+
#
|
47
|
+
module Debugger
|
48
|
+
module V2
|
49
|
+
# rubocop:enable LineLength
|
50
|
+
|
51
|
+
module Debugger2
|
52
|
+
##
|
53
|
+
# The Debugger service provides the API that allows users to collect run-time
|
54
|
+
# information from a running application, without stopping or slowing it down
|
55
|
+
# and without modifying its state. An application may include one or
|
56
|
+
# more replicated processes performing the same work.
|
57
|
+
#
|
58
|
+
# A debugged application is represented using the Debuggee concept. The
|
59
|
+
# Debugger service provides a way to query for available debuggees, but does
|
60
|
+
# not provide a way to create one. A debuggee is created using the Controller
|
61
|
+
# service, usually by running a debugger agent with the application.
|
62
|
+
#
|
63
|
+
# The Debugger service enables the client to set one or more Breakpoints on a
|
64
|
+
# Debuggee and collect the results of the set Breakpoints.
|
65
|
+
#
|
66
|
+
# @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
|
67
|
+
# Provides the means for authenticating requests made by the client. This parameter can
|
68
|
+
# be many types.
|
69
|
+
# A `Google::Auth::Credentials` uses a the properties of its represented keyfile for
|
70
|
+
# authenticating requests made by this client.
|
71
|
+
# A `String` will be treated as the path to the keyfile to be used for the construction of
|
72
|
+
# credentials for this client.
|
73
|
+
# A `Hash` will be treated as the contents of a keyfile to be used for the construction of
|
74
|
+
# credentials for this client.
|
75
|
+
# A `GRPC::Core::Channel` will be used to make calls through.
|
76
|
+
# A `GRPC::Core::ChannelCredentials` for the setting up the RPC client. The channel credentials
|
77
|
+
# should already be composed with a `GRPC::Core::CallCredentials` object.
|
78
|
+
# A `Proc` will be used as an updater_proc for the Grpc channel. The proc transforms the
|
79
|
+
# metadata for requests, generally, to give OAuth credentials.
|
80
|
+
# @param scopes [Array<String>]
|
81
|
+
# The OAuth scopes for this service. This parameter is ignored if
|
82
|
+
# an updater_proc is supplied.
|
83
|
+
# @param client_config [Hash]
|
84
|
+
# A Hash for call options for each method. See
|
85
|
+
# Google::Gax#construct_settings for the structure of
|
86
|
+
# this data. Falls back to the default config if not specified
|
87
|
+
# or the specified config is missing data points.
|
88
|
+
# @param timeout [Numeric]
|
89
|
+
# The default timeout, in seconds, for calls made through this client.
|
90
|
+
def self.new \
|
91
|
+
service_path: nil,
|
92
|
+
port: nil,
|
93
|
+
channel: nil,
|
94
|
+
chan_creds: nil,
|
95
|
+
updater_proc: nil,
|
96
|
+
credentials: nil,
|
97
|
+
scopes: nil,
|
98
|
+
client_config: nil,
|
99
|
+
timeout: nil,
|
100
|
+
lib_name: nil,
|
101
|
+
lib_version: nil
|
102
|
+
kwargs = {
|
103
|
+
service_path: service_path,
|
104
|
+
port: port,
|
105
|
+
channel: channel,
|
106
|
+
chan_creds: chan_creds,
|
107
|
+
updater_proc: updater_proc,
|
108
|
+
credentials: credentials,
|
109
|
+
scopes: scopes,
|
110
|
+
client_config: client_config,
|
111
|
+
timeout: timeout,
|
112
|
+
lib_name: lib_name,
|
113
|
+
lib_version: lib_version
|
114
|
+
}.select { |_, v| v != nil }
|
115
|
+
Google::Cloud::Debugger::V2::Debugger2Client.new(**kwargs)
|
116
|
+
end
|
117
|
+
end
|
118
|
+
|
119
|
+
module Controller2
|
120
|
+
##
|
121
|
+
# The Controller service provides the API for orchestrating a collection of
|
122
|
+
# debugger agents to perform debugging tasks. These agents are each attached
|
123
|
+
# to a process of an application which may include one or more replicas.
|
124
|
+
#
|
125
|
+
# The debugger agents register with the Controller to identify the application
|
126
|
+
# being debugged, the Debuggee. All agents that register with the same data,
|
127
|
+
# represent the same Debuggee, and are assigned the same +debuggee_id+.
|
128
|
+
#
|
129
|
+
# The debugger agents call the Controller to retrieve the list of active
|
130
|
+
# Breakpoints. Agents with the same +debuggee_id+ get the same breakpoints
|
131
|
+
# list. An agent that can fulfill the breakpoint request updates the
|
132
|
+
# Controller with the breakpoint result. The controller selects the first
|
133
|
+
# result received and discards the rest of the results.
|
134
|
+
# Agents that poll again for active breakpoints will no longer have
|
135
|
+
# the completed breakpoint in the list and should remove that breakpoint from
|
136
|
+
# their attached process.
|
137
|
+
#
|
138
|
+
# The Controller service does not provide a way to retrieve the results of
|
139
|
+
# a completed breakpoint. This functionality is available using the Debugger
|
140
|
+
# service.
|
141
|
+
#
|
142
|
+
# @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
|
143
|
+
# Provides the means for authenticating requests made by the client. This parameter can
|
144
|
+
# be many types.
|
145
|
+
# A `Google::Auth::Credentials` uses a the properties of its represented keyfile for
|
146
|
+
# authenticating requests made by this client.
|
147
|
+
# A `String` will be treated as the path to the keyfile to be used for the construction of
|
148
|
+
# credentials for this client.
|
149
|
+
# A `Hash` will be treated as the contents of a keyfile to be used for the construction of
|
150
|
+
# credentials for this client.
|
151
|
+
# A `GRPC::Core::Channel` will be used to make calls through.
|
152
|
+
# A `GRPC::Core::ChannelCredentials` for the setting up the RPC client. The channel credentials
|
153
|
+
# should already be composed with a `GRPC::Core::CallCredentials` object.
|
154
|
+
# A `Proc` will be used as an updater_proc for the Grpc channel. The proc transforms the
|
155
|
+
# metadata for requests, generally, to give OAuth credentials.
|
156
|
+
# @param scopes [Array<String>]
|
157
|
+
# The OAuth scopes for this service. This parameter is ignored if
|
158
|
+
# an updater_proc is supplied.
|
159
|
+
# @param client_config [Hash]
|
160
|
+
# A Hash for call options for each method. See
|
161
|
+
# Google::Gax#construct_settings for the structure of
|
162
|
+
# this data. Falls back to the default config if not specified
|
163
|
+
# or the specified config is missing data points.
|
164
|
+
# @param timeout [Numeric]
|
165
|
+
# The default timeout, in seconds, for calls made through this client.
|
166
|
+
def self.new \
|
167
|
+
service_path: nil,
|
168
|
+
port: nil,
|
169
|
+
channel: nil,
|
170
|
+
chan_creds: nil,
|
171
|
+
updater_proc: nil,
|
172
|
+
credentials: nil,
|
173
|
+
scopes: nil,
|
174
|
+
client_config: nil,
|
175
|
+
timeout: nil,
|
176
|
+
lib_name: nil,
|
177
|
+
lib_version: nil
|
178
|
+
kwargs = {
|
179
|
+
service_path: service_path,
|
180
|
+
port: port,
|
181
|
+
channel: channel,
|
182
|
+
chan_creds: chan_creds,
|
183
|
+
updater_proc: updater_proc,
|
184
|
+
credentials: credentials,
|
185
|
+
scopes: scopes,
|
186
|
+
client_config: client_config,
|
187
|
+
timeout: timeout,
|
188
|
+
lib_name: lib_name,
|
189
|
+
lib_version: lib_version
|
190
|
+
}.select { |_, v| v != nil }
|
191
|
+
Google::Cloud::Debugger::V2::Controller2Client.new(**kwargs)
|
192
|
+
end
|
193
|
+
end
|
194
|
+
end
|
195
|
+
end
|
196
|
+
end
|
197
|
+
end
|
@@ -28,6 +28,7 @@ require "pathname"
|
|
28
28
|
require "google/gax"
|
29
29
|
|
30
30
|
require "google/devtools/clouddebugger/v2/controller_pb"
|
31
|
+
require "google/cloud/debugger/credentials"
|
31
32
|
|
32
33
|
module Google
|
33
34
|
module Cloud
|
@@ -74,21 +75,24 @@ module Google
|
|
74
75
|
"https://www.googleapis.com/auth/cloud_debugger"
|
75
76
|
].freeze
|
76
77
|
|
77
|
-
# @param
|
78
|
-
#
|
79
|
-
#
|
80
|
-
#
|
81
|
-
#
|
82
|
-
# A
|
83
|
-
#
|
84
|
-
# A
|
85
|
-
#
|
86
|
-
# A
|
87
|
-
#
|
78
|
+
# @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
|
79
|
+
# Provides the means for authenticating requests made by the client. This parameter can
|
80
|
+
# be many types.
|
81
|
+
# A `Google::Auth::Credentials` uses a the properties of its represented keyfile for
|
82
|
+
# authenticating requests made by this client.
|
83
|
+
# A `String` will be treated as the path to the keyfile to be used for the construction of
|
84
|
+
# credentials for this client.
|
85
|
+
# A `Hash` will be treated as the contents of a keyfile to be used for the construction of
|
86
|
+
# credentials for this client.
|
87
|
+
# A `GRPC::Core::Channel` will be used to make calls through.
|
88
|
+
# A `GRPC::Core::ChannelCredentials` for the setting up the RPC client. The channel credentials
|
89
|
+
# should already be composed with a `GRPC::Core::CallCredentials` object.
|
90
|
+
# A `Proc` will be used as an updater_proc for the Grpc channel. The proc transforms the
|
91
|
+
# metadata for requests, generally, to give OAuth credentials.
|
88
92
|
# @param scopes [Array<String>]
|
89
93
|
# The OAuth scopes for this service. This parameter is ignored if
|
90
94
|
# an updater_proc is supplied.
|
91
|
-
# @param client_config[Hash]
|
95
|
+
# @param client_config [Hash]
|
92
96
|
# A Hash for call options for each method. See
|
93
97
|
# Google::Gax#construct_settings for the structure of
|
94
98
|
# this data. Falls back to the default config if not specified
|
@@ -101,11 +105,10 @@ module Google
|
|
101
105
|
channel: nil,
|
102
106
|
chan_creds: nil,
|
103
107
|
updater_proc: nil,
|
108
|
+
credentials: nil,
|
104
109
|
scopes: ALL_SCOPES,
|
105
110
|
client_config: {},
|
106
111
|
timeout: DEFAULT_TIMEOUT,
|
107
|
-
app_name: nil,
|
108
|
-
app_version: nil,
|
109
112
|
lib_name: nil,
|
110
113
|
lib_version: ""
|
111
114
|
# These require statements are intentionally placed here to initialize
|
@@ -114,14 +117,38 @@ module Google
|
|
114
117
|
require "google/gax/grpc"
|
115
118
|
require "google/devtools/clouddebugger/v2/controller_services_pb"
|
116
119
|
|
120
|
+
if channel || chan_creds || updater_proc
|
121
|
+
warn "The `channel`, `chan_creds`, and `updater_proc` parameters will be removed " \
|
122
|
+
"on 2017/09/08"
|
123
|
+
credentials ||= channel
|
124
|
+
credentials ||= chan_creds
|
125
|
+
credentials ||= updater_proc
|
126
|
+
end
|
127
|
+
if service_path != SERVICE_ADDRESS || port != DEFAULT_SERVICE_PORT
|
128
|
+
warn "`service_path` and `port` parameters are deprecated and will be removed"
|
129
|
+
end
|
130
|
+
|
131
|
+
credentials ||= Google::Cloud::Debugger::Credentials.default
|
117
132
|
|
118
|
-
if
|
119
|
-
|
133
|
+
if credentials.is_a?(String) || credentials.is_a?(Hash)
|
134
|
+
updater_proc = Google::Cloud::Debugger::Credentials.new(credentials).updater_proc
|
135
|
+
end
|
136
|
+
if credentials.is_a?(GRPC::Core::Channel)
|
137
|
+
channel = credentials
|
138
|
+
end
|
139
|
+
if credentials.is_a?(GRPC::Core::ChannelCredentials)
|
140
|
+
chan_creds = credentials
|
141
|
+
end
|
142
|
+
if credentials.is_a?(Proc)
|
143
|
+
updater_proc = credentials
|
144
|
+
end
|
145
|
+
if credentials.is_a?(Google::Auth::Credentials)
|
146
|
+
updater_proc = credentials.updater_proc
|
120
147
|
end
|
121
148
|
|
122
149
|
google_api_client = "gl-ruby/#{RUBY_VERSION}"
|
123
150
|
google_api_client << " #{lib_name}/#{lib_version}" if lib_name
|
124
|
-
google_api_client << " gapic/0.
|
151
|
+
google_api_client << " gapic/0.1.0 gax/#{Google::Gax::VERSION}"
|
125
152
|
google_api_client << " grpc/#{GRPC::VERSION}"
|
126
153
|
google_api_client.freeze
|
127
154
|
|
@@ -168,19 +195,21 @@ module Google
|
|
168
195
|
|
169
196
|
# Registers the debuggee with the controller service.
|
170
197
|
#
|
171
|
-
# All agents attached to the same application
|
172
|
-
# the same request content to get back the same stable +debuggee_id+.
|
173
|
-
# should call this method again whenever +google.rpc.Code.NOT_FOUND+
|
174
|
-
# returned from any controller method.
|
198
|
+
# All agents attached to the same application must call this method with
|
199
|
+
# exactly the same request content to get back the same stable +debuggee_id+.
|
200
|
+
# Agents should call this method again whenever +google.rpc.Code.NOT_FOUND+
|
201
|
+
# is returned from any controller method.
|
175
202
|
#
|
176
|
-
# This allows the controller service to disable
|
177
|
-
# data loss
|
178
|
-
#
|
203
|
+
# This protocol allows the controller service to disable debuggees, recover
|
204
|
+
# from data loss, or change the +debuggee_id+ format. Agents must handle
|
205
|
+
# +debuggee_id+ value changing upon re-registration.
|
179
206
|
#
|
180
|
-
# @param debuggee [Google::Devtools::Clouddebugger::V2::Debuggee]
|
207
|
+
# @param debuggee [Google::Devtools::Clouddebugger::V2::Debuggee | Hash]
|
181
208
|
# Debuggee information to register.
|
182
209
|
# The fields +project+, +uniquifier+, +description+ and +agent_version+
|
183
210
|
# of the debuggee must be set.
|
211
|
+
# A hash of the same form as `Google::Devtools::Clouddebugger::V2::Debuggee`
|
212
|
+
# can also be provided.
|
184
213
|
# @param options [Google::Gax::CallOptions]
|
185
214
|
# Overrides the default settings for this call, e.g, timeout,
|
186
215
|
# retries, etc.
|
@@ -189,25 +218,23 @@ module Google
|
|
189
218
|
# @example
|
190
219
|
# require "google/cloud/debugger/v2"
|
191
220
|
#
|
192
|
-
#
|
193
|
-
#
|
194
|
-
#
|
195
|
-
# controller2_client = Controller2Client.new
|
196
|
-
# debuggee = Debuggee.new
|
221
|
+
# controller2_client = Google::Cloud::Debugger::V2::Controller2.new
|
222
|
+
# debuggee = {}
|
197
223
|
# response = controller2_client.register_debuggee(debuggee)
|
198
224
|
|
199
225
|
def register_debuggee \
|
200
226
|
debuggee,
|
201
227
|
options: nil
|
202
|
-
req =
|
228
|
+
req = {
|
203
229
|
debuggee: debuggee
|
204
|
-
}.delete_if { |_, v| v.nil? }
|
230
|
+
}.delete_if { |_, v| v.nil? }
|
231
|
+
req = Google::Gax::to_proto(req, Google::Devtools::Clouddebugger::V2::RegisterDebuggeeRequest)
|
205
232
|
@register_debuggee.call(req, options)
|
206
233
|
end
|
207
234
|
|
208
235
|
# Returns the list of all active breakpoints for the debuggee.
|
209
236
|
#
|
210
|
-
# The breakpoint specification (location
|
237
|
+
# The breakpoint specification (+location+, +condition+, and +expressions+
|
211
238
|
# fields) is semantically immutable, although the field values may
|
212
239
|
# change. For example, an agent may update the location line number
|
213
240
|
# to reflect the actual line where the breakpoint was set, but this
|
@@ -222,16 +249,17 @@ module Google
|
|
222
249
|
# @param debuggee_id [String]
|
223
250
|
# Identifies the debuggee.
|
224
251
|
# @param wait_token [String]
|
225
|
-
# A
|
226
|
-
# of active breakpoints has changed, or a server
|
227
|
-
# expired.
|
252
|
+
# A token that, if specified, blocks the method call until the list
|
253
|
+
# of active breakpoints has changed, or a server-selected timeout has
|
254
|
+
# expired. The value should be set from the +next_wait_token+ field in
|
255
|
+
# the last response. The initial value should be set to +"init"+.
|
228
256
|
# @param success_on_timeout [true, false]
|
229
|
-
# If set to +true
|
230
|
-
# +wait_expired+ response field to +true+ when the server-selected
|
231
|
-
# has expired
|
257
|
+
# If set to +true+ (recommended), returns +google.rpc.Code.OK+ status and
|
258
|
+
# sets the +wait_expired+ response field to +true+ when the server-selected
|
259
|
+
# timeout has expired.
|
232
260
|
#
|
233
|
-
# If set to +false
|
234
|
-
# server-selected timeout has expired
|
261
|
+
# If set to +false+ (deprecated), returns +google.rpc.Code.ABORTED+ status
|
262
|
+
# when the server-selected timeout has expired.
|
235
263
|
# @param options [Google::Gax::CallOptions]
|
236
264
|
# Overrides the default settings for this call, e.g, timeout,
|
237
265
|
# retries, etc.
|
@@ -240,9 +268,7 @@ module Google
|
|
240
268
|
# @example
|
241
269
|
# require "google/cloud/debugger/v2"
|
242
270
|
#
|
243
|
-
#
|
244
|
-
#
|
245
|
-
# controller2_client = Controller2Client.new
|
271
|
+
# controller2_client = Google::Cloud::Debugger::V2::Controller2.new
|
246
272
|
# debuggee_id = ''
|
247
273
|
# response = controller2_client.list_active_breakpoints(debuggee_id)
|
248
274
|
|
@@ -251,29 +277,32 @@ module Google
|
|
251
277
|
wait_token: nil,
|
252
278
|
success_on_timeout: nil,
|
253
279
|
options: nil
|
254
|
-
req =
|
280
|
+
req = {
|
255
281
|
debuggee_id: debuggee_id,
|
256
282
|
wait_token: wait_token,
|
257
283
|
success_on_timeout: success_on_timeout
|
258
|
-
}.delete_if { |_, v| v.nil? }
|
284
|
+
}.delete_if { |_, v| v.nil? }
|
285
|
+
req = Google::Gax::to_proto(req, Google::Devtools::Clouddebugger::V2::ListActiveBreakpointsRequest)
|
259
286
|
@list_active_breakpoints.call(req, options)
|
260
287
|
end
|
261
288
|
|
262
289
|
# Updates the breakpoint state or mutable fields.
|
263
|
-
# The entire Breakpoint message must be sent back to the controller
|
264
|
-
# service.
|
290
|
+
# The entire Breakpoint message must be sent back to the controller service.
|
265
291
|
#
|
266
292
|
# Updates to active breakpoint fields are only allowed if the new value
|
267
293
|
# does not change the breakpoint specification. Updates to the +location+,
|
268
|
-
# +condition+ and +
|
294
|
+
# +condition+ and +expressions+ fields should not alter the breakpoint
|
269
295
|
# semantics. These may only make changes such as canonicalizing a value
|
270
296
|
# or snapping the location to the correct line of code.
|
271
297
|
#
|
272
298
|
# @param debuggee_id [String]
|
273
299
|
# Identifies the debuggee being debugged.
|
274
|
-
# @param breakpoint [Google::Devtools::Clouddebugger::V2::Breakpoint]
|
300
|
+
# @param breakpoint [Google::Devtools::Clouddebugger::V2::Breakpoint | Hash]
|
275
301
|
# Updated breakpoint information.
|
276
|
-
# The field
|
302
|
+
# The field +id+ must be set.
|
303
|
+
# The agent must echo all Breakpoint specification fields in the update.
|
304
|
+
# A hash of the same form as `Google::Devtools::Clouddebugger::V2::Breakpoint`
|
305
|
+
# can also be provided.
|
277
306
|
# @param options [Google::Gax::CallOptions]
|
278
307
|
# Overrides the default settings for this call, e.g, timeout,
|
279
308
|
# retries, etc.
|
@@ -282,22 +311,20 @@ module Google
|
|
282
311
|
# @example
|
283
312
|
# require "google/cloud/debugger/v2"
|
284
313
|
#
|
285
|
-
#
|
286
|
-
# Controller2Client = Google::Cloud::Debugger::V2::Controller2Client
|
287
|
-
#
|
288
|
-
# controller2_client = Controller2Client.new
|
314
|
+
# controller2_client = Google::Cloud::Debugger::V2::Controller2.new
|
289
315
|
# debuggee_id = ''
|
290
|
-
# breakpoint =
|
316
|
+
# breakpoint = {}
|
291
317
|
# response = controller2_client.update_active_breakpoint(debuggee_id, breakpoint)
|
292
318
|
|
293
319
|
def update_active_breakpoint \
|
294
320
|
debuggee_id,
|
295
321
|
breakpoint,
|
296
322
|
options: nil
|
297
|
-
req =
|
323
|
+
req = {
|
298
324
|
debuggee_id: debuggee_id,
|
299
325
|
breakpoint: breakpoint
|
300
|
-
}.delete_if { |_, v| v.nil? }
|
326
|
+
}.delete_if { |_, v| v.nil? }
|
327
|
+
req = Google::Gax::to_proto(req, Google::Devtools::Clouddebugger::V2::UpdateActiveBreakpointRequest)
|
301
328
|
@update_active_breakpoint.call(req, options)
|
302
329
|
end
|
303
330
|
end
|