fluent-plugin-datadog 0.10.5 → 0.12.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. checksums.yaml +5 -5
  2. data/README.md +41 -5
  3. data/fluent-plugin-datadog.gemspec +9 -4
  4. metadata +72 -11
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 64fbcf3f2a58f4ae91945601d802bfcbbe27a411
4
- data.tar.gz: a80b933ca941bdcaaf15f64f0ff2d4900e7cf967
2
+ SHA256:
3
+ metadata.gz: ffbbf461be73caab5aa46871d5bfe650871e29958f94ac74dca06f4609314979
4
+ data.tar.gz: aebacf4f5d4e0091326af53951e5f543cfae046b309197eeef055a6b070b7be0
5
5
  SHA512:
6
- metadata.gz: 97682ce0db7b87f629be382e95d9489aec3df163a014f7b74f87642d6741a01cbc5f6ee44d321ea8917023b2499bd0cd958e1dee31a2aa0f0d3502b72d023bae
7
- data.tar.gz: 7ede13e8ae2b91ae16cef2ba7a0a2323acb432ecc69dab99d2d08e0a1884fe68c7fbce426fa3209deff25aaa895a21354912eef3d4141feaf86eb7efd394763a
6
+ metadata.gz: 78f19a7838e3dd3229fa39a7d082633c8797911accde18690009985eb218da304a9be905fa51ae10d2884d696069472fd6a583a433bf4d5a0d59b0f34ff5c2a8
7
+ data.tar.gz: eda0f49c4cdb518b5a7772cc73258e5d8e005ccb541de1c2d8c2b2233d94b715c1d496bdd2e33ec7a06f6b2f6f84048f88b99adf5ae036c6e380cbf19c13dca3
data/README.md CHANGED
@@ -6,6 +6,11 @@ if you don't wan't to.
6
6
 
7
7
  ## Pre-requirements
8
8
 
9
+ | fluent-plugin-datadog | Fluentd | Ruby |
10
+ |:--------------------------|:-----------|:-------|
11
+ | \>= 0.12.0 | \>= v1 | \>= 2.4 |
12
+ | < 0.12.0 | \>= v0.12.0 | \>= 2.1 |
13
+
9
14
  To add the plugin to your fluentd agent, use the following command:
10
15
 
11
16
  gem install fluent-plugin-datadog
@@ -36,8 +41,16 @@ TCP example:
36
41
 
37
42
  # Optional parameters
38
43
  dd_source '<INTEGRATION_NAME>'
39
- dd_tags '<KEY1:VALU1>,<KEY2:VALUE2>'
44
+ dd_tags '<KEY1:VALUE1>,<KEY2:VALUE2>'
40
45
  dd_sourcecategory '<MY_SOURCE_CATEGORY>'
46
+ <buffer>
47
+ @type memory
48
+ flush_thread_count 4
49
+ flush_interval 3s
50
+ chunk_limit_size 5m
51
+ chunk_limit_records 500
52
+ </buffer>
53
+
41
54
 
42
55
  </match>
43
56
  ```
@@ -68,14 +81,24 @@ As fluent-plugin-datadog is an output_buffer, you can set all output_buffer prop
68
81
  |-------------|--------------------------------------------------------------------------|----------------|
69
82
  | **api_key** | This parameter is required in order to authenticate your fluent agent. | nil |
70
83
  | **use_json** | Event format, if true, the event is sent in json format. Othwerwise, in plain text. | true |
71
- | **include_tag_key** | Automatically include tags in the record. | false |
72
- | **tag_key** | Name of the tag attribute, if they are included. | "tag" |
84
+ | **include_tag_key** | Automatically include the Fluentd tag in the record. | false |
85
+ | **tag_key** | Where to store the Fluentd tag. | "tag" |
86
+ | **timestamp_key** | Name of the attribute which will contain timestamp of the log event. If nil, timestamp attribute is not added. | "@timestamp" |
73
87
  | **use_ssl** | If true, the agent initializes a secure connection to Datadog. In clear TCP otherwise. | true |
88
+ | **no_ssl_validation** | Disable SSL validation (useful for proxy forwarding) | false |
89
+ | **ssl_port** | Port used to send logs over a SSL encrypted connection to Datadog. If use_http is disabled, use 10516 for the US region and 443 for the EU region. | 443 |
74
90
  | **max_retries** | The number of retries before the output plugin stops. Set to -1 for unlimited retries | -1 |
75
- | **max_retries** | The number of retries before the output plugin stops. Set to -1 for unlimited retries | -1 |
91
+ | **max_backoff** | The maximum time waited between each retry in seconds | 30 |
92
+ | **use_http** | Enable HTTP forwarding. If you disable it, make sure to change the port to 10514 or ssl_port to 10516 | true |
93
+ | **use_compression** | Enable log compression for HTTP | true |
94
+ | **compression_level** | Set the log compression level for HTTP (1 to 9, 9 being the best ratio) | 6 |
76
95
  | **dd_source** | This tells Datadog what integration it is | nil |
77
- | **dd_sourcecategory** | Multiple value attribute. Can be used to refine the source attribtue | nil |
96
+ | **dd_sourcecategory** | Multiple value attribute. Can be used to refine the source attribute | nil |
78
97
  | **dd_tags** | Custom tags with the following format "key1:value1, key2:value2" | nil |
98
+ | **dd_hostname** | Used by Datadog to identify the host submitting the logs. | `hostname -f` |
99
+ | **service** | Used by Datadog to correlate between logs, traces and metrics. | nil |
100
+ | **port** | Proxy port when logs are not directly forwarded to Datadog and ssl is not used | 80 |
101
+ | **host** | Proxy endpoint when logs are not directly forwarded to Datadog | http-intake.logs.datadoghq.com |
79
102
 
80
103
  ### Docker and Kubernetes tags
81
104
 
@@ -99,3 +122,16 @@ Configuration example:
99
122
  type kubernetes_metadata
100
123
  </filter>
101
124
  ```
