fluent-plugin-cloudwatch-logs 0.4.2 → 0.4.3.pre1
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
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: d3fc9af570c6757d34aa84c9205ac2f0b8544d9d583e25bff8cf1722b9130f1f
|
|
4
|
+
data.tar.gz: 627d217aff2db666bd07b23de643b4d1664776840967d14aba7f3e45b517b5e3
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 3714ed8c7a2c8ca44aa7d7843ab21d1dea32b7b136b5416d74c5733e4c1651231ef89581f3775f468381bce415094cc39b0a02ee5a785812687a097d8360276b
|
|
7
|
+
data.tar.gz: 9059d211dc518c7f15009c8f30dcfe514977b26d4d85abf4f439da1751c21ffcb5933e76c3f10adeed50deb7373ffcc655fc377069584039126b9555a4353917
|
|
@@ -191,6 +191,10 @@ module Fluent
|
|
|
191
191
|
end
|
|
192
192
|
end
|
|
193
193
|
|
|
194
|
+
def delete_sequence_token(group_name, stream_name)
|
|
195
|
+
@sequence_tokens[group_name].delete(stream_name)
|
|
196
|
+
end
|
|
197
|
+
|
|
194
198
|
def next_sequence_token(group_name, stream_name)
|
|
195
199
|
@sequence_tokens[group_name][stream_name]
|
|
196
200
|
end
|
|
@@ -235,16 +239,17 @@ module Fluent
|
|
|
235
239
|
end
|
|
236
240
|
|
|
237
241
|
def put_events(group_name, stream_name, events, events_bytesize)
|
|
238
|
-
args = {
|
|
239
|
-
log_events: events,
|
|
240
|
-
log_group_name: group_name,
|
|
241
|
-
log_stream_name: stream_name,
|
|
242
|
-
}
|
|
243
|
-
token = next_sequence_token(group_name, stream_name)
|
|
244
|
-
|
|
245
242
|
response = nil
|
|
246
243
|
retry_count = 0
|
|
244
|
+
|
|
247
245
|
until response
|
|
246
|
+
args = {
|
|
247
|
+
log_events: events,
|
|
248
|
+
log_group_name: group_name,
|
|
249
|
+
log_stream_name: stream_name,
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
token = next_sequence_token(group_name, stream_name)
|
|
248
253
|
args[:sequence_token] = token if token
|
|
249
254
|
|
|
250
255
|
begin
|
|
@@ -262,13 +267,25 @@ module Fluent
|
|
|
262
267
|
rescue Aws::CloudWatchLogs::Errors::InvalidSequenceTokenException, Aws::CloudWatchLogs::Errors::DataAlreadyAcceptedException => err
|
|
263
268
|
sleep 1 # to avoid too many API calls
|
|
264
269
|
log_stream = find_log_stream(group_name, stream_name)
|
|
265
|
-
|
|
270
|
+
store_next_sequence_token(group_name, stream_name, log_stream.upload_sequence_token)
|
|
266
271
|
log.warn "updating upload sequence token forcefully because unrecoverable error occured", {
|
|
267
272
|
"error" => err,
|
|
268
273
|
"log_group" => group_name,
|
|
269
274
|
"log_stream" => stream_name,
|
|
270
275
|
"new_sequence_token" => token,
|
|
271
276
|
}
|
|
277
|
+
rescue Aws::CloudWatchLogs::Errors::ResourceNotFoundException => err
|
|
278
|
+
if @auto_create_stream && err.message == 'The specified log stream does not exist.'
|
|
279
|
+
log.warn 'Creating log stream because "The specified log stream does not exist." error is got', {
|
|
280
|
+
"error" => err,
|
|
281
|
+
"log_group" => group_name,
|
|
282
|
+
"log_stream" => stream_name,
|
|
283
|
+
}
|
|
284
|
+
create_log_stream(group_name, stream_name)
|
|
285
|
+
delete_sequence_token(group_name, stream_name)
|
|
286
|
+
else
|
|
287
|
+
raise err
|
|
288
|
+
end
|
|
272
289
|
rescue Aws::CloudWatchLogs::Errors::ThrottlingException => err
|
|
273
290
|
if !@put_log_events_disable_retry_limit && @put_log_events_retry_limit < retry_count
|
|
274
291
|
log.error "failed to PutLogEvents and discard logs because retry count exceeded put_log_events_retry_limit", {
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: fluent-plugin-cloudwatch-logs
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.4.
|
|
4
|
+
version: 0.4.3.pre1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ryota Arai
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2017-11-
|
|
11
|
+
date: 2017-11-27 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: fluentd
|
|
@@ -144,12 +144,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
144
144
|
version: '0'
|
|
145
145
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
146
146
|
requirements:
|
|
147
|
-
- - "
|
|
147
|
+
- - ">"
|
|
148
148
|
- !ruby/object:Gem::Version
|
|
149
|
-
version:
|
|
149
|
+
version: 1.3.1
|
|
150
150
|
requirements: []
|
|
151
151
|
rubyforge_project:
|
|
152
|
-
rubygems_version: 2.
|
|
152
|
+
rubygems_version: 2.7.0
|
|
153
153
|
signing_key:
|
|
154
154
|
specification_version: 4
|
|
155
155
|
summary: CloudWatch Logs Plugin for Fluentd
|