google-cloud-error_reporting 0.35.1 → 0.42.1

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.
Files changed (38) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHENTICATION.md +4 -2
  3. data/CHANGELOG.md +47 -0
  4. data/CONTRIBUTING.md +4 -7
  5. data/LOGGING.md +1 -1
  6. data/OVERVIEW.md +1 -2
  7. data/TROUBLESHOOTING.md +2 -8
  8. data/lib/google-cloud-error_reporting.rb +8 -14
  9. data/lib/google/cloud/error_reporting.rb +16 -13
  10. data/lib/google/cloud/error_reporting/async_error_reporter.rb +2 -2
  11. data/lib/google/cloud/error_reporting/credentials.rb +2 -2
  12. data/lib/google/cloud/error_reporting/error_event.rb +14 -18
  13. data/lib/google/cloud/error_reporting/middleware.rb +8 -13
  14. data/lib/google/cloud/error_reporting/rails.rb +2 -2
  15. data/lib/google/cloud/error_reporting/service.rb +15 -36
  16. data/lib/google/cloud/error_reporting/version.rb +1 -1
  17. metadata +11 -72
  18. data/lib/google/cloud/error_reporting/v1beta1.rb +0 -19
  19. data/lib/google/cloud/error_reporting/v1beta1/credentials.rb +0 -41
  20. data/lib/google/cloud/error_reporting/v1beta1/doc/google/devtools/clouderrorreporting/v1beta1/common.rb +0 -158
  21. data/lib/google/cloud/error_reporting/v1beta1/doc/google/devtools/clouderrorreporting/v1beta1/error_group_service.rb +0 -41
  22. data/lib/google/cloud/error_reporting/v1beta1/doc/google/devtools/clouderrorreporting/v1beta1/error_stats_service.rb +0 -314
  23. data/lib/google/cloud/error_reporting/v1beta1/doc/google/devtools/clouderrorreporting/v1beta1/report_errors_service.rb +0 -79
  24. data/lib/google/cloud/error_reporting/v1beta1/doc/google/protobuf/duration.rb +0 -91
  25. data/lib/google/cloud/error_reporting/v1beta1/doc/google/protobuf/timestamp.rb +0 -113
  26. data/lib/google/cloud/error_reporting/v1beta1/error_group_service_client.rb +0 -285
  27. data/lib/google/cloud/error_reporting/v1beta1/error_group_service_client_config.json +0 -36
  28. data/lib/google/cloud/error_reporting/v1beta1/error_stats_service_client.rb +0 -457
  29. data/lib/google/cloud/error_reporting/v1beta1/error_stats_service_client_config.json +0 -41
  30. data/lib/google/cloud/error_reporting/v1beta1/report_errors_service_client.rb +0 -254
  31. data/lib/google/cloud/error_reporting/v1beta1/report_errors_service_client_config.json +0 -31
  32. data/lib/google/devtools/clouderrorreporting/v1beta1/common_pb.rb +0 -64
  33. data/lib/google/devtools/clouderrorreporting/v1beta1/error_group_service_pb.rb +0 -30
  34. data/lib/google/devtools/clouderrorreporting/v1beta1/error_group_service_services_pb.rb +0 -50
  35. data/lib/google/devtools/clouderrorreporting/v1beta1/error_stats_service_pb.rb +0 -116
  36. data/lib/google/devtools/clouderrorreporting/v1beta1/error_stats_service_services_pb.rb +0 -52
  37. data/lib/google/devtools/clouderrorreporting/v1beta1/report_errors_service_pb.rb +0 -38
  38. data/lib/google/devtools/clouderrorreporting/v1beta1/report_errors_service_services_pb.rb +0 -55