125
+
126
+ ## Build
127
+
128
+ To build a new version of this plugin and push it to RubyGems:
129
+
130
+ - Update the version in the .gemspec file accordingly
131
+ - `rake build` to build the gem file
132
+ - `rake release` to push the new gem to RubyGems
133
+
134
+ **Note**: The latest command will fail without appropriate credentials configured. You can set those credentials by running the following command:
135
+
136
+ `curl -u <USERNAME> https://rubygems.org/api/v1/api_key.yaml > ~/.gem/credentials`, it will ask for your password.
137
+
@@ -9,19 +9,24 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
9
9
 
10
10
  Gem::Specification.new do |spec|
11
11
  spec.name = "fluent-plugin-datadog"
12
- spec.version = "0.10.5"
12
+ spec.version = "0.12.1"
13
13
  spec.authors = ["Datadog Solutions Team"]
14
14
  spec.email = ["support@datadoghq.com"]
15
15
  spec.summary = "Datadog output plugin for Fluent event collector"
16
16
  spec.homepage = "http://datadoghq.com"
17
- spec.license = "Apache License 2.0"
17
+ spec.license = "Apache-2.0"
18
18
 
19
19
  spec.files = [".gitignore", "Gemfile", "LICENSE", "README.md", "Rakefile", "fluent-plugin-datadog.gemspec", "lib/fluent/plugin/out_datadog.rb"]
20
20
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
21
21
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
22
22
  spec.require_paths = ["lib"]
23
23
 
24
- spec.add_development_dependency "bundler", "~> 1.5"
25
- spec.add_development_dependency "rake"
24
+ spec.add_runtime_dependency "fluentd", [">= 1", "< 2"]
25
+ spec.add_runtime_dependency "net-http-persistent", '~> 3.1'
26
+
27
+ spec.add_development_dependency "bundler", "~> 2.1"
28
+ spec.add_development_dependency "test-unit", '~> 3.1'
29
+ spec.add_development_dependency "rake", "~> 12.0"
26
30
  spec.add_development_dependency "yajl-ruby", "~> 1.2"
31
+ spec.add_development_dependency 'webmock', "~> 3.5.0"
27
32
  end
metadata CHANGED
@@ -1,43 +1,91 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-datadog
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.5
4
+ version: 0.12.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Datadog Solutions Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-11-26 00:00:00.000000000 Z
11
+ date: 2020-05-20 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: fluentd
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '1'
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '2'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: '1'
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '2'
33
+ - !ruby/object:Gem::Dependency
34
+ name: net-http-persistent
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '3.1'
40
+ type: :runtime
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '3.1'
13
47
  - !ruby/object:Gem::Dependency
14
48
  name: bundler
15
49
  requirement: !ruby/object:Gem::Requirement
16
50
  requirements:
17
51
  - - "~>"
18
52
  - !ruby/object:Gem::Version
19
- version: '1.5'
53
+ version: '2.1'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '2.1'
61
+ - !ruby/object:Gem::Dependency
62
+ name: test-unit
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '3.1'
20
68
  type: :development
21
69
  prerelease: false
22
70
  version_requirements: !ruby/object:Gem::Requirement
23
71
  requirements:
24
72
  - - "~>"
25
73
  - !ruby/object:Gem::Version
26
- version: '1.5'
74
+ version: '3.1'
27
75
  - !ruby/object:Gem::Dependency
28
76
  name: rake
29
77
  requirement: !ruby/object:Gem::Requirement
30
78
  requirements:
31
- - - ">="
79
+ - - "~>"
32
80
  - !ruby/object:Gem::Version
33
- version: '0'
81
+ version: '12.0'
34
82
  type: :development
35
83
  prerelease: false
36
84
  version_requirements: !ruby/object:Gem::Requirement
37
85
  requirements:
38
- - - ">="
86
+ - - "~>"
39
87
  - !ruby/object:Gem::Version
40
- version: '0'
88
+ version: '12.0'
41
89
  - !ruby/object:Gem::Dependency
42
90
  name: yajl-ruby
43
91
  requirement: !ruby/object:Gem::Requirement
@@ -52,6 +100,20 @@ dependencies:
52
100
  - - "~>"
53
101
  - !ruby/object:Gem::Version
54
102
  version: '1.2'
103
+ - !ruby/object:Gem::Dependency
104
+ name: webmock
105
+ requirement: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - "~>"
108
+ - !ruby/object:Gem::Version
109
+ version: 3.5.0
110
+ type: :development
111
+ prerelease: false
112
+ version_requirements: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - "~>"
115
+ - !ruby/object:Gem::Version
116
+ version: 3.5.0
55
117
  description:
56
118
  email:
57
119
  - support@datadoghq.com
@@ -68,7 +130,7 @@ files:
68
130
  - lib/fluent/plugin/out_datadog.rb
69
131
  homepage: http://datadoghq.com
70
132
  licenses:
71
- - Apache License 2.0
133
+ - Apache-2.0
72
134
  metadata: {}
73
135
  post_install_message:
74
136
  rdoc_options: []
@@ -85,8 +147,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
85
147
  - !ruby/object:Gem::Version
86
148
  version: '0'
87
149
  requirements: []
88
- rubyforge_project:
89
- rubygems_version: 2.5.2.3
150
+ rubygems_version: 3.0.6
90
151
  signing_key:
91
152
  specification_version: 4
92
153
  summary: Datadog output plugin for Fluent event collector