fluent-plugin-google-cloud 0.6.3 → 0.6.4.pre.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.
- checksums.yaml +4 -4
- data/Gemfile.lock +8 -6
- data/fluent-plugin-google-cloud.gemspec +2 -1
- data/lib/fluent/plugin/out_google_cloud.rb +733 -290
- data/test/plugin/base_test.rb +316 -77
- data/test/plugin/constants.rb +143 -0
- metadata +19 -6
- data/fluent-plugin-google-cloud-0.6.2.gem +0 -0
data/test/plugin/constants.rb
CHANGED
@@ -23,6 +23,7 @@ module Constants
|
|
23
23
|
# Attributes used for the GCE metadata service.
|
24
24
|
PROJECT_ID = 'test-project-id'
|
25
25
|
ZONE = 'us-central1-b'
|
26
|
+
ZONE2 = 'us-central1-c'
|
26
27
|
FULLY_QUALIFIED_ZONE = 'projects/' + PROJECT_ID + '/zones/' + ZONE
|
27
28
|
VM_ID = '9876543210'
|
28
29
|
|
@@ -51,6 +52,19 @@ module Constants
|
|
51
52
|
MANAGED_VM_BACKEND_NAME = 'default'
|
52
53
|
MANAGED_VM_BACKEND_VERSION = 'guestbook2.0'
|
53
54
|
|
55
|
+
# Docker Container labels.
|
56
|
+
DOCKER_CONTAINER_ID = '0d0f03ff8d3c42688692536d1af77a28cd135c0a5c531f25a31'
|
57
|
+
DOCKER_CONTAINER_ID2 = '42688692536d1af77a28cd135c0a5c531f25a0317d37da427e3'
|
58
|
+
DOCKER_CONTAINER_NAME = 'happy_hippo'
|
59
|
+
DOCKER_CONTAINER_NAME2 = 'sad_panda'
|
60
|
+
DOCKER_CONTAINER_STREAM_STDOUT = 'stdout'
|
61
|
+
DOCKER_CONTAINER_STREAM_STDERR = 'stderr'
|
62
|
+
# Timestamp for 1234567890 seconds and 987654321 nanoseconds since epoch.
|
63
|
+
DOCKER_CONTAINER_TIMESTAMP = '2009-02-13T23:31:30.987654321Z'
|
64
|
+
DOCKER_CONTAINER_SECONDS_EPOCH = 1_234_567_890
|
65
|
+
DOCKER_CONTAINER_NANOS = 987_654_321
|
66
|
+
DOCKER_CONTAINER_APPLICATION_LOG_TAG = 'nginx-access-log'
|
67
|
+
|
54
68
|
# Container Engine / Kubernetes specific labels.
|
55
69
|
CONTAINER_CLUSTER_NAME = 'cluster-1'
|
56
70
|
CONTAINER_NAMESPACE_ID = '898268c8-4a36-11e5-9d81-42010af0194c'
|
@@ -83,6 +97,11 @@ module Constants
|
|
83
97
|
DATAFLOW_STEP_ID = 'step_1'
|
84
98
|
DATAFLOW_TAG = 'dataflow.googleapis.com/worker'
|
85
99
|
|
100
|
+
# Dataproc specific labels.
|
101
|
+
DATAPROC_CLUSTER_NAME = 'test-cluster'
|
102
|
+
DATAPROC_CLUSTER_UUID = '00000000-0000-0000-0000-000000000000'
|
103
|
+
DATAPROC_REGION = 'unittest'
|
104
|
+
|
86
105
|
# ML specific labels.
|
87
106
|
ML_REGION = 'us-central1'
|
88
107
|
ML_JOB_ID = 'job_name_1'
|
@@ -135,6 +154,14 @@ module Constants
|
|
135
154
|
detect_subservice false
|
136
155
|
)
|
137
156
|
|
157
|
+
ENABLE_METADATA_AGENT_CONFIG = %(
|
158
|
+
enable_metadata_agent true
|
159
|
+
)
|
160
|
+
|
161
|
+
DISABLE_METADATA_AGENT_CONFIG = %(
|
162
|
+
enable_metadata_agent false
|
163
|
+
)
|
164
|
+
|
138
165
|
CUSTOM_METADATA_CONFIG = %(
|
139
166
|
project_id #{CUSTOM_PROJECT_ID}
|
140
167
|
zone #{CUSTOM_ZONE}
|
@@ -187,6 +214,8 @@ module Constants
|
|
187
214
|
)
|
188
215
|
|
189
216
|
# Service configurations for various services.
|
217
|
+
|
218
|
+
# GCE.
|
190
219
|
COMPUTE_PARAMS = {
|
191
220
|
resource: {
|
192
221
|
type: COMPUTE_CONSTANTS[:resource_type],
|
@@ -202,6 +231,7 @@ module Constants
|
|
202
231
|
}
|
203
232
|
}
|
204
233
|
|
234
|
+
# GAE.
|
205
235
|
VMENGINE_PARAMS = {
|
206
236
|
resource: {
|
207
237
|
type: APPENGINE_CONSTANTS[:resource_type],
|
@@ -219,6 +249,7 @@ module Constants
|
|
219
249
|
}
|
220
250
|
}
|
221
251
|
|
252
|
+
# GKE Container.
|
222
253
|
CONTAINER_TAG = "kubernetes.#{CONTAINER_POD_NAME}_" \
|
223
254
|
"#{CONTAINER_NAMESPACE_NAME}_#{CONTAINER_CONTAINER_NAME}"
|
224
255
|
|
@@ -271,6 +302,60 @@ module Constants
|
|
271
302
|
}
|
272
303
|
}
|
273
304
|
|
305
|
+
# Docker Container.
|
306
|
+
DOCKER_CONTAINER_TAG = "container.#{DOCKER_CONTAINER_ID}." \
|
307
|
+
"#{DOCKER_CONTAINER_NAME}"
|
308
|
+
DOCKER_CONTAINER_TAG_WITH_APPLICATION =
|
309
|
+
"application-container.#{DOCKER_CONTAINER_NAME}." \
|
310
|
+
"#{DOCKER_CONTAINER_APPLICATION_LOG_TAG}"
|
311
|
+
|
312
|
+
DOCKER_CONTAINER_PARAMS = {
|
313
|
+
resource: {
|
314
|
+
type: DOCKER_CONSTANTS[:resource_type],
|
315
|
+
labels: {
|
316
|
+
'container_id' => DOCKER_CONTAINER_ID,
|
317
|
+
'location' => ZONE
|
318
|
+
}
|
319
|
+
},
|
320
|
+
log_name: "container.#{DOCKER_CONTAINER_ID}.#{DOCKER_CONTAINER_NAME}",
|
321
|
+
project_id: PROJECT_ID,
|
322
|
+
labels: {
|
323
|
+
"#{COMPUTE_CONSTANTS[:service]}/resource_id" => VM_ID,
|
324
|
+
"#{COMPUTE_CONSTANTS[:service]}/resource_name" => HOSTNAME,
|
325
|
+
"#{DOCKER_CONSTANTS[:service]}/container_name" => DOCKER_CONTAINER_NAME
|
326
|
+
}
|
327
|
+
}
|
328
|
+
DOCKER_CONTAINER_PARAMS_WITH_STREAM_STDOUT = DOCKER_CONTAINER_PARAMS.merge(
|
329
|
+
labels: DOCKER_CONTAINER_PARAMS[:labels].merge(
|
330
|
+
"#{DOCKER_CONSTANTS[:service]}/stream" => DOCKER_CONTAINER_STREAM_STDOUT
|
331
|
+
)
|
332
|
+
)
|
333
|
+
DOCKER_CONTAINER_PARAMS_WITH_METADATA_OVERWRITTEN = \
|
334
|
+
DOCKER_CONTAINER_PARAMS.merge(
|
335
|
+
resource: DOCKER_CONTAINER_PARAMS[:resource].merge(
|
336
|
+
labels: DOCKER_CONTAINER_PARAMS[:resource][:labels].merge(
|
337
|
+
'container_id' => DOCKER_CONTAINER_ID2
|
338
|
+
)
|
339
|
+
),
|
340
|
+
labels: DOCKER_CONTAINER_PARAMS[:labels].merge(
|
341
|
+
"#{DOCKER_CONSTANTS[:service]}/container_name" =>
|
342
|
+
DOCKER_CONTAINER_NAME2,
|
343
|
+
"#{DOCKER_CONSTANTS[:service]}/stream" =>
|
344
|
+
DOCKER_CONTAINER_STREAM_STDERR
|
345
|
+
)
|
346
|
+
)
|
347
|
+
DOCKER_CONTAINER_PARAMS_WITH_ZONE2 = DOCKER_CONTAINER_PARAMS.merge(
|
348
|
+
resource: DOCKER_CONTAINER_PARAMS[:resource].merge(
|
349
|
+
labels: DOCKER_CONTAINER_PARAMS[:resource][:labels].merge(
|
350
|
+
'location' => ZONE2
|
351
|
+
)
|
352
|
+
)
|
353
|
+
)
|
354
|
+
DOCKER_CONTAINER_WITH_APPLICATION_PARAMS = DOCKER_CONTAINER_PARAMS.merge(
|
355
|
+
log_name: DOCKER_CONTAINER_TAG_WITH_APPLICATION
|
356
|
+
)
|
357
|
+
|
358
|
+
# Cloud Functions.
|
274
359
|
CLOUDFUNCTIONS_TAG = "kubernetes.#{CLOUDFUNCTIONS_POD_NAME}_" \
|
275
360
|
"#{CLOUDFUNCTIONS_NAMESPACE_NAME}_" \
|
276
361
|
"#{CLOUDFUNCTIONS_CONTAINER_NAME}"
|
@@ -316,6 +401,7 @@ module Constants
|
|
316
401
|
}
|
317
402
|
}
|
318
403
|
|
404
|
+
# Cloud Dataflow.
|
319
405
|
DATAFLOW_PARAMS = {
|
320
406
|
resource: {
|
321
407
|
type: DATAFLOW_CONSTANTS[:resource_type],
|
@@ -335,6 +421,26 @@ module Constants
|
|
335
421
|
}
|
336
422
|
}
|
337
423
|
|
424
|
+
# Cloud Dataproc.
|
425
|
+
DATAPROC_PARAMS = {
|
426
|
+
resource: {
|
427
|
+
type: DATAPROC_CONSTANTS[:resource_type],
|
428
|
+
labels: {
|
429
|
+
'cluster_name' => DATAPROC_CLUSTER_NAME,
|
430
|
+
'cluster_uuid' => DATAPROC_CLUSTER_UUID,
|
431
|
+
'region' => DATAPROC_REGION
|
432
|
+
}
|
433
|
+
},
|
434
|
+
log_name: 'test',
|
435
|
+
project_id: PROJECT_ID,
|
436
|
+
labels: {
|
437
|
+
"#{COMPUTE_CONSTANTS[:service]}/resource_name" => HOSTNAME,
|
438
|
+
"#{COMPUTE_CONSTANTS[:service]}/resource_id" => VM_ID,
|
439
|
+
"#{COMPUTE_CONSTANTS[:service]}/zone" => ZONE
|
440
|
+
}
|
441
|
+
}
|
442
|
+
|
443
|
+
# Cloud ML.
|
338
444
|
ML_PARAMS = {
|
339
445
|
resource: {
|
340
446
|
type: ML_CONSTANTS[:resource_type],
|
@@ -421,4 +527,41 @@ module Constants
|
|
421
527
|
'' => '_'
|
422
528
|
}
|
423
529
|
ALL_TAGS = VALID_TAGS.merge(INVALID_TAGS)
|
530
|
+
|
531
|
+
# Stub value for Monitored resources from Metadata Agent.
|
532
|
+
MONITORED_RESOURCE_STUBS = {
|
533
|
+
# Implicit GCE instance.
|
534
|
+
IMPLICIT_MONITORED_RESOURCE_UNIQUE_KEY => {
|
535
|
+
'unique_id' => IMPLICIT_MONITORED_RESOURCE_UNIQUE_KEY,
|
536
|
+
'monitored_resource' => '{' \
|
537
|
+
"\"type\": \"#{COMPUTE_CONSTANTS[:resource_type]}\"," \
|
538
|
+
'"labels": {' \
|
539
|
+
"\"zone\": \"#{ZONE}\"," \
|
540
|
+
"\"instance_id\": \"#{VM_ID}\"" \
|
541
|
+
'}' \
|
542
|
+
'}'
|
543
|
+
},
|
544
|
+
# Docker container stderr / stdout logs.
|
545
|
+
DOCKER_CONSTANTS[:resource_type] => {
|
546
|
+
'unique_id' => "container.#{DOCKER_CONTAINER_ID}",
|
547
|
+
'monitored_resource' => '{' \
|
548
|
+
"\"type\": \"#{DOCKER_CONSTANTS[:resource_type]}\"," \
|
549
|
+
'"labels": {' \
|
550
|
+
"\"location\": \"#{ZONE2}\"," \
|
551
|
+
"\"container_id\": \"#{DOCKER_CONTAINER_ID}\"" \
|
552
|
+
'}' \
|
553
|
+
'}'
|
554
|
+
},
|
555
|
+
# Docker container application logs.
|
556
|
+
"#{DOCKER_CONSTANTS[:resource_type]}_application" => {
|
557
|
+
'unique_id' => "containerName.#{DOCKER_CONTAINER_NAME}",
|
558
|
+
'monitored_resource' => '{' \
|
559
|
+
"\"type\": \"#{DOCKER_CONSTANTS[:resource_type]}\"," \
|
560
|
+
'"labels": {' \
|
561
|
+
"\"location\": \"#{ZONE}\"," \
|
562
|
+
"\"container_id\": \"#{DOCKER_CONTAINER_ID}\"" \
|
563
|
+
'}' \
|
564
|
+
'}'
|
565
|
+
}
|
566
|
+
}
|
424
567
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent-plugin-google-cloud
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.4.pre.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Todd Derr
|
@@ -9,8 +9,22 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2017-
|
12
|
+
date: 2017-06-22 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: excon
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
requirements:
|
18
|
+
- - "~>"
|
19
|
+
- !ruby/object:Gem::Version
|
20
|
+
version: 0.56.0
|
21
|
+
type: :runtime
|
22
|
+
prerelease: false
|
23
|
+
version_requirements: !ruby/object:Gem::Requirement
|
24
|
+
requirements:
|
25
|
+
- - "~>"
|
26
|
+
- !ruby/object:Gem::Version
|
27
|
+
version: 0.56.0
|
14
28
|
- !ruby/object:Gem::Dependency
|
15
29
|
name: fluentd
|
16
30
|
requirement: !ruby/object:Gem::Requirement
|
@@ -202,7 +216,6 @@ files:
|
|
202
216
|
- LICENSE
|
203
217
|
- README.rdoc
|
204
218
|
- Rakefile
|
205
|
-
- fluent-plugin-google-cloud-0.6.2.gem
|
206
219
|
- fluent-plugin-google-cloud.gemspec
|
207
220
|
- lib/fluent/plugin/out_google_cloud.rb
|
208
221
|
- test/helper.rb
|
@@ -229,12 +242,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
229
242
|
version: '2.0'
|
230
243
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
231
244
|
requirements:
|
232
|
-
- - "
|
245
|
+
- - ">"
|
233
246
|
- !ruby/object:Gem::Version
|
234
|
-
version:
|
247
|
+
version: 1.3.1
|
235
248
|
requirements: []
|
236
249
|
rubyforge_project:
|
237
|
-
rubygems_version: 2.
|
250
|
+
rubygems_version: 2.4.8
|
238
251
|
signing_key:
|
239
252
|
specification_version: 4
|
240
253
|
summary: fluentd output plugin for the Stackdriver Logging API
|
Binary file
|