@@ -1,41 +0,0 @@
1
- {
2
- "interfaces": {
3
- "google.devtools.clouderrorreporting.v1beta1.ErrorStatsService": {
4
- "retry_codes": {
5
- "idempotent": [
6
- "DEADLINE_EXCEEDED",
7
- "UNAVAILABLE"
8
- ],
9
- "non_idempotent": []
10
- },
11
- "retry_params": {
12
- "default": {
13
- "initial_retry_delay_millis": 100,
14
- "retry_delay_multiplier": 1.3,
15
- "max_retry_delay_millis": 60000,
16
- "initial_rpc_timeout_millis": 20000,
17
- "rpc_timeout_multiplier": 1.0,
18
- "max_rpc_timeout_millis": 20000,
19
- "total_timeout_millis": 600000
20
- }
21
- },
22
- "methods": {
23
- "DeleteEvents": {
24
- "timeout_millis": 60000,
25
- "retry_codes_name": "idempotent",
26
- "retry_params_name": "default"
27
- },
28
- "ListGroupStats": {
29
- "timeout_millis": 60000,
30
- "retry_codes_name": "idempotent",
31
- "retry_params_name": "default"
32
- },
33
- "ListEvents": {
34
- "timeout_millis": 60000,
35
- "retry_codes_name": "idempotent",
36
- "retry_params_name": "default"
37
- }
38
- }
39
- }
40
- }
41
- }
@@ -1,254 +0,0 @@
1
- # Copyright 2020 Google LLC
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # https://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
- #
15
- # EDITING INSTRUCTIONS
16
- # This file was generated from the file
17
- # https://github.com/googleapis/googleapis/blob/master/google/devtools/clouderrorreporting/v1beta1/report_errors_service.proto,
18
- # and updates to that file get reflected here through a refresh process.
19
- # For the short term, the refresh process will only be runnable by Google
20
- # engineers.
21
-
22
-
23
- require "json"
24
- require "pathname"
25
-
26
- require "google/gax"
27
-
28
- require "google/devtools/clouderrorreporting/v1beta1/report_errors_service_pb"
29
- require "google/cloud/error_reporting/v1beta1/credentials"
30
- require "google/cloud/error_reporting/version"
31
-
32
- module Google
33
- module Cloud
34
- module ErrorReporting
35
- module V1beta1
36
- # An API for reporting error events.
37
- #
38
- # @!attribute [r] report_errors_service_stub
39
- # @return [Google::Devtools::Clouderrorreporting::V1beta1::ReportErrorsService::Stub]
40
- class ReportErrorsServiceClient
41
- # @private
42
- attr_reader :report_errors_service_stub
43
-
44
- # The default address of the service.
45
- SERVICE_ADDRESS = "clouderrorreporting.googleapis.com".freeze
46
-
47
- # The default port of the service.
48
- DEFAULT_SERVICE_PORT = 443
49
-
50
- # The default set of gRPC interceptors.
51
- GRPC_INTERCEPTORS = []
52
-
53
- DEFAULT_TIMEOUT = 30
54
-
55
- # The scopes needed to make gRPC calls to all of the methods defined in
56
- # this service.
57
- ALL_SCOPES = [
58
- "https://www.googleapis.com/auth/cloud-platform"
59
- ].freeze
60
-
61
-
62
- PROJECT_PATH_TEMPLATE = Google::Gax::PathTemplate.new(
63
- "projects/{project}"
64
- )
65
-
66
- private_constant :PROJECT_PATH_TEMPLATE
67
-
68
- # Returns a fully-qualified project resource name string.
69
- # @param project [String]
70
- # @return [String]
71
- def self.project_path project
72
- PROJECT_PATH_TEMPLATE.render(
73
- :"project" => project
74
- )
75
- end
76
-
77
- # @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
78
- # Provides the means for authenticating requests made by the client. This parameter can
79
- # be many types.
80
- # A `Google::Auth::Credentials` uses a the properties of its represented keyfile for
81
- # authenticating requests made by this client.
82
- # A `String` will be treated as the path to the keyfile to be used for the construction of
83
- # credentials for this client.
84
- # A `Hash` will be treated as the contents of a keyfile to be used for the construction of
85
- # credentials for this client.
86
- # A `GRPC::Core::Channel` will be used to make calls through.
87
- # A `GRPC::Core::ChannelCredentials` for the setting up the RPC client. The channel credentials
88
- # should already be composed with a `GRPC::Core::CallCredentials` object.
89
- # A `Proc` will be used as an updater_proc for the Grpc channel. The proc transforms the
90
- # metadata for requests, generally, to give OAuth credentials.
91
- # @param scopes [Array<String>]
92
- # The OAuth scopes for this service. This parameter is ignored if
93
- # an updater_proc is supplied.
94
- # @param client_config [Hash]
95
- # A Hash for call options for each method. See
96
- # Google::Gax#construct_settings for the structure of
97
- # this data. Falls back to the default config if not specified
98
- # or the specified config is missing data points.
99
- # @param timeout [Numeric]
100
- # The default timeout, in seconds, for calls made through this client.
101
- # @param metadata [Hash]
102
- # Default metadata to be sent with each request. This can be overridden on a per call basis.
103
- # @param service_address [String]
104
- # Override for the service hostname, or `nil` to leave as the default.
105
- # @param service_port [Integer]
106
- # Override for the service port, or `nil` to leave as the default.
107
- # @param exception_transformer [Proc]
108
- # An optional proc that intercepts any exceptions raised during an API call to inject
109
- # custom error handling.
110
- def initialize \
111
- credentials: nil,
112
- scopes: ALL_SCOPES,
113
- client_config: {},
114
- timeout: DEFAULT_TIMEOUT,
115
- metadata: nil,
116
- service_address: nil,
117
- service_port: nil,
118
- exception_transformer: nil,
119
- lib_name: nil,
120
- lib_version: ""
121
- # These require statements are intentionally placed here to initialize
122
- # the gRPC module only when it's required.
123
- # See https://github.com/googleapis/toolkit/issues/446
124
- require "google/gax/grpc"
125
- require "google/devtools/clouderrorreporting/v1beta1/report_errors_service_services_pb"
126
-
127
- credentials ||= Google::Cloud::ErrorReporting::V1beta1::Credentials.default
128
-
129
- if credentials.is_a?(String) || credentials.is_a?(Hash)
130
- updater_proc = Google::Cloud::ErrorReporting::V1beta1::Credentials.new(credentials).updater_proc
131
- end
132
- if credentials.is_a?(GRPC::Core::Channel)
133
- channel = credentials
134
- end
135
- if credentials.is_a?(GRPC::Core::ChannelCredentials)
136
- chan_creds = credentials
137
- end
138
- if credentials.is_a?(Proc)
139
- updater_proc = credentials
140
- end
141
- if credentials.is_a?(Google::Auth::Credentials)
142
- updater_proc = credentials.updater_proc
143
- end
144
-
145
- package_version = Google::Cloud::ErrorReporting::VERSION
146
-
147
- google_api_client = "gl-ruby/#{RUBY_VERSION}"
148
- google_api_client << " #{lib_name}/#{lib_version}" if lib_name
149
- google_api_client << " gapic/#{package_version} gax/#{Google::Gax::VERSION}"
150
- google_api_client << " grpc/#{GRPC::VERSION}"
151
- google_api_client.freeze
152
-
153
- headers = { :"x-goog-api-client" => google_api_client }
154
- if credentials.respond_to?(:quota_project_id) && credentials.quota_project_id
155
- headers[:"x-goog-user-project"] = credentials.quota_project_id
156
- end
157
- headers.merge!(metadata) unless metadata.nil?
158
- client_config_file = Pathname.new(__dir__).join(
159
- "report_errors_service_client_config.json"
160
- )
161
- defaults = client_config_file.open do |f|
162
- Google::Gax.construct_settings(
163
- "google.devtools.clouderrorreporting.v1beta1.ReportErrorsService",
164
- JSON.parse(f.read),
165
- client_config,
166
- Google::Gax::Grpc::STATUS_CODE_NAMES,
167
- timeout,
168
- errors: Google::Gax::Grpc::API_ERRORS,
169
- metadata: headers
170
- )
171
- end
172
-
173
- # Allow overriding the service path/port in subclasses.
174
- service_path = service_address || self.class::SERVICE_ADDRESS
175
- port = service_port || self.class::DEFAULT_SERVICE_PORT
176
- interceptors = self.class::GRPC_INTERCEPTORS
177
- @report_errors_service_stub = Google::Gax::Grpc.create_stub(
178
- service_path,
179
- port,
180
- chan_creds: chan_creds,
181
- channel: channel,
182
- updater_proc: updater_proc,
183
- scopes: scopes,
184
- interceptors: interceptors,
185
- &Google::Devtools::Clouderrorreporting::V1beta1::ReportErrorsService::Stub.method(:new)
186
- )
187
-
188
- @report_error_event = Google::Gax.create_api_call(
189
- @report_errors_service_stub.method(:report_error_event),
190
- defaults["report_error_event"],
191
- exception_transformer: exception_transformer,
192
- params_extractor: proc do |request|
193
- {'project_name' => request.project_name}
194
- end
195
- )
196
- end
197
-
198
- # Service calls
199
-
200
- # Report an individual error event.
201
- #
202
- # This endpoint accepts **either** an OAuth token,
203
- # **or** an [API key](https://support.google.com/cloud/answer/6158862)
204
- # for authentication. To use an API key, append it to the URL as the value of
205
- # a `key` parameter. For example:
206
- #
207
- # `POST
208
- # https://clouderrorreporting.googleapis.com/v1beta1/projects/example-project/events:report?key=123ABC456`
209
- #
210
- # @param project_name [String]
211
- # Required. The resource name of the Google Cloud Platform project. Written
212
- # as `projects/` plus the
213
- # [Google Cloud Platform project
214
- # ID](https://support.google.com/cloud/answer/6158840). Example:
215
- # `projects/my-project-123`.
216
- # @param event [Google::Devtools::Clouderrorreporting::V1beta1::ReportedErrorEvent | Hash]
217
- # Required. The error event to be reported.
218
- # A hash of the same form as `Google::Devtools::Clouderrorreporting::V1beta1::ReportedErrorEvent`
219
- # can also be provided.
220
- # @param options [Google::Gax::CallOptions]
221
- # Overrides the default settings for this call, e.g, timeout,
222
- # retries, etc.
223
- # @yield [result, operation] Access the result along with the RPC operation
224
- # @yieldparam result [Google::Devtools::Clouderrorreporting::V1beta1::ReportErrorEventResponse]
225
- # @yieldparam operation [GRPC::ActiveCall::Operation]
226
- # @return [Google::Devtools::Clouderrorreporting::V1beta1::ReportErrorEventResponse]
227
- # @raise [Google::Gax::GaxError] if the RPC is aborted.
228
- # @example
229
- # require "google/cloud/error_reporting"
230
- #
231
- # report_errors_client = Google::Cloud::ErrorReporting::ReportErrors.new(version: :v1beta1)
232
- # formatted_project_name = Google::Cloud::ErrorReporting::V1beta1::ReportErrorsServiceClient.project_path("[PROJECT]")
233
- #
234
- # # TODO: Initialize `event`:
235
- # event = {}
236
- # response = report_errors_client.report_error_event(formatted_project_name, event)
237
-
238
- def report_error_event \
239
- project_name,
240
- event,
241
- options: nil,
242
- &block
243
- req = {
244
- project_name: project_name,
245
- event: event
246
- }.delete_if { |_, v| v.nil? }
247
- req = Google::Gax::to_proto(req, Google::Devtools::Clouderrorreporting::V1beta1::ReportErrorEventRequest)
248
- @report_error_event.call(req, options, &block)
249
- end
250
- end
251
- end
252
- end
253
- end
254
- end
@@ -1,31 +0,0 @@
1
- {
2
- "interfaces": {
3
- "google.devtools.clouderrorreporting.v1beta1.ReportErrorsService": {
4
- "retry_codes": {
5
- "idempotent": [
6
- "DEADLINE_EXCEEDED",
7
- "UNAVAILABLE"
8
- ],
9
- "non_idempotent": []
10
- },
11
- "retry_params": {
12
- "default": {
13
- "initial_retry_delay_millis": 100,
14
- "retry_delay_multiplier": 1.3,
15
- "max_retry_delay_millis": 60000,
16
- "initial_rpc_timeout_millis": 20000,
17
- "rpc_timeout_multiplier": 1.0,
18
- "max_rpc_timeout_millis": 20000,
19
- "total_timeout_millis": 600000
20
- }
21
- },
22
- "methods": {
23
- "ReportErrorEvent": {
24
- "timeout_millis": 60000,
25
- "retry_codes_name": "non_idempotent",
26
- "retry_params_name": "default"
27
- }
28
- }
29
- }
30
- }
31
- }
@@ -1,64 +0,0 @@
1
- # Generated by the protocol buffer compiler. DO NOT EDIT!
2
- # source: google/devtools/clouderrorreporting/v1beta1/common.proto
3
-
4
-
5
- require 'google/protobuf'
6
-
7
- require 'google/api/annotations_pb'
8
- require 'google/api/resource_pb'
9
- require 'google/protobuf/timestamp_pb'
10
- Google::Protobuf::DescriptorPool.generated_pool.build do
11
- add_message "google.devtools.clouderrorreporting.v1beta1.ErrorGroup" do
12
- optional :name, :string, 1
13
- optional :group_id, :string, 2
14
- repeated :tracking_issues, :message, 3, "google.devtools.clouderrorreporting.v1beta1.TrackingIssue"
15
- end
16
- add_message "google.devtools.clouderrorreporting.v1beta1.TrackingIssue" do
17
- optional :url, :string, 1
18
- end
19
- add_message "google.devtools.clouderrorreporting.v1beta1.ErrorEvent" do
20
- optional :event_time, :message, 1, "google.protobuf.Timestamp"
21
- optional :service_context, :message, 2, "google.devtools.clouderrorreporting.v1beta1.ServiceContext"
22
- optional :message, :string, 3
23
- optional :context, :message, 5, "google.devtools.clouderrorreporting.v1beta1.ErrorContext"
24
- end
25
- add_message "google.devtools.clouderrorreporting.v1beta1.ServiceContext" do
26
- optional :service, :string, 2
27
- optional :version, :string, 3
28
- optional :resource_type, :string, 4
29
- end
30
- add_message "google.devtools.clouderrorreporting.v1beta1.ErrorContext" do
31
- optional :http_request, :message, 1, "google.devtools.clouderrorreporting.v1beta1.HttpRequestContext"
32
- optional :user, :string, 2
33
- optional :report_location, :message, 3, "google.devtools.clouderrorreporting.v1beta1.SourceLocation"
34
- end
35
- add_message "google.devtools.clouderrorreporting.v1beta1.HttpRequestContext" do
36
- optional :method, :string, 1
37
- optional :url, :string, 2
38
- optional :user_agent, :string, 3
39
- optional :referrer, :string, 4
40
- optional :response_status_code, :int32, 5
41
- optional :remote_ip, :string, 6
42
- end
43
- add_message "google.devtools.clouderrorreporting.v1beta1.SourceLocation" do
44
- optional :file_path, :string, 1
45
- optional :line_number, :int32, 2
46
- optional :function_name, :string, 4
47
- end
48
- end
49
-
50
- module Google
51
- module Devtools
52
- module Clouderrorreporting
53
- module V1beta1
54
- ErrorGroup = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.devtools.clouderrorreporting.v1beta1.ErrorGroup").msgclass
55
- TrackingIssue = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.devtools.clouderrorreporting.v1beta1.TrackingIssue").msgclass
56
- ErrorEvent = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.devtools.clouderrorreporting.v1beta1.ErrorEvent").msgclass
57
- ServiceContext = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.devtools.clouderrorreporting.v1beta1.ServiceContext").msgclass
58
- ErrorContext = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.devtools.clouderrorreporting.v1beta1.ErrorContext").msgclass
59
- HttpRequestContext = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.devtools.clouderrorreporting.v1beta1.HttpRequestContext").msgclass
60
- SourceLocation = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.devtools.clouderrorreporting.v1beta1.SourceLocation").msgclass
61
- end
62
- end
63
- end
64
- end
@@ -1,30 +0,0 @@
1
- # Generated by the protocol buffer compiler. DO NOT EDIT!
2
- # source: google/devtools/clouderrorreporting/v1beta1/error_group_service.proto
3
-
4
-
5
- require 'google/protobuf'
6
-
7
- require 'google/api/annotations_pb'
8
- require 'google/api/client_pb'
9
- require 'google/api/field_behavior_pb'
10
- require 'google/api/resource_pb'
11
- require 'google/devtools/clouderrorreporting/v1beta1/common_pb'
12
- Google::Protobuf::DescriptorPool.generated_pool.build do
13
- add_message "google.devtools.clouderrorreporting.v1beta1.GetGroupRequest" do
14
- optional :group_name, :string, 1
15
- end
16
- add_message "google.devtools.clouderrorreporting.v1beta1.UpdateGroupRequest" do
17
- optional :group, :message, 1, "google.devtools.clouderrorreporting.v1beta1.ErrorGroup"
18
- end
19
- end
20
-
21
- module Google
22
- module Devtools
23
- module Clouderrorreporting
24
- module V1beta1
25
- GetGroupRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.devtools.clouderrorreporting.v1beta1.GetGroupRequest").msgclass
26
- UpdateGroupRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.devtools.clouderrorreporting.v1beta1.UpdateGroupRequest").msgclass
27
- end
28
- end
29
- end
30
- end
@@ -1,50 +0,0 @@
1
- # Generated by the protocol buffer compiler. DO NOT EDIT!
2
- # Source: google/devtools/clouderrorreporting/v1beta1/error_group_service.proto for package 'google.devtools.clouderrorreporting.v1beta1'
3
- # Original file comments:
4
- # Copyright 2019 Google LLC.
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
18
- #
19
-
20
-
21
- require 'grpc'
22
- require 'google/devtools/clouderrorreporting/v1beta1/error_group_service_pb'
23
-
24
- module Google
25
- module Devtools
26
- module Clouderrorreporting
27
- module V1beta1
28
- module ErrorGroupService
29
- # Service for retrieving and updating individual error groups.
30
- class Service
31
-
32
- include GRPC::GenericService
33
-
34
- self.marshal_class_method = :encode
35
- self.unmarshal_class_method = :decode
36
- self.service_name = 'google.devtools.clouderrorreporting.v1beta1.ErrorGroupService'
37
-
38
- # Get the specified group.
39
- rpc :GetGroup, GetGroupRequest, ErrorGroup
40
- # Replace the data for the specified group.
41
- # Fails if the group does not exist.
42
- rpc :UpdateGroup, UpdateGroupRequest, ErrorGroup
43
- end
44
-
45
- Stub = Service.rpc_stub_class
46
- end
47
- end
48
- end
49
- end
50
- end