google-cloud-logging 2.1.0 → 2.2.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 +4 -4
- data/CHANGELOG.md +6 -0
- data/CONTRIBUTING.md +2 -2
- data/LOGGING.md +1 -1
- data/lib/google/cloud/logging/async_writer.rb +5 -4
- data/lib/google/cloud/logging/convert.rb +12 -7
- data/lib/google/cloud/logging/entry/http_request.rb +2 -1
- data/lib/google/cloud/logging/entry/list.rb +3 -3
- data/lib/google/cloud/logging/entry/operation.rb +2 -1
- data/lib/google/cloud/logging/entry/source_location.rb +2 -1
- data/lib/google/cloud/logging/log/list.rb +3 -3
- data/lib/google/cloud/logging/logger.rb +7 -15
- data/lib/google/cloud/logging/metric/list.rb +3 -3
- data/lib/google/cloud/logging/middleware.rb +2 -2
- data/lib/google/cloud/logging/project.rb +1 -1
- data/lib/google/cloud/logging/rails.rb +7 -10
- data/lib/google/cloud/logging/resource_descriptor/list.rb +3 -3
- data/lib/google/cloud/logging/service.rb +4 -1
- data/lib/google/cloud/logging/sink/list.rb +3 -3
- data/lib/google/cloud/logging/version.rb +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1bebb4573f1d510e3c8c6d007a92edbafcdf06c1c1a545791429541e7ee1c3db
|
4
|
+
data.tar.gz: 69f4fff5db4ac937df49ee56b7b93fbcf55e4041610f84f318f56e70703fca6d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7a37da884d7f7f6bd6f7f908f907feda49b59894d7f1534d7b474c77e39e371ea96894185e9921e0a07166f70e2980fb0fc33852679c2dcf440d33cfa8bffdf0
|
7
|
+
data.tar.gz: c01f22ade5fd8c14957446b4e372f6e9476cb77c17b54a91079b86556156a5a6201e4cac80a5459fcaf34d791f623fb45396bd6cd643a57d29065d01cbea44a5
|
data/CHANGELOG.md
CHANGED
data/CONTRIBUTING.md
CHANGED
@@ -24,7 +24,7 @@ be able to accept your pull requests.
|
|
24
24
|
In order to use the google-cloud-logging console and run the project's tests,
|
25
25
|
there is a small amount of setup:
|
26
26
|
|
27
|
-
1. Install Ruby. google-cloud-logging requires Ruby 2.
|
27
|
+
1. Install Ruby. google-cloud-logging requires Ruby 2.5+. You may choose to
|
28
28
|
manage your Ruby and gem installations with [RVM](https://rvm.io/),
|
29
29
|
[rbenv](https://github.com/rbenv/rbenv), or
|
30
30
|
[chruby](https://github.com/postmodern/chruby).
|
@@ -45,7 +45,7 @@ there is a small amount of setup:
|
|
45
45
|
|
46
46
|
```sh
|
47
47
|
$ cd google-cloud-logging/
|
48
|
-
$ bundle
|
48
|
+
$ bundle install
|
49
49
|
```
|
50
50
|
|
51
51
|
## Console
|
data/LOGGING.md
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
To enable logging for this library, set the logger for the underlying
|
4
4
|
[gRPC](https://github.com/grpc/grpc/tree/master/src/ruby) library. The logger
|
5
5
|
that you set may be a Ruby stdlib
|
6
|
-
[`Logger`](https://ruby-doc.org/stdlib
|
6
|
+
[`Logger`](https://ruby-doc.org/stdlib/libdoc/logger/rdoc/Logger.html) as
|
7
7
|
shown below, or a
|
8
8
|
[`Google::Cloud::Logging::Logger`](https://googleapis.dev/ruby/google-cloud-logging/latest)
|
9
9
|
that will write logs to [Stackdriver
|
@@ -65,7 +65,7 @@ module Google
|
|
65
65
|
|
66
66
|
##
|
67
67
|
# @private Creates a new AsyncWriter instance.
|
68
|
-
def initialize logging, max_count:
|
68
|
+
def initialize logging, max_count: 10_000, max_bytes: 10_000_000,
|
69
69
|
max_queue: 100, interval: 5, threads: 10,
|
70
70
|
partial_success: false
|
71
71
|
# init MonitorMixin
|
@@ -210,7 +210,7 @@ module Google
|
|
210
210
|
@stopped = true
|
211
211
|
publish_batch!
|
212
212
|
@cond.broadcast
|
213
|
-
@thread_pool
|
213
|
+
@thread_pool&.shutdown
|
214
214
|
end
|
215
215
|
|
216
216
|
self
|
@@ -457,7 +457,8 @@ module Google
|
|
457
457
|
##
|
458
458
|
# @private
|
459
459
|
class Batch
|
460
|
-
attr_reader :created_at
|
460
|
+
attr_reader :created_at
|
461
|
+
attr_reader :entries
|
461
462
|
|
462
463
|
def initialize writer
|
463
464
|
@writer = writer
|
@@ -499,7 +500,7 @@ module Google
|
|
499
500
|
|
500
501
|
def publish_wait
|
501
502
|
publish_wait = publish_at - Time.now
|
502
|
-
return 0 if publish_wait
|
503
|
+
return 0 if publish_wait.negative?
|
503
504
|
publish_wait
|
504
505
|
end
|
505
506
|
|
@@ -39,14 +39,19 @@ module Google
|
|
39
39
|
# @private Convert an Object to a Google::Protobuf::Value.
|
40
40
|
def self.object_to_value obj
|
41
41
|
case obj
|
42
|
-
when NilClass
|
43
|
-
|
44
|
-
when
|
45
|
-
|
46
|
-
when
|
47
|
-
|
42
|
+
when NilClass
|
43
|
+
Google::Protobuf::Value.new null_value: :NULL_VALUE
|
44
|
+
when Numeric
|
45
|
+
Google::Protobuf::Value.new number_value: obj
|
46
|
+
when String
|
47
|
+
Google::Protobuf::Value.new string_value: obj
|
48
|
+
when TrueClass
|
49
|
+
Google::Protobuf::Value.new bool_value: true
|
50
|
+
when FalseClass
|
51
|
+
Google::Protobuf::Value.new bool_value: false
|
52
|
+
when Hash
|
48
53
|
Google::Protobuf::Value.new struct_value: hash_to_struct(obj)
|
49
|
-
when Array
|
54
|
+
when Array
|
50
55
|
Google::Protobuf::Value.new list_value: array_to_list(obj)
|
51
56
|
else
|
52
57
|
# TODO: Could raise ArgumentError here, or convert to a string
|
@@ -126,17 +126,17 @@ module Google
|
|
126
126
|
# puts "[#{e.timestamp}] #{e.log_name} #{e.payload.inspect}"
|
127
127
|
# end
|
128
128
|
#
|
129
|
-
def all request_limit: nil
|
129
|
+
def all request_limit: nil, &block
|
130
130
|
request_limit = request_limit.to_i if request_limit
|
131
131
|
unless block_given?
|
132
132
|
return enum_for :all, request_limit: request_limit
|
133
133
|
end
|
134
134
|
results = self
|
135
135
|
loop do
|
136
|
-
results.each
|
136
|
+
results.each(&block)
|
137
137
|
if request_limit
|
138
138
|
request_limit -= 1
|
139
|
-
break if request_limit
|
139
|
+
break if request_limit.negative?
|
140
140
|
end
|
141
141
|
break unless results.next?
|
142
142
|
results = results.next
|
@@ -110,17 +110,17 @@ module Google
|
|
110
110
|
#
|
111
111
|
# logs.all(request_limit: 10) { |l| puts l }
|
112
112
|
#
|
113
|
-
def all request_limit: nil
|
113
|
+
def all request_limit: nil, &block
|
114
114
|
request_limit = request_limit.to_i if request_limit
|
115
115
|
unless block_given?
|
116
116
|
return enum_for :all, request_limit: request_limit
|
117
117
|
end
|
118
118
|
results = self
|
119
119
|
loop do
|
120
|
-
results.each
|
120
|
+
results.each(&block)
|
121
121
|
if request_limit
|
122
122
|
request_limit -= 1
|
123
|
-
break if request_limit
|
123
|
+
break if request_limit.negative?
|
124
124
|
end
|
125
125
|
break unless results.next?
|
126
126
|
results = results.next
|
@@ -313,14 +313,8 @@ module Google
|
|
313
313
|
severity = derive_severity(severity) || ::Logger::UNKNOWN
|
314
314
|
return true if severity < @level
|
315
315
|
|
316
|
-
|
317
|
-
|
318
|
-
message = yield
|
319
|
-
else
|
320
|
-
message = progname
|
321
|
-
# progname = nil # TODO: Figure out what to do with the progname
|
322
|
-
end
|
323
|
-
end
|
316
|
+
message ||= block_given? ? yield : progname
|
317
|
+
# TODO: Figure out what to do with the progname
|
324
318
|
|
325
319
|
write_entry severity, message unless @closed
|
326
320
|
true
|
@@ -570,7 +564,7 @@ module Google
|
|
570
564
|
end
|
571
565
|
end
|
572
566
|
|
573
|
-
request_env = info
|
567
|
+
request_env = info&.env || {}
|
574
568
|
|
575
569
|
compute_labels(request_env).merge merged_labels
|
576
570
|
end
|
@@ -594,7 +588,7 @@ module Google
|
|
594
588
|
##
|
595
589
|
# @private Get Google Cloud deverity from logger level number.
|
596
590
|
def gcloud_severity severity_int
|
597
|
-
|
591
|
+
[:DEBUG, :INFO, :WARNING, :ERROR, :CRITICAL, :DEFAULT][severity_int]
|
598
592
|
rescue StandardError
|
599
593
|
:DEFAULT
|
600
594
|
end
|
@@ -610,11 +604,9 @@ module Google
|
|
610
604
|
##
|
611
605
|
# @private Compute values for labels
|
612
606
|
def compute_labels request_env
|
613
|
-
|
614
|
-
|
615
|
-
|
616
|
-
end
|
617
|
-
]
|
607
|
+
labels.to_h.transform_values do |value_or_proc|
|
608
|
+
compute_label_value request_env, value_or_proc
|
609
|
+
end
|
618
610
|
end
|
619
611
|
|
620
612
|
##
|
@@ -123,17 +123,17 @@ module Google
|
|
123
123
|
# puts "#{metric.name}: #{metric.filter}"
|
124
124
|
# end
|
125
125
|
#
|
126
|
-
def all request_limit: nil
|
126
|
+
def all request_limit: nil, &block
|
127
127
|
request_limit = request_limit.to_i if request_limit
|
128
128
|
unless block_given?
|
129
129
|
return enum_for :all, request_limit: request_limit
|
130
130
|
end
|
131
131
|
results = self
|
132
132
|
loop do
|
133
|
-
results.each
|
133
|
+
results.each(&block)
|
134
134
|
if request_limit
|
135
135
|
request_limit -= 1
|
136
|
-
break if request_limit
|
136
|
+
break if request_limit.negative?
|
137
137
|
end
|
138
138
|
break unless results.next?
|
139
139
|
results = results.next
|
@@ -57,7 +57,7 @@ module Google
|
|
57
57
|
def initialize app, logger: nil, on_init: nil, **kwargs
|
58
58
|
@app = app
|
59
59
|
|
60
|
-
load_config
|
60
|
+
load_config(**kwargs)
|
61
61
|
|
62
62
|
logger ||= Middleware.logger
|
63
63
|
logger ||= begin
|
@@ -71,7 +71,7 @@ module Google
|
|
71
71
|
Middleware.logger = logging.logger log_name, resource
|
72
72
|
end
|
73
73
|
|
74
|
-
on_init
|
74
|
+
on_init&.call
|
75
75
|
|
76
76
|
@logger = logger
|
77
77
|
end
|
@@ -357,7 +357,7 @@ module Google
|
|
357
357
|
# resource: resource,
|
358
358
|
# labels: labels
|
359
359
|
#
|
360
|
-
def async_writer max_batch_count:
|
360
|
+
def async_writer max_batch_count: 10_000, max_batch_bytes: 10_000_000,
|
361
361
|
max_queue_size: 100, interval: 5, threads: 10,
|
362
362
|
partial_success: false
|
363
363
|
|
@@ -158,7 +158,7 @@ module Google
|
|
158
158
|
##
|
159
159
|
# @private Merge Rails configuration into Logging instrumentation
|
160
160
|
# configuration.
|
161
|
-
def self.merge_rails_config rails_config
|
161
|
+
def self.merge_rails_config rails_config
|
162
162
|
gcp_config = rails_config.google_cloud
|
163
163
|
log_config = gcp_config.logging
|
164
164
|
|
@@ -175,13 +175,10 @@ module Google
|
|
175
175
|
config.log_name ||= log_config.log_name
|
176
176
|
config.labels ||= log_config.labels
|
177
177
|
config.log_name_map ||= log_config.log_name_map
|
178
|
-
config.monitored_resource.type ||=
|
179
|
-
|
180
|
-
config.monitored_resource.labels ||=
|
181
|
-
log_config.monitored_resource.labels.to_h
|
178
|
+
config.monitored_resource.type ||= log_config.monitored_resource.type
|
179
|
+
config.monitored_resource.labels ||= log_config.monitored_resource.labels.to_h
|
182
180
|
if config.set_default_logger_on_rails_init.nil?
|
183
|
-
config.set_default_logger_on_rails_init =
|
184
|
-
log_config.set_default_logger_on_rails_init
|
181
|
+
config.set_default_logger_on_rails_init = log_config.set_default_logger_on_rails_init
|
185
182
|
end
|
186
183
|
end
|
187
184
|
end
|
@@ -206,15 +203,15 @@ module Google
|
|
206
203
|
# if credentials is not a Credentials object, create one
|
207
204
|
Logging::Credentials.new credentials
|
208
205
|
end
|
209
|
-
rescue Exception => e
|
210
|
-
|
206
|
+
rescue Exception => e # rubocop:disable Lint/RescueException
|
207
|
+
$stdout.puts "Note: Google::Cloud::Logging is disabled because " \
|
211
208
|
"it failed to authorize with the service. (#{e.message}) " \
|
212
209
|
"Falling back to the default Rails logger."
|
213
210
|
return false
|
214
211
|
end
|
215
212
|
|
216
213
|
if project_id.to_s.empty?
|
217
|
-
|
214
|
+
$stdout.puts "Note: Google::Cloud::Logging is disabled because " \
|
218
215
|
"the project ID could not be determined. " \
|
219
216
|
"Falling back to the default Rails logger."
|
220
217
|
return false
|
@@ -128,17 +128,17 @@ module Google
|
|
128
128
|
# puts rd.type
|
129
129
|
# end
|
130
130
|
#
|
131
|
-
def all request_limit: nil
|
131
|
+
def all request_limit: nil, &block
|
132
132
|
request_limit = request_limit.to_i if request_limit
|
133
133
|
unless block_given?
|
134
134
|
return enum_for :all, request_limit: request_limit
|
135
135
|
end
|
136
136
|
results = self
|
137
137
|
loop do
|
138
|
-
results.each
|
138
|
+
results.each(&block)
|
139
139
|
if request_limit
|
140
140
|
request_limit -= 1
|
141
|
-
break if request_limit
|
141
|
+
break if request_limit.negative?
|
142
142
|
end
|
143
143
|
break unless results.next?
|
144
144
|
results = results.next
|
@@ -25,7 +25,10 @@ module Google
|
|
25
25
|
# @private Represents the gRPC Logging service, including all the API
|
26
26
|
# methods.
|
27
27
|
class Service
|
28
|
-
attr_accessor :project
|
28
|
+
attr_accessor :project
|
29
|
+
attr_accessor :credentials
|
30
|
+
attr_accessor :timeout
|
31
|
+
attr_accessor :host
|
29
32
|
|
30
33
|
##
|
31
34
|
# Creates a new Service instance.
|
@@ -122,17 +122,17 @@ module Google
|
|
122
122
|
# puts "#{sink.name}: #{sink.filter} -> #{sink.destination}"
|
123
123
|
# end
|
124
124
|
#
|
125
|
-
def all request_limit: nil
|
125
|
+
def all request_limit: nil, &block
|
126
126
|
request_limit = request_limit.to_i if request_limit
|
127
127
|
unless block_given?
|
128
128
|
return enum_for :all, request_limit: request_limit
|
129
129
|
end
|
130
130
|
results = self
|
131
131
|
loop do
|
132
|
-
results.each
|
132
|
+
results.each(&block)
|
133
133
|
if request_limit
|
134
134
|
request_limit -= 1
|
135
|
-
break if request_limit
|
135
|
+
break if request_limit.negative?
|
136
136
|
end
|
137
137
|
break unless results.next?
|
138
138
|
results = results.next
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google-cloud-logging
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Moore
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2021-03-10 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: google-cloud-core
|
@@ -73,14 +73,14 @@ dependencies:
|
|
73
73
|
requirements:
|
74
74
|
- - "~>"
|
75
75
|
- !ruby/object:Gem::Version
|
76
|
-
version: 1.
|
76
|
+
version: 1.25.1
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
79
|
version_requirements: !ruby/object:Gem::Requirement
|
80
80
|
requirements:
|
81
81
|
- - "~>"
|
82
82
|
- !ruby/object:Gem::Version
|
83
|
-
version: 1.
|
83
|
+
version: 1.25.1
|
84
84
|
- !ruby/object:Gem::Dependency
|
85
85
|
name: minitest
|
86
86
|
requirement: !ruby/object:Gem::Requirement
|
@@ -290,14 +290,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
290
290
|
requirements:
|
291
291
|
- - ">="
|
292
292
|
- !ruby/object:Gem::Version
|
293
|
-
version: '2.
|
293
|
+
version: '2.5'
|
294
294
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
295
295
|
requirements:
|
296
296
|
- - ">="
|
297
297
|
- !ruby/object:Gem::Version
|
298
298
|
version: '0'
|
299
299
|
requirements: []
|
300
|
-
rubygems_version: 3.
|
300
|
+
rubygems_version: 3.2.13
|
301
301
|
signing_key:
|
302
302
|
specification_version: 4
|
303
303
|
summary: API Client library for Stackdriver Logging
|