google-cloud-error_reporting 0.21.0 → 0.21.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.yardopts +6 -0
- data/LICENSE +201 -0
- data/lib/google/cloud/error_reporting/middleware.rb +5 -3
- data/lib/google/cloud/error_reporting/rails.rb +3 -2
- data/lib/google/cloud/error_reporting/v1beta1/doc/google/devtools/clouderrorreporting/v1beta1/common.rb +150 -0
- data/lib/google/cloud/error_reporting/v1beta1/doc/google/devtools/clouderrorreporting/v1beta1/error_stats_service.rb +293 -0
- data/lib/google/cloud/error_reporting/v1beta1/doc/google/devtools/clouderrorreporting/v1beta1/report_errors_service.rb +57 -0
- data/lib/google/cloud/error_reporting/v1beta1/doc/google/protobuf/duration.rb +71 -0
- data/lib/google/cloud/error_reporting/v1beta1/doc/google/protobuf/timestamp.rb +83 -0
- data/lib/google/cloud/error_reporting/v1beta1/error_group_service_api.rb +4 -4
- data/lib/google/cloud/error_reporting/v1beta1/error_stats_service_api.rb +18 -18
- data/lib/google/cloud/error_reporting/v1beta1/report_errors_service_api.rb +2 -2
- metadata +25 -46
- data/Rakefile +0 -72
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 23d030a67588f52f06b1d877120e759bd6e0b3b3
|
4
|
+
data.tar.gz: 250fdffd5838f40378b8d4c07149c32741aeaa91
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4a56b17f1ca7cf6260576cb1df8f0ad4c08e7a7ee6033cc31caabf551844ee0969f1eb474d64c552cc849c353b1c051b7a2d60fd8566a35ffb613eb41720078d
|
7
|
+
data.tar.gz: 7c5b2fff470acb467c80b8f6c9e2aa773ad7cb1bd794c72fc4e80bde0c1c032fbbca9d0937b47cc2c404ed2c48fce73cad88d591ededb6f701376a831d8baa0e
|
data/.yardopts
ADDED
data/LICENSE
ADDED
@@ -0,0 +1,201 @@
|
|
1
|
+
Apache License
|
2
|
+
Version 2.0, January 2004
|
3
|
+
http://www.apache.org/licenses/
|
4
|
+
|
5
|
+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
6
|
+
|
7
|
+
1. Definitions.
|
8
|
+
|
9
|
+
"License" shall mean the terms and conditions for use, reproduction,
|
10
|
+
and distribution as defined by Sections 1 through 9 of this document.
|
11
|
+
|
12
|
+
"Licensor" shall mean the copyright owner or entity authorized by
|
13
|
+
the copyright owner that is granting the License.
|
14
|
+
|
15
|
+
"Legal Entity" shall mean the union of the acting entity and all
|
16
|
+
other entities that control, are controlled by, or are under common
|
17
|
+
control with that entity. For the purposes of this definition,
|
18
|
+
"control" means (i) the power, direct or indirect, to cause the
|
19
|
+
direction or management of such entity, whether by contract or
|
20
|
+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
21
|
+
outstanding shares, or (iii) beneficial ownership of such entity.
|
22
|
+
|
23
|
+
"You" (or "Your") shall mean an individual or Legal Entity
|
24
|
+
exercising permissions granted by this License.
|
25
|
+
|
26
|
+
"Source" form shall mean the preferred form for making modifications,
|
27
|
+
including but not limited to software source code, documentation
|
28
|
+
source, and configuration files.
|
29
|
+
|
30
|
+
"Object" form shall mean any form resulting from mechanical
|
31
|
+
transformation or translation of a Source form, including but
|
32
|
+
not limited to compiled object code, generated documentation,
|
33
|
+
and conversions to other media types.
|
34
|
+
|
35
|
+
"Work" shall mean the work of authorship, whether in Source or
|
36
|
+
Object form, made available under the License, as indicated by a
|
37
|
+
copyright notice that is included in or attached to the work
|
38
|
+
(an example is provided in the Appendix below).
|
39
|
+
|
40
|
+
"Derivative Works" shall mean any work, whether in Source or Object
|
41
|
+
form, that is based on (or derived from) the Work and for which the
|
42
|
+
editorial revisions, annotations, elaborations, or other modifications
|
43
|
+
represent, as a whole, an original work of authorship. For the purposes
|
44
|
+
of this License, Derivative Works shall not include works that remain
|
45
|
+
separable from, or merely link (or bind by name) to the interfaces of,
|
46
|
+
the Work and Derivative Works thereof.
|
47
|
+
|
48
|
+
"Contribution" shall mean any work of authorship, including
|
49
|
+
the original version of the Work and any modifications or additions
|
50
|
+
to that Work or Derivative Works thereof, that is intentionally
|
51
|
+
submitted to Licensor for inclusion in the Work by the copyright owner
|
52
|
+
or by an individual or Legal Entity authorized to submit on behalf of
|
53
|
+
the copyright owner. For the purposes of this definition, "submitted"
|
54
|
+
means any form of electronic, verbal, or written communication sent
|
55
|
+
to the Licensor or its representatives, including but not limited to
|
56
|
+
communication on electronic mailing lists, source code control systems,
|
57
|
+
and issue tracking systems that are managed by, or on behalf of, the
|
58
|
+
Licensor for the purpose of discussing and improving the Work, but
|
59
|
+
excluding communication that is conspicuously marked or otherwise
|
60
|
+
designated in writing by the copyright owner as "Not a Contribution."
|
61
|
+
|
62
|
+
"Contributor" shall mean Licensor and any individual or Legal Entity
|
63
|
+
on behalf of whom a Contribution has been received by Licensor and
|
64
|
+
subsequently incorporated within the Work.
|
65
|
+
|
66
|
+
2. Grant of Copyright License. Subject to the terms and conditions of
|
67
|
+
this License, each Contributor hereby grants to You a perpetual,
|
68
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
69
|
+
copyright license to reproduce, prepare Derivative Works of,
|
70
|
+
publicly display, publicly perform, sublicense, and distribute the
|
71
|
+
Work and such Derivative Works in Source or Object form.
|
72
|
+
|
73
|
+
3. Grant of Patent License. Subject to the terms and conditions of
|
74
|
+
this License, each Contributor hereby grants to You a perpetual,
|
75
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
76
|
+
(except as stated in this section) patent license to make, have made,
|
77
|
+
use, offer to sell, sell, import, and otherwise transfer the Work,
|
78
|
+
where such license applies only to those patent claims licensable
|
79
|
+
by such Contributor that are necessarily infringed by their
|
80
|
+
Contribution(s) alone or by combination of their Contribution(s)
|
81
|
+
with the Work to which such Contribution(s) was submitted. If You
|
82
|
+
institute patent litigation against any entity (including a
|
83
|
+
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
84
|
+
or a Contribution incorporated within the Work constitutes direct
|
85
|
+
or contributory patent infringement, then any patent licenses
|
86
|
+
granted to You under this License for that Work shall terminate
|
87
|
+
as of the date such litigation is filed.
|
88
|
+
|
89
|
+
4. Redistribution. You may reproduce and distribute copies of the
|
90
|
+
Work or Derivative Works thereof in any medium, with or without
|
91
|
+
modifications, and in Source or Object form, provided that You
|
92
|
+
meet the following conditions:
|
93
|
+
|
94
|
+
(a) You must give any other recipients of the Work or
|
95
|
+
Derivative Works a copy of this License; and
|
96
|
+
|
97
|
+
(b) You must cause any modified files to carry prominent notices
|
98
|
+
stating that You changed the files; and
|
99
|
+
|
100
|
+
(c) You must retain, in the Source form of any Derivative Works
|
101
|
+
that You distribute, all copyright, patent, trademark, and
|
102
|
+
attribution notices from the Source form of the Work,
|
103
|
+
excluding those notices that do not pertain to any part of
|
104
|
+
the Derivative Works; and
|
105
|
+
|
106
|
+
(d) If the Work includes a "NOTICE" text file as part of its
|
107
|
+
distribution, then any Derivative Works that You distribute must
|
108
|
+
include a readable copy of the attribution notices contained
|
109
|
+
within such NOTICE file, excluding those notices that do not
|
110
|
+
pertain to any part of the Derivative Works, in at least one
|
111
|
+
of the following places: within a NOTICE text file distributed
|
112
|
+
as part of the Derivative Works; within the Source form or
|
113
|
+
documentation, if provided along with the Derivative Works; or,
|
114
|
+
within a display generated by the Derivative Works, if and
|
115
|
+
wherever such third-party notices normally appear. The contents
|
116
|
+
of the NOTICE file are for informational purposes only and
|
117
|
+
do not modify the License. You may add Your own attribution
|
118
|
+
notices within Derivative Works that You distribute, alongside
|
119
|
+
or as an addendum to the NOTICE text from the Work, provided
|
120
|
+
that such additional attribution notices cannot be construed
|
121
|
+
as modifying the License.
|
122
|
+
|
123
|
+
You may add Your own copyright statement to Your modifications and
|
124
|
+
may provide additional or different license terms and conditions
|
125
|
+
for use, reproduction, or distribution of Your modifications, or
|
126
|
+
for any such Derivative Works as a whole, provided Your use,
|
127
|
+
reproduction, and distribution of the Work otherwise complies with
|
128
|
+
the conditions stated in this License.
|
129
|
+
|
130
|
+
5. Submission of Contributions. Unless You explicitly state otherwise,
|
131
|
+
any Contribution intentionally submitted for inclusion in the Work
|
132
|
+
by You to the Licensor shall be under the terms and conditions of
|
133
|
+
this License, without any additional terms or conditions.
|
134
|
+
Notwithstanding the above, nothing herein shall supersede or modify
|
135
|
+
the terms of any separate license agreement you may have executed
|
136
|
+
with Licensor regarding such Contributions.
|
137
|
+
|
138
|
+
6. Trademarks. This License does not grant permission to use the trade
|
139
|
+
names, trademarks, service marks, or product names of the Licensor,
|
140
|
+
except as required for reasonable and customary use in describing the
|
141
|
+
origin of the Work and reproducing the content of the NOTICE file.
|
142
|
+
|
143
|
+
7. Disclaimer of Warranty. Unless required by applicable law or
|
144
|
+
agreed to in writing, Licensor provides the Work (and each
|
145
|
+
Contributor provides its Contributions) on an "AS IS" BASIS,
|
146
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
147
|
+
implied, including, without limitation, any warranties or conditions
|
148
|
+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
149
|
+
PARTICULAR PURPOSE. You are solely responsible for determining the
|
150
|
+
appropriateness of using or redistributing the Work and assume any
|
151
|
+
risks associated with Your exercise of permissions under this License.
|
152
|
+
|
153
|
+
8. Limitation of Liability. In no event and under no legal theory,
|
154
|
+
whether in tort (including negligence), contract, or otherwise,
|
155
|
+
unless required by applicable law (such as deliberate and grossly
|
156
|
+
negligent acts) or agreed to in writing, shall any Contributor be
|
157
|
+
liable to You for damages, including any direct, indirect, special,
|
158
|
+
incidental, or consequential damages of any character arising as a
|
159
|
+
result of this License or out of the use or inability to use the
|
160
|
+
Work (including but not limited to damages for loss of goodwill,
|
161
|
+
work stoppage, computer failure or malfunction, or any and all
|
162
|
+
other commercial damages or losses), even if such Contributor
|
163
|
+
has been advised of the possibility of such damages.
|
164
|
+
|
165
|
+
9. Accepting Warranty or Additional Liability. While redistributing
|
166
|
+
the Work or Derivative Works thereof, You may choose to offer,
|
167
|
+
and charge a fee for, acceptance of support, warranty, indemnity,
|
168
|
+
or other liability obligations and/or rights consistent with this
|
169
|
+
License. However, in accepting such obligations, You may act only
|
170
|
+
on Your own behalf and on Your sole responsibility, not on behalf
|
171
|
+
of any other Contributor, and only if You agree to indemnify,
|
172
|
+
defend, and hold each Contributor harmless for any liability
|
173
|
+
incurred by, or claims asserted against, such Contributor by reason
|
174
|
+
of your accepting any such warranty or additional liability.
|
175
|
+
|
176
|
+
END OF TERMS AND CONDITIONS
|
177
|
+
|
178
|
+
APPENDIX: How to apply the Apache License to your work.
|
179
|
+
|
180
|
+
To apply the Apache License to your work, attach the following
|
181
|
+
boilerplate notice, with the fields enclosed by brackets "[]"
|
182
|
+
replaced with your own identifying information. (Don't include
|
183
|
+
the brackets!) The text should be enclosed in the appropriate
|
184
|
+
comment syntax for the file format. We also recommend that a
|
185
|
+
file or class name and description of purpose be included on the
|
186
|
+
same "printed page" as the copyright notice for easier
|
187
|
+
identification within third-party archives.
|
188
|
+
|
189
|
+
Copyright [yyyy] [name of copyright owner]
|
190
|
+
|
191
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
192
|
+
you may not use this file except in compliance with the License.
|
193
|
+
You may obtain a copy of the License at
|
194
|
+
|
195
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
196
|
+
|
197
|
+
Unless required by applicable law or agreed to in writing, software
|
198
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
199
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
200
|
+
See the License for the specific language governing permissions and
|
201
|
+
limitations under the License.
|
@@ -47,7 +47,8 @@ module Google
|
|
47
47
|
# @param [Array<Class>] ignore_classes A single or an array of Exception
|
48
48
|
# classes to ignore
|
49
49
|
#
|
50
|
-
# @return A new instance of
|
50
|
+
# @return [Google::Cloud::ErrorReporting::Middleware] A new instance of
|
51
|
+
# Middleware
|
51
52
|
#
|
52
53
|
def initialize app, error_reporting: nil, project_id: nil,
|
53
54
|
service_name: nil, service_version: nil,
|
@@ -117,8 +118,9 @@ module Google
|
|
117
118
|
|
118
119
|
# If this exception maps to a HTTP status code less than 500, do
|
119
120
|
# not report it.
|
120
|
-
|
121
|
-
error_event.context.http_request.response_status_code.to_i
|
121
|
+
status_code =
|
122
|
+
error_event.context.http_request.response_status_code.to_i
|
123
|
+
return if status_code > 0 && status_code < 500
|
122
124
|
|
123
125
|
error_reporting.report_error_event full_project_id, error_event
|
124
126
|
end
|
@@ -126,9 +126,10 @@ module Google
|
|
126
126
|
# config.google_cloud.use_error_reporting is explicitly true. Otherwise
|
127
127
|
# false.
|
128
128
|
#
|
129
|
-
# @param config The
|
129
|
+
# @param [Rails::Railtie::Configuration] config The
|
130
|
+
# Rails.application.config
|
130
131
|
#
|
131
|
-
# @return
|
132
|
+
# @return [Boolean] Whether to use Stackdriver Error Reporting
|
132
133
|
#
|
133
134
|
def self.use_error_reporting? config
|
134
135
|
gcp_config = config.google_cloud
|
@@ -0,0 +1,150 @@
|
|
1
|
+
# Copyright 2016 Google Inc. All rights reserved.
|
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
|
+
# http://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
|
+
module Google
|
16
|
+
module Devtools
|
17
|
+
module Clouderrorreporting
|
18
|
+
module V1beta1
|
19
|
+
# Description of a group of similar error events.
|
20
|
+
# @!attribute [rw] name
|
21
|
+
# @return [String]
|
22
|
+
# The group resource name.
|
23
|
+
# Example: <code>projects/my-project-123/groups/my-groupid</code>
|
24
|
+
# @!attribute [rw] group_id
|
25
|
+
# @return [String]
|
26
|
+
# Group IDs are unique for a given project. If the same kind of error
|
27
|
+
# occurs in different service contexts, it will receive the same group ID.
|
28
|
+
# @!attribute [rw] tracking_issues
|
29
|
+
# @return [Array<Google::Devtools::Clouderrorreporting::V1beta1::TrackingIssue>]
|
30
|
+
# Associated tracking issues.
|
31
|
+
class ErrorGroup; end
|
32
|
+
|
33
|
+
# Information related to tracking the progress on resolving the error.
|
34
|
+
# @!attribute [rw] url
|
35
|
+
# @return [String]
|
36
|
+
# A URL pointing to a related entry in an issue tracking system.
|
37
|
+
# Example: https://github.com/user/project/issues/4
|
38
|
+
class TrackingIssue; end
|
39
|
+
|
40
|
+
# An error event which is returned by the Error Reporting system.
|
41
|
+
# @!attribute [rw] event_time
|
42
|
+
# @return [Google::Protobuf::Timestamp]
|
43
|
+
# Time when the event occurred as provided in the error report.
|
44
|
+
# If the report did not contain a timestamp, the time the error was received
|
45
|
+
# by the Error Reporting system is used.
|
46
|
+
# @!attribute [rw] service_context
|
47
|
+
# @return [Google::Devtools::Clouderrorreporting::V1beta1::ServiceContext]
|
48
|
+
# The +ServiceContext+ for which this error was reported.
|
49
|
+
# @!attribute [rw] message
|
50
|
+
# @return [String]
|
51
|
+
# The stack trace that was reported or logged by the service.
|
52
|
+
# @!attribute [rw] context
|
53
|
+
# @return [Google::Devtools::Clouderrorreporting::V1beta1::ErrorContext]
|
54
|
+
# Data about the context in which the error occurred.
|
55
|
+
class ErrorEvent; end
|
56
|
+
|
57
|
+
# Describes a running service that sends errors.
|
58
|
+
# Its version changes over time and multiple versions can run in parallel.
|
59
|
+
# @!attribute [rw] service
|
60
|
+
# @return [String]
|
61
|
+
# An identifier of the service, such as the name of the
|
62
|
+
# executable, job, or Google App Engine service name. This field is expected
|
63
|
+
# to have a low number of values that are relatively stable over time, as
|
64
|
+
# opposed to +version+, which can be changed whenever new code is deployed.
|
65
|
+
#
|
66
|
+
# Contains the service name for error reports extracted from Google
|
67
|
+
# App Engine logs or +default+ if the App Engine default service is used.
|
68
|
+
# @!attribute [rw] version
|
69
|
+
# @return [String]
|
70
|
+
# Represents the source code version that the developer provided,
|
71
|
+
# which could represent a version label or a Git SHA-1 hash, for example.
|
72
|
+
class ServiceContext; end
|
73
|
+
|
74
|
+
# A description of the context in which an error occurred.
|
75
|
+
# This data should be provided by the application when reporting an error,
|
76
|
+
# unless the
|
77
|
+
# error report has been generated automatically from Google App Engine logs.
|
78
|
+
# @!attribute [rw] http_request
|
79
|
+
# @return [Google::Devtools::Clouderrorreporting::V1beta1::HttpRequestContext]
|
80
|
+
# The HTTP request which was processed when the error was
|
81
|
+
# triggered.
|
82
|
+
# @!attribute [rw] user
|
83
|
+
# @return [String]
|
84
|
+
# The user who caused or was affected by the crash.
|
85
|
+
# This can be a user ID, an email address, or an arbitrary token that
|
86
|
+
# uniquely identifies the user.
|
87
|
+
# When sending an error report, leave this field empty if the user was not
|
88
|
+
# logged in. In this case the
|
89
|
+
# Error Reporting system will use other data, such as remote IP address, to
|
90
|
+
# distinguish affected users. See +affected_users_count+ in
|
91
|
+
# +ErrorGroupStats+.
|
92
|
+
# @!attribute [rw] report_location
|
93
|
+
# @return [Google::Devtools::Clouderrorreporting::V1beta1::SourceLocation]
|
94
|
+
# The location in the source code where the decision was made to
|
95
|
+
# report the error, usually the place where it was logged.
|
96
|
+
# For a logged exception this would be the source line where the
|
97
|
+
# exception is logged, usually close to the place where it was
|
98
|
+
# caught. This value is in contrast to +Exception.cause_location+,
|
99
|
+
# which describes the source line where the exception was thrown.
|
100
|
+
class ErrorContext; end
|
101
|
+
|
102
|
+
# HTTP request data that is related to a reported error.
|
103
|
+
# This data should be provided by the application when reporting an error,
|
104
|
+
# unless the
|
105
|
+
# error report has been generated automatically from Google App Engine logs.
|
106
|
+
# @!attribute [rw] method
|
107
|
+
# @return [String]
|
108
|
+
# The type of HTTP request, such as +GET+, +POST+, etc.
|
109
|
+
# @!attribute [rw] url
|
110
|
+
# @return [String]
|
111
|
+
# The URL of the request.
|
112
|
+
# @!attribute [rw] user_agent
|
113
|
+
# @return [String]
|
114
|
+
# The user agent information that is provided with the request.
|
115
|
+
# @!attribute [rw] referrer
|
116
|
+
# @return [String]
|
117
|
+
# The referrer information that is provided with the request.
|
118
|
+
# @!attribute [rw] response_status_code
|
119
|
+
# @return [Integer]
|
120
|
+
# The HTTP response status code for the request.
|
121
|
+
# @!attribute [rw] remote_ip
|
122
|
+
# @return [String]
|
123
|
+
# The IP address from which the request originated.
|
124
|
+
# This can be IPv4, IPv6, or a token which is derived from the
|
125
|
+
# IP address, depending on the data that has been provided
|
126
|
+
# in the error report.
|
127
|
+
class HttpRequestContext; end
|
128
|
+
|
129
|
+
# Indicates a location in the source code of the service for which
|
130
|
+
# errors are reported.
|
131
|
+
# This data should be provided by the application when reporting an error,
|
132
|
+
# unless the error report has been generated automatically from Google App
|
133
|
+
# Engine logs. All fields are optional.
|
134
|
+
# @!attribute [rw] file_path
|
135
|
+
# @return [String]
|
136
|
+
# The source code filename, which can include a truncated relative
|
137
|
+
# path, or a full path from a production machine.
|
138
|
+
# @!attribute [rw] line_number
|
139
|
+
# @return [Integer]
|
140
|
+
# 1-based. 0 indicates that the line number is unknown.
|
141
|
+
# @!attribute [rw] function_name
|
142
|
+
# @return [String]
|
143
|
+
# Human-readable name of a function or method.
|
144
|
+
# The value can include optional context like the class or package name.
|
145
|
+
# For example, +my.package.MyClass.method+ in case of Java.
|
146
|
+
class SourceLocation; end
|
147
|
+
end
|
148
|
+
end
|
149
|
+
end
|
150
|
+
end
|
@@ -0,0 +1,293 @@
|
|
1
|
+
# Copyright 2016 Google Inc. All rights reserved.
|
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
|
+
# http://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
|
+
module Google
|
16
|
+
module Devtools
|
17
|
+
module Clouderrorreporting
|
18
|
+
module V1beta1
|
19
|
+
# Specifies a set of +ErrorGroupStats+ to return.
|
20
|
+
# @!attribute [rw] project_name
|
21
|
+
# @return [String]
|
22
|
+
# [Required] The resource name of the Google Cloud Platform project. Written
|
23
|
+
# as <code>projects/</code> plus the
|
24
|
+
# <a href="https://support.google.com/cloud/answer/6158840">Google Cloud
|
25
|
+
# Platform project ID</a>.
|
26
|
+
#
|
27
|
+
# Example: <code>projects/my-project-123</code>.
|
28
|
+
# @!attribute [rw] group_id
|
29
|
+
# @return [Array<String>]
|
30
|
+
# [Optional] List all <code>ErrorGroupStats</code> with these IDs.
|
31
|
+
# @!attribute [rw] service_filter
|
32
|
+
# @return [Google::Devtools::Clouderrorreporting::V1beta1::ServiceContextFilter]
|
33
|
+
# [Optional] List only <code>ErrorGroupStats</code> which belong to a service
|
34
|
+
# context that matches the filter.
|
35
|
+
# Data for all service contexts is returned if this field is not specified.
|
36
|
+
# @!attribute [rw] time_range
|
37
|
+
# @return [Google::Devtools::Clouderrorreporting::V1beta1::QueryTimeRange]
|
38
|
+
# [Required] List data for the given time range.
|
39
|
+
# Only <code>ErrorGroupStats</code> with a non-zero count in the given time
|
40
|
+
# range are returned, unless the request contains an explicit group_id list.
|
41
|
+
# If a group_id list is given, also <code>ErrorGroupStats</code> with zero
|
42
|
+
# occurrences are returned.
|
43
|
+
# @!attribute [rw] timed_count_duration
|
44
|
+
# @return [Google::Protobuf::Duration]
|
45
|
+
# [Optional] The preferred duration for a single returned +TimedCount+.
|
46
|
+
# If not set, no timed counts are returned.
|
47
|
+
# @!attribute [rw] alignment
|
48
|
+
# @return [Google::Devtools::Clouderrorreporting::V1beta1::TimedCountAlignment]
|
49
|
+
# [Optional] The alignment of the timed counts to be returned.
|
50
|
+
# Default is +ALIGNMENT_EQUAL_AT_END+.
|
51
|
+
# @!attribute [rw] alignment_time
|
52
|
+
# @return [Google::Protobuf::Timestamp]
|
53
|
+
# [Optional] Time where the timed counts shall be aligned if rounded
|
54
|
+
# alignment is chosen. Default is 00:00 UTC.
|
55
|
+
# @!attribute [rw] order
|
56
|
+
# @return [Google::Devtools::Clouderrorreporting::V1beta1::ErrorGroupOrder]
|
57
|
+
# [Optional] The sort order in which the results are returned.
|
58
|
+
# Default is +COUNT_DESC+.
|
59
|
+
# @!attribute [rw] page_size
|
60
|
+
# @return [Integer]
|
61
|
+
# [Optional] The maximum number of results to return per response.
|
62
|
+
# Default is 20.
|
63
|
+
# @!attribute [rw] page_token
|
64
|
+
# @return [String]
|
65
|
+
# [Optional] A +next_page_token+ provided by a previous response. To view
|
66
|
+
# additional results, pass this token along with the identical query
|
67
|
+
# parameters as the first request.
|
68
|
+
class ListGroupStatsRequest; end
|
69
|
+
|
70
|
+
# Contains a set of requested error group stats.
|
71
|
+
# @!attribute [rw] error_group_stats
|
72
|
+
# @return [Array<Google::Devtools::Clouderrorreporting::V1beta1::ErrorGroupStats>]
|
73
|
+
# The error group stats which match the given request.
|
74
|
+
# @!attribute [rw] next_page_token
|
75
|
+
# @return [String]
|
76
|
+
# If non-empty, more results are available.
|
77
|
+
# Pass this token, along with the same query parameters as the first
|
78
|
+
# request, to view the next page of results.
|
79
|
+
class ListGroupStatsResponse; end
|
80
|
+
|
81
|
+
# Data extracted for a specific group based on certain filter criteria,
|
82
|
+
# such as a given time period and/or service filter.
|
83
|
+
# @!attribute [rw] group
|
84
|
+
# @return [Google::Devtools::Clouderrorreporting::V1beta1::ErrorGroup]
|
85
|
+
# Group data that is independent of the filter criteria.
|
86
|
+
# @!attribute [rw] count
|
87
|
+
# @return [Integer]
|
88
|
+
# Approximate total number of events in the given group that match
|
89
|
+
# the filter criteria.
|
90
|
+
# @!attribute [rw] affected_users_count
|
91
|
+
# @return [Integer]
|
92
|
+
# Approximate number of affected users in the given group that
|
93
|
+
# match the filter criteria.
|
94
|
+
# Users are distinguished by data in the +ErrorContext+ of the
|
95
|
+
# individual error events, such as their login name or their remote
|
96
|
+
# IP address in case of HTTP requests.
|
97
|
+
# The number of affected users can be zero even if the number of
|
98
|
+
# errors is non-zero if no data was provided from which the
|
99
|
+
# affected user could be deduced.
|
100
|
+
# Users are counted based on data in the request
|
101
|
+
# context that was provided in the error report. If more users are
|
102
|
+
# implicitly affected, such as due to a crash of the whole service,
|
103
|
+
# this is not reflected here.
|
104
|
+
# @!attribute [rw] timed_counts
|
105
|
+
# @return [Array<Google::Devtools::Clouderrorreporting::V1beta1::TimedCount>]
|
106
|
+
# Approximate number of occurrences over time.
|
107
|
+
# Timed counts returned by ListGroups are guaranteed to be:
|
108
|
+
#
|
109
|
+
# - Inside the requested time interval
|
110
|
+
# - Non-overlapping, and
|
111
|
+
# - Ordered by ascending time.
|
112
|
+
# @!attribute [rw] first_seen_time
|
113
|
+
# @return [Google::Protobuf::Timestamp]
|
114
|
+
# Approximate first occurrence that was ever seen for this group
|
115
|
+
# and which matches the given filter criteria, ignoring the
|
116
|
+
# time_range that was specified in the request.
|
117
|
+
# @!attribute [rw] last_seen_time
|
118
|
+
# @return [Google::Protobuf::Timestamp]
|
119
|
+
# Approximate last occurrence that was ever seen for this group and
|
120
|
+
# which matches the given filter criteria, ignoring the time_range
|
121
|
+
# that was specified in the request.
|
122
|
+
# @!attribute [rw] affected_services
|
123
|
+
# @return [Array<Google::Devtools::Clouderrorreporting::V1beta1::ServiceContext>]
|
124
|
+
# Service contexts with a non-zero error count for the given filter
|
125
|
+
# criteria. This list can be truncated if multiple services are affected.
|
126
|
+
# Refer to +num_affected_services+ for the total count.
|
127
|
+
# @!attribute [rw] num_affected_services
|
128
|
+
# @return [Integer]
|
129
|
+
# The total number of services with a non-zero error count for the given
|
130
|
+
# filter criteria.
|
131
|
+
# @!attribute [rw] representative
|
132
|
+
# @return [Google::Devtools::Clouderrorreporting::V1beta1::ErrorEvent]
|
133
|
+
# An arbitrary event that is chosen as representative for the whole group.
|
134
|
+
# The representative event is intended to be used as a quick preview for
|
135
|
+
# the whole group. Events in the group are usually sufficiently similar
|
136
|
+
# to each other such that showing an arbitrary representative provides
|
137
|
+
# insight into the characteristics of the group as a whole.
|
138
|
+
class ErrorGroupStats; end
|
139
|
+
|
140
|
+
# The number of errors in a given time period.
|
141
|
+
# All numbers are approximate since the error events are sampled
|
142
|
+
# before counting them.
|
143
|
+
# @!attribute [rw] count
|
144
|
+
# @return [Integer]
|
145
|
+
# Approximate number of occurrences in the given time period.
|
146
|
+
# @!attribute [rw] start_time
|
147
|
+
# @return [Google::Protobuf::Timestamp]
|
148
|
+
# Start of the time period to which +count+ refers (included).
|
149
|
+
# @!attribute [rw] end_time
|
150
|
+
# @return [Google::Protobuf::Timestamp]
|
151
|
+
# End of the time period to which +count+ refers (excluded).
|
152
|
+
class TimedCount; end
|
153
|
+
|
154
|
+
# Specifies a set of error events to return.
|
155
|
+
# @!attribute [rw] project_name
|
156
|
+
# @return [String]
|
157
|
+
# [Required] The resource name of the Google Cloud Platform project. Written
|
158
|
+
# as +projects/+ plus the
|
159
|
+
# {Google Cloud Platform project ID}[https://support.google.com/cloud/answer/6158840].
|
160
|
+
# Example: +projects/my-project-123+.
|
161
|
+
# @!attribute [rw] group_id
|
162
|
+
# @return [String]
|
163
|
+
# [Required] The group for which events shall be returned.
|
164
|
+
# @!attribute [rw] service_filter
|
165
|
+
# @return [Google::Devtools::Clouderrorreporting::V1beta1::ServiceContextFilter]
|
166
|
+
# [Optional] List only ErrorGroups which belong to a service context that
|
167
|
+
# matches the filter.
|
168
|
+
# Data for all service contexts is returned if this field is not specified.
|
169
|
+
# @!attribute [rw] time_range
|
170
|
+
# @return [Google::Devtools::Clouderrorreporting::V1beta1::QueryTimeRange]
|
171
|
+
# [Optional] List only data for the given time range.
|
172
|
+
# @!attribute [rw] page_size
|
173
|
+
# @return [Integer]
|
174
|
+
# [Optional] The maximum number of results to return per response.
|
175
|
+
# @!attribute [rw] page_token
|
176
|
+
# @return [String]
|
177
|
+
# [Optional] A +next_page_token+ provided by a previous response.
|
178
|
+
class ListEventsRequest; end
|
179
|
+
|
180
|
+
# Contains a set of requested error events.
|
181
|
+
# @!attribute [rw] error_events
|
182
|
+
# @return [Array<Google::Devtools::Clouderrorreporting::V1beta1::ErrorEvent>]
|
183
|
+
# The error events which match the given request.
|
184
|
+
# @!attribute [rw] next_page_token
|
185
|
+
# @return [String]
|
186
|
+
# If non-empty, more results are available.
|
187
|
+
# Pass this token, along with the same query parameters as the first
|
188
|
+
# request, to view the next page of results.
|
189
|
+
class ListEventsResponse; end
|
190
|
+
|
191
|
+
# Requests might be rejected or the resulting timed count durations might be
|
192
|
+
# adjusted for lower durations.
|
193
|
+
# @!attribute [rw] period
|
194
|
+
# @return [Google::Devtools::Clouderrorreporting::V1beta1::QueryTimeRange::Period]
|
195
|
+
# Restricts the query to the specified time range.
|
196
|
+
class QueryTimeRange
|
197
|
+
# The supported time ranges.
|
198
|
+
module Period
|
199
|
+
# Do not use.
|
200
|
+
PERIOD_UNSPECIFIED = 0
|
201
|
+
|
202
|
+
# Retrieve data for the last hour.
|
203
|
+
# Recommended minimum timed count duration: 1 min.
|
204
|
+
PERIOD_1_HOUR = 1
|
205
|
+
|
206
|
+
# Retrieve data for the last 6 hours.
|
207
|
+
# Recommended minimum timed count duration: 10 min.
|
208
|
+
PERIOD_6_HOURS = 2
|
209
|
+
|
210
|
+
# Retrieve data for the last day.
|
211
|
+
# Recommended minimum timed count duration: 1 hour.
|
212
|
+
PERIOD_1_DAY = 3
|
213
|
+
|
214
|
+
# Retrieve data for the last week.
|
215
|
+
# Recommended minimum timed count duration: 6 hours.
|
216
|
+
PERIOD_1_WEEK = 4
|
217
|
+
|
218
|
+
# Retrieve data for the last 30 days.
|
219
|
+
# Recommended minimum timed count duration: 1 day.
|
220
|
+
PERIOD_30_DAYS = 5
|
221
|
+
end
|
222
|
+
end
|
223
|
+
|
224
|
+
# Specifies criteria for filtering a subset of service contexts.
|
225
|
+
# The fields in the filter correspond to the fields in +ServiceContext+.
|
226
|
+
# Only exact, case-sensitive matches are supported.
|
227
|
+
# If a field is unset or empty, it matches arbitrary values.
|
228
|
+
# @!attribute [rw] service
|
229
|
+
# @return [String]
|
230
|
+
# [Optional] The exact value to match against
|
231
|
+
# {+ServiceContext.service+}[https://cloud.google.com/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.service].
|
232
|
+
# @!attribute [rw] version
|
233
|
+
# @return [String]
|
234
|
+
# [Optional] The exact value to match against
|
235
|
+
# {+ServiceContext.version+}[https://cloud.google.com/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.version].
|
236
|
+
class ServiceContextFilter; end
|
237
|
+
|
238
|
+
# Deletes all events in the project.
|
239
|
+
# @!attribute [rw] project_name
|
240
|
+
# @return [String]
|
241
|
+
# [Required] The resource name of the Google Cloud Platform project. Written
|
242
|
+
# as +projects/+ plus the
|
243
|
+
# {Google Cloud Platform project ID}[https://support.google.com/cloud/answer/6158840].
|
244
|
+
# Example: +projects/my-project-123+.
|
245
|
+
class DeleteEventsRequest; end
|
246
|
+
|
247
|
+
# Response message for deleting error events.
|
248
|
+
class DeleteEventsResponse; end
|
249
|
+
|
250
|
+
# Specifies how the time periods of error group counts are aligned.
|
251
|
+
module TimedCountAlignment
|
252
|
+
# No alignment specified.
|
253
|
+
ERROR_COUNT_ALIGNMENT_UNSPECIFIED = 0
|
254
|
+
|
255
|
+
# The time periods shall be consecutive, have width equal to the
|
256
|
+
# requested duration, and be aligned at the +alignment_time+ provided in
|
257
|
+
# the request.
|
258
|
+
# The +alignment_time+ does not have to be inside the query period but
|
259
|
+
# even if it is outside, only time periods are returned which overlap
|
260
|
+
# with the query period.
|
261
|
+
# A rounded alignment will typically result in a
|
262
|
+
# different size of the first or the last time period.
|
263
|
+
ALIGNMENT_EQUAL_ROUNDED = 1
|
264
|
+
|
265
|
+
# The time periods shall be consecutive, have width equal to the
|
266
|
+
# requested duration, and be aligned at the end of the requested time
|
267
|
+
# period. This can result in a different size of the
|
268
|
+
# first time period.
|
269
|
+
ALIGNMENT_EQUAL_AT_END = 2
|
270
|
+
end
|
271
|
+
|
272
|
+
# A sorting order of error groups.
|
273
|
+
module ErrorGroupOrder
|
274
|
+
# No group order specified.
|
275
|
+
GROUP_ORDER_UNSPECIFIED = 0
|
276
|
+
|
277
|
+
# Total count of errors in the given time window in descending order.
|
278
|
+
COUNT_DESC = 1
|
279
|
+
|
280
|
+
# Timestamp when the group was last seen in the given time window
|
281
|
+
# in descending order.
|
282
|
+
LAST_SEEN_DESC = 2
|
283
|
+
|
284
|
+
# Timestamp when the group was created in descending order.
|
285
|
+
CREATED_DESC = 3
|
286
|
+
|
287
|
+
# Number of affected users in the given time window in descending order.
|
288
|
+
AFFECTED_USERS_DESC = 4
|
289
|
+
end
|
290
|
+
end
|
291
|
+
end
|
292
|
+
end
|
293
|
+
end
|
@@ -0,0 +1,57 @@
|
|
1
|
+
# Copyright 2016 Google Inc. All rights reserved.
|
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
|
+
# http://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
|
+
module Google
|
16
|
+
module Devtools
|
17
|
+
module Clouderrorreporting
|
18
|
+
module V1beta1
|
19
|
+
# A request for reporting an individual error event.
|
20
|
+
# @!attribute [rw] project_name
|
21
|
+
# @return [String]
|
22
|
+
# [Required] The resource name of the Google Cloud Platform project. Written
|
23
|
+
# as +projects/+ plus the
|
24
|
+
# {Google Cloud Platform project ID}[https://support.google.com/cloud/answer/6158840].
|
25
|
+
# Example: +projects/my-project-123+.
|
26
|
+
# @!attribute [rw] event
|
27
|
+
# @return [Google::Devtools::Clouderrorreporting::V1beta1::ReportedErrorEvent]
|
28
|
+
# [Required] The error event to be reported.
|
29
|
+
class ReportErrorEventRequest; end
|
30
|
+
|
31
|
+
# Response for reporting an individual error event.
|
32
|
+
# Data may be added to this message in the future.
|
33
|
+
class ReportErrorEventResponse; end
|
34
|
+
|
35
|
+
# An error event which is reported to the Error Reporting system.
|
36
|
+
# @!attribute [rw] event_time
|
37
|
+
# @return [Google::Protobuf::Timestamp]
|
38
|
+
# [Optional] Time when the event occurred.
|
39
|
+
# If not provided, the time when the event was received by the
|
40
|
+
# Error Reporting system will be used.
|
41
|
+
# @!attribute [rw] service_context
|
42
|
+
# @return [Google::Devtools::Clouderrorreporting::V1beta1::ServiceContext]
|
43
|
+
# [Required] The service context in which this error has occurred.
|
44
|
+
# @!attribute [rw] message
|
45
|
+
# @return [String]
|
46
|
+
# [Required] A message describing the error. The message can contain an
|
47
|
+
# exception stack in one of the supported programming languages and formats.
|
48
|
+
# In that case, the message is parsed and detailed exception information
|
49
|
+
# is returned when retrieving the error event again.
|
50
|
+
# @!attribute [rw] context
|
51
|
+
# @return [Google::Devtools::Clouderrorreporting::V1beta1::ErrorContext]
|
52
|
+
# [Optional] A description of the context in which the error occurred.
|
53
|
+
class ReportedErrorEvent; end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
@@ -0,0 +1,71 @@
|
|
1
|
+
# Copyright 2016 Google Inc. All rights reserved.
|
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
|
+
# http://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
|
+
module Google
|
16
|
+
module Protobuf
|
17
|
+
# A Duration represents a signed, fixed-length span of time represented
|
18
|
+
# as a count of seconds and fractions of seconds at nanosecond
|
19
|
+
# resolution. It is independent of any calendar and concepts like "day"
|
20
|
+
# or "month". It is related to Timestamp in that the difference between
|
21
|
+
# two Timestamp values is a Duration and it can be added or subtracted
|
22
|
+
# from a Timestamp. Range is approximately +-10,000 years.
|
23
|
+
#
|
24
|
+
# Example 1: Compute Duration from two Timestamps in pseudo code.
|
25
|
+
#
|
26
|
+
# Timestamp start = ...;
|
27
|
+
# Timestamp end = ...;
|
28
|
+
# Duration duration = ...;
|
29
|
+
#
|
30
|
+
# duration.seconds = end.seconds - start.seconds;
|
31
|
+
# duration.nanos = end.nanos - start.nanos;
|
32
|
+
#
|
33
|
+
# if (duration.seconds < 0 && duration.nanos > 0) {
|
34
|
+
# duration.seconds += 1;
|
35
|
+
# duration.nanos -= 1000000000;
|
36
|
+
# } else if (durations.seconds > 0 && duration.nanos < 0) {
|
37
|
+
# duration.seconds -= 1;
|
38
|
+
# duration.nanos += 1000000000;
|
39
|
+
# }
|
40
|
+
#
|
41
|
+
# Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.
|
42
|
+
#
|
43
|
+
# Timestamp start = ...;
|
44
|
+
# Duration duration = ...;
|
45
|
+
# Timestamp end = ...;
|
46
|
+
#
|
47
|
+
# end.seconds = start.seconds + duration.seconds;
|
48
|
+
# end.nanos = start.nanos + duration.nanos;
|
49
|
+
#
|
50
|
+
# if (end.nanos < 0) {
|
51
|
+
# end.seconds -= 1;
|
52
|
+
# end.nanos += 1000000000;
|
53
|
+
# } else if (end.nanos >= 1000000000) {
|
54
|
+
# end.seconds += 1;
|
55
|
+
# end.nanos -= 1000000000;
|
56
|
+
# }
|
57
|
+
# @!attribute [rw] seconds
|
58
|
+
# @return [Integer]
|
59
|
+
# Signed seconds of the span of time. Must be from -315,576,000,000
|
60
|
+
# to +315,576,000,000 inclusive.
|
61
|
+
# @!attribute [rw] nanos
|
62
|
+
# @return [Integer]
|
63
|
+
# Signed fractions of a second at nanosecond resolution of the span
|
64
|
+
# of time. Durations less than one second are represented with a 0
|
65
|
+
# +seconds+ field and a positive or negative +nanos+ field. For durations
|
66
|
+
# of one second or more, a non-zero value for the +nanos+ field must be
|
67
|
+
# of the same sign as the +seconds+ field. Must be from -999,999,999
|
68
|
+
# to +999,999,999 inclusive.
|
69
|
+
class Duration; end
|
70
|
+
end
|
71
|
+
end
|
@@ -0,0 +1,83 @@
|
|
1
|
+
# Copyright 2016 Google Inc. All rights reserved.
|
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
|
+
# http://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
|
+
module Google
|
16
|
+
module Protobuf
|
17
|
+
# A Timestamp represents a point in time independent of any time zone
|
18
|
+
# or calendar, represented as seconds and fractions of seconds at
|
19
|
+
# nanosecond resolution in UTC Epoch time. It is encoded using the
|
20
|
+
# Proleptic Gregorian Calendar which extends the Gregorian calendar
|
21
|
+
# backwards to year one. It is encoded assuming all minutes are 60
|
22
|
+
# seconds long, i.e. leap seconds are "smeared" so that no leap second
|
23
|
+
# table is needed for interpretation. Range is from
|
24
|
+
# 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z.
|
25
|
+
# By restricting to that range, we ensure that we can convert to
|
26
|
+
# and from RFC 3339 date strings.
|
27
|
+
# See {https://www.ietf.org/rfc/rfc3339.txt}[https://www.ietf.org/rfc/rfc3339.txt].
|
28
|
+
#
|
29
|
+
# Example 1: Compute Timestamp from POSIX +time()+.
|
30
|
+
#
|
31
|
+
# Timestamp timestamp;
|
32
|
+
# timestamp.set_seconds(time(NULL));
|
33
|
+
# timestamp.set_nanos(0);
|
34
|
+
#
|
35
|
+
# Example 2: Compute Timestamp from POSIX +gettimeofday()+.
|
36
|
+
#
|
37
|
+
# struct timeval tv;
|
38
|
+
# gettimeofday(&tv, NULL);
|
39
|
+
#
|
40
|
+
# Timestamp timestamp;
|
41
|
+
# timestamp.set_seconds(tv.tv_sec);
|
42
|
+
# timestamp.set_nanos(tv.tv_usec * 1000);
|
43
|
+
#
|
44
|
+
# Example 3: Compute Timestamp from Win32 +GetSystemTimeAsFileTime()+.
|
45
|
+
#
|
46
|
+
# FILETIME ft;
|
47
|
+
# GetSystemTimeAsFileTime(&ft);
|
48
|
+
# UINT64 ticks = (((UINT64)ft.dwHighDateTime) << 32) | ft.dwLowDateTime;
|
49
|
+
#
|
50
|
+
# // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z
|
51
|
+
# // is 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z.
|
52
|
+
# Timestamp timestamp;
|
53
|
+
# timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));
|
54
|
+
# timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));
|
55
|
+
#
|
56
|
+
# Example 4: Compute Timestamp from Java +System.currentTimeMillis()+.
|
57
|
+
#
|
58
|
+
# long millis = System.currentTimeMillis();
|
59
|
+
#
|
60
|
+
# Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000)
|
61
|
+
# .setNanos((int) ((millis % 1000) * 1000000)).build();
|
62
|
+
#
|
63
|
+
#
|
64
|
+
# Example 5: Compute Timestamp from current time in Python.
|
65
|
+
#
|
66
|
+
# now = time.time()
|
67
|
+
# seconds = int(now)
|
68
|
+
# nanos = int((now - seconds) * 10**9)
|
69
|
+
# timestamp = Timestamp(seconds=seconds, nanos=nanos)
|
70
|
+
# @!attribute [rw] seconds
|
71
|
+
# @return [Integer]
|
72
|
+
# Represents seconds of UTC time since Unix epoch
|
73
|
+
# 1970-01-01T00:00:00Z. Must be from from 0001-01-01T00:00:00Z to
|
74
|
+
# 9999-12-31T23:59:59Z inclusive.
|
75
|
+
# @!attribute [rw] nanos
|
76
|
+
# @return [Integer]
|
77
|
+
# Non-negative fractions of a second at nanosecond resolution. Negative
|
78
|
+
# second values with fractions must still have non-negative nanos values
|
79
|
+
# that count forward in time. Must be from 0 to 999,999,999
|
80
|
+
# inclusive.
|
81
|
+
class Timestamp; end
|
82
|
+
end
|
83
|
+
end
|
@@ -188,9 +188,9 @@ module Google
|
|
188
188
|
def get_group \
|
189
189
|
group_name,
|
190
190
|
options: nil
|
191
|
-
req = Google::Devtools::Clouderrorreporting::V1beta1::GetGroupRequest.new(
|
191
|
+
req = Google::Devtools::Clouderrorreporting::V1beta1::GetGroupRequest.new({
|
192
192
|
group_name: group_name
|
193
|
-
)
|
193
|
+
}.delete_if { |_, v| v.nil? })
|
194
194
|
@get_group.call(req, options)
|
195
195
|
end
|
196
196
|
|
@@ -217,9 +217,9 @@ module Google
|
|
217
217
|
def update_group \
|
218
218
|
group,
|
219
219
|
options: nil
|
220
|
-
req = Google::Devtools::Clouderrorreporting::V1beta1::UpdateGroupRequest.new(
|
220
|
+
req = Google::Devtools::Clouderrorreporting::V1beta1::UpdateGroupRequest.new({
|
221
221
|
group: group
|
222
|
-
)
|
222
|
+
}.delete_if { |_, v| v.nil? })
|
223
223
|
@update_group.call(req, options)
|
224
224
|
end
|
225
225
|
end
|
@@ -252,17 +252,17 @@ module Google
|
|
252
252
|
order: nil,
|
253
253
|
page_size: nil,
|
254
254
|
options: nil
|
255
|
-
req = Google::Devtools::Clouderrorreporting::V1beta1::ListGroupStatsRequest.new(
|
255
|
+
req = Google::Devtools::Clouderrorreporting::V1beta1::ListGroupStatsRequest.new({
|
256
256
|
project_name: project_name,
|
257
|
-
time_range: time_range
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
257
|
+
time_range: time_range,
|
258
|
+
group_id: group_id,
|
259
|
+
service_filter: service_filter,
|
260
|
+
timed_count_duration: timed_count_duration,
|
261
|
+
alignment: alignment,
|
262
|
+
alignment_time: alignment_time,
|
263
|
+
order: order,
|
264
|
+
page_size: page_size
|
265
|
+
}.delete_if { |_, v| v.nil? })
|
266
266
|
@list_group_stats.call(req, options)
|
267
267
|
end
|
268
268
|
|
@@ -325,13 +325,13 @@ module Google
|
|
325
325
|
time_range: nil,
|
326
326
|
page_size: nil,
|
327
327
|
options: nil
|
328
|
-
req = Google::Devtools::Clouderrorreporting::V1beta1::ListEventsRequest.new(
|
328
|
+
req = Google::Devtools::Clouderrorreporting::V1beta1::ListEventsRequest.new({
|
329
329
|
project_name: project_name,
|
330
|
-
group_id: group_id
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
330
|
+
group_id: group_id,
|
331
|
+
service_filter: service_filter,
|
332
|
+
time_range: time_range,
|
333
|
+
page_size: page_size
|
334
|
+
}.delete_if { |_, v| v.nil? })
|
335
335
|
@list_events.call(req, options)
|
336
336
|
end
|
337
337
|
|
@@ -359,9 +359,9 @@ module Google
|
|
359
359
|
def delete_events \
|
360
360
|
project_name,
|
361
361
|
options: nil
|
362
|
-
req = Google::Devtools::Clouderrorreporting::V1beta1::DeleteEventsRequest.new(
|
362
|
+
req = Google::Devtools::Clouderrorreporting::V1beta1::DeleteEventsRequest.new({
|
363
363
|
project_name: project_name
|
364
|
-
)
|
364
|
+
}.delete_if { |_, v| v.nil? })
|
365
365
|
@delete_events.call(req, options)
|
366
366
|
end
|
367
367
|
end
|
@@ -183,10 +183,10 @@ module Google
|
|
183
183
|
project_name,
|
184
184
|
event,
|
185
185
|
options: nil
|
186
|
-
req = Google::Devtools::Clouderrorreporting::V1beta1::ReportErrorEventRequest.new(
|
186
|
+
req = Google::Devtools::Clouderrorreporting::V1beta1::ReportErrorEventRequest.new({
|
187
187
|
project_name: project_name,
|
188
188
|
event: event
|
189
|
-
)
|
189
|
+
}.delete_if { |_, v| v.nil? })
|
190
190
|
@report_error_event.call(req, options)
|
191
191
|
end
|
192
192
|
end
|
metadata
CHANGED
@@ -1,29 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google-cloud-error_reporting
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.21.
|
4
|
+
version: 0.21.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Google Inc
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-11-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name: google-
|
14
|
+
name: google-cloud-core
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
19
|
+
version: 0.21.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 0.
|
26
|
+
version: 0.21.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: grpc
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -39,75 +39,47 @@ dependencies:
|
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '1.0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: google-gax
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 0.
|
47
|
+
version: 0.6.0
|
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: 0.
|
54
|
+
version: 0.6.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
56
|
+
name: google-protobuf
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
61
|
+
version: '3.0'
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
68
|
+
version: '3.0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
70
|
+
name: googleapis-common-protos
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version:
|
75
|
+
version: '1.3'
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version:
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
|
-
name: bundler
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - "~>"
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: '1.9'
|
90
|
-
type: :development
|
91
|
-
prerelease: false
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - "~>"
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '1.9'
|
97
|
-
- !ruby/object:Gem::Dependency
|
98
|
-
name: rake
|
99
|
-
requirement: !ruby/object:Gem::Requirement
|
100
|
-
requirements:
|
101
|
-
- - "~>"
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: '10.4'
|
104
|
-
type: :development
|
105
|
-
prerelease: false
|
106
|
-
version_requirements: !ruby/object:Gem::Requirement
|
107
|
-
requirements:
|
108
|
-
- - "~>"
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
version: '10.4'
|
82
|
+
version: '1.3'
|
111
83
|
- !ruby/object:Gem::Dependency
|
112
84
|
name: minitest
|
113
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -207,16 +179,23 @@ dependencies:
|
|
207
179
|
- !ruby/object:Gem::Version
|
208
180
|
version: '0.1'
|
209
181
|
description: a grpc-based api
|
210
|
-
email:
|
182
|
+
email:
|
183
|
+
- googleapis-packages@google.com
|
211
184
|
executables: []
|
212
185
|
extensions: []
|
213
186
|
extra_rdoc_files: []
|
214
187
|
files:
|
188
|
+
- ".yardopts"
|
189
|
+
- LICENSE
|
215
190
|
- README.md
|
216
|
-
- Rakefile
|
217
191
|
- lib/google/cloud/error_reporting/middleware.rb
|
218
192
|
- lib/google/cloud/error_reporting/rails.rb
|
219
193
|
- lib/google/cloud/error_reporting/v1beta1.rb
|
194
|
+
- lib/google/cloud/error_reporting/v1beta1/doc/google/devtools/clouderrorreporting/v1beta1/common.rb
|
195
|
+
- lib/google/cloud/error_reporting/v1beta1/doc/google/devtools/clouderrorreporting/v1beta1/error_stats_service.rb
|
196
|
+
- lib/google/cloud/error_reporting/v1beta1/doc/google/devtools/clouderrorreporting/v1beta1/report_errors_service.rb
|
197
|
+
- lib/google/cloud/error_reporting/v1beta1/doc/google/protobuf/duration.rb
|
198
|
+
- lib/google/cloud/error_reporting/v1beta1/doc/google/protobuf/timestamp.rb
|
220
199
|
- lib/google/cloud/error_reporting/v1beta1/error_group_service_api.rb
|
221
200
|
- lib/google/cloud/error_reporting/v1beta1/error_group_service_client_config.json
|
222
201
|
- lib/google/cloud/error_reporting/v1beta1/error_stats_service_api.rb
|
@@ -230,7 +209,7 @@ files:
|
|
230
209
|
- lib/google/devtools/clouderrorreporting/v1beta1/error_stats_service_services_pb.rb
|
231
210
|
- lib/google/devtools/clouderrorreporting/v1beta1/report_errors_service_pb.rb
|
232
211
|
- lib/google/devtools/clouderrorreporting/v1beta1/report_errors_service_services_pb.rb
|
233
|
-
homepage:
|
212
|
+
homepage: http://googlecloudplatform.github.io/google-cloud-ruby/
|
234
213
|
licenses:
|
235
214
|
- Apache-2.0
|
236
215
|
metadata: {}
|
@@ -250,7 +229,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
250
229
|
version: '0'
|
251
230
|
requirements: []
|
252
231
|
rubyforge_project:
|
253
|
-
rubygems_version: 2.
|
232
|
+
rubygems_version: 2.5.1
|
254
233
|
signing_key:
|
255
234
|
specification_version: 4
|
256
235
|
summary: Google client library for the Stackdriver Clouderrorreporting service
|
data/Rakefile
DELETED
@@ -1,72 +0,0 @@
|
|
1
|
-
# Copyright 2016 Google Inc. All rights reserved.
|
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
|
-
# http://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
|
-
|
16
|
-
require "bundler/setup"
|
17
|
-
require "bundler/gem_tasks"
|
18
|
-
|
19
|
-
task :test do
|
20
|
-
$LOAD_PATH.unshift "lib", "test"
|
21
|
-
Dir.glob("test/**/*_test.rb").each { |file| require_relative file }
|
22
|
-
end
|
23
|
-
|
24
|
-
task :rubocop do
|
25
|
-
end
|
26
|
-
|
27
|
-
namespace :test do
|
28
|
-
desc "Runs tests with coverage."
|
29
|
-
task :coverage do
|
30
|
-
end
|
31
|
-
end
|
32
|
-
|
33
|
-
# Acceptance tests
|
34
|
-
desc "Runs the error_reporting acceptance tests."
|
35
|
-
task :acceptance, :project, :keyfile do |_, args|
|
36
|
-
end
|
37
|
-
|
38
|
-
namespace :acceptance do
|
39
|
-
desc "Runs acceptance tests with coverage."
|
40
|
-
task :coverage, :project, :keyfile do |t, args|
|
41
|
-
end
|
42
|
-
|
43
|
-
|
44
|
-
desc "Runs acceptance cleanup."
|
45
|
-
task :cleanup do
|
46
|
-
end
|
47
|
-
end
|
48
|
-
|
49
|
-
desc "Runs yard-doctest example tests."
|
50
|
-
task :doctest do
|
51
|
-
end
|
52
|
-
|
53
|
-
desc "Start an interactive shell."
|
54
|
-
task :console do
|
55
|
-
end
|
56
|
-
|
57
|
-
require "yard"
|
58
|
-
require "yard/rake/yardoc_task"
|
59
|
-
YARD::Rake::YardocTask.new
|
60
|
-
|
61
|
-
desc "Generates JSON output from google-cloud-error_reporting .yardoc"
|
62
|
-
task :jsondoc => :yard do
|
63
|
-
require "rubygems"
|
64
|
-
require "gcloud/jsondoc"
|
65
|
-
|
66
|
-
registry = YARD::Registry.load! ".yardoc"
|
67
|
-
generator = Gcloud::Jsondoc::Generator.new registry, "google-cloud-error_reporting"
|
68
|
-
generator.write_to "jsondoc"
|
69
|
-
cp ["docs/toc.json"], "jsondoc", verbose: true
|
70
|
-
end
|
71
|
-
|
72
|
-
task :default => :test
|