logstash-output-influxdb 5.0.0 → 5.0.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 +10 -1
- data/docs/index.asciidoc +270 -0
- data/logstash-output-influxdb.gemspec +2 -2
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: adbd6b5b23c298d5eae3d4bbfc192ead4470b2b6
|
4
|
+
data.tar.gz: 4c62030ad2066315fe3398d6316f11a7f4ca9b47
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 19d096a9c2777624b17230e6c518ee45082dc2cd6066be7f04ca50c6681e6e5bcc2a2595e524d3ed97cfcbff52f414a5f67ceeacee875579416261609e24cb2b
|
7
|
+
data.tar.gz: e0a06f49a7a87ccd5d07210ad20e0a36b426b96b1e8c95042b45429fca0cc46e6bc37ae582bf46442f2a4f4dcafc7e713cebf34c59d141159d847f197598b425
|
data/Gemfile
CHANGED
@@ -1,2 +1,11 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
|
-
|
2
|
+
|
3
|
+
gemspec
|
4
|
+
|
5
|
+
logstash_path = ENV["LOGSTASH_PATH"] || "../../logstash"
|
6
|
+
use_logstash_source = ENV["LOGSTASH_SOURCE"] && ENV["LOGSTASH_SOURCE"].to_s == "1"
|
7
|
+
|
8
|
+
if Dir.exist?(logstash_path) && use_logstash_source
|
9
|
+
gem 'logstash-core', :path => "#{logstash_path}/logstash-core"
|
10
|
+
gem 'logstash-core-plugin-api', :path => "#{logstash_path}/logstash-core-plugin-api"
|
11
|
+
end
|
data/docs/index.asciidoc
ADDED
@@ -0,0 +1,270 @@
|
|
1
|
+
:plugin: influxdb
|
2
|
+
:type: output
|
3
|
+
|
4
|
+
///////////////////////////////////////////
|
5
|
+
START - GENERATED VARIABLES, DO NOT EDIT!
|
6
|
+
///////////////////////////////////////////
|
7
|
+
:version: %VERSION%
|
8
|
+
:release_date: %RELEASE_DATE%
|
9
|
+
:changelog_url: %CHANGELOG_URL%
|
10
|
+
:include_path: ../../../../logstash/docs/include
|
11
|
+
///////////////////////////////////////////
|
12
|
+
END - GENERATED VARIABLES, DO NOT EDIT!
|
13
|
+
///////////////////////////////////////////
|
14
|
+
|
15
|
+
[id="plugins-{type}-{plugin}"]
|
16
|
+
|
17
|
+
=== Influxdb output plugin
|
18
|
+
|
19
|
+
include::{include_path}/plugin_header.asciidoc[]
|
20
|
+
|
21
|
+
==== Description
|
22
|
+
|
23
|
+
This output lets you output Metrics to InfluxDB (>= 0.9.0-rc31)
|
24
|
+
|
25
|
+
The configuration here attempts to be as friendly as possible
|
26
|
+
and minimize the need for multiple definitions to write to
|
27
|
+
multiple measurements and still be efficient
|
28
|
+
|
29
|
+
the InfluxDB API let's you do some semblance of bulk operation
|
30
|
+
per http call but each call is database-specific
|
31
|
+
|
32
|
+
You can learn more at http://influxdb.com[InfluxDB homepage]
|
33
|
+
|
34
|
+
[id="plugins-{type}s-{plugin}-options"]
|
35
|
+
==== Influxdb Output Configuration Options
|
36
|
+
|
37
|
+
This plugin supports the following configuration options plus the <<plugins-{type}s-{plugin}-common-options>> described later.
|
38
|
+
|
39
|
+
[cols="<,<,<",options="header",]
|
40
|
+
|=======================================================================
|
41
|
+
|Setting |Input type|Required
|
42
|
+
| <<plugins-{type}s-{plugin}-allow_time_override>> |<<boolean,boolean>>|No
|
43
|
+
| <<plugins-{type}s-{plugin}-coerce_values>> |<<hash,hash>>|No
|
44
|
+
| <<plugins-{type}s-{plugin}-data_points>> |<<hash,hash>>|Yes
|
45
|
+
| <<plugins-{type}s-{plugin}-db>> |<<string,string>>|No
|
46
|
+
| <<plugins-{type}s-{plugin}-exclude_fields>> |<<array,array>>|No
|
47
|
+
| <<plugins-{type}s-{plugin}-flush_size>> |<<number,number>>|No
|
48
|
+
| <<plugins-{type}s-{plugin}-host>> |<<string,string>>|Yes
|
49
|
+
| <<plugins-{type}s-{plugin}-idle_flush_time>> |<<number,number>>|No
|
50
|
+
| <<plugins-{type}s-{plugin}-initial_delay>> |<<number,number>>|No
|
51
|
+
| <<plugins-{type}s-{plugin}-max_retries>> |<<number,number>>|No
|
52
|
+
| <<plugins-{type}s-{plugin}-measurement>> |<<string,string>>|No
|
53
|
+
| <<plugins-{type}s-{plugin}-password>> |<<password,password>>|No
|
54
|
+
| <<plugins-{type}s-{plugin}-port>> |<<number,number>>|No
|
55
|
+
| <<plugins-{type}s-{plugin}-retention_policy>> |<<string,string>>|No
|
56
|
+
| <<plugins-{type}s-{plugin}-send_as_tags>> |<<array,array>>|No
|
57
|
+
| <<plugins-{type}s-{plugin}-ssl>> |<<boolean,boolean>>|No
|
58
|
+
| <<plugins-{type}s-{plugin}-time_precision>> |<<string,string>>, one of `["n", "u", "ms", "s", "m", "h"]`|No
|
59
|
+
| <<plugins-{type}s-{plugin}-use_event_fields_for_data_points>> |<<boolean,boolean>>|No
|
60
|
+
| <<plugins-{type}s-{plugin}-user>> |<<string,string>>|No
|
61
|
+
|=======================================================================
|
62
|
+
|
63
|
+
Also see <<plugins-{type}s-{plugin}-common-options>> for a list of options supported by all
|
64
|
+
output plugins.
|
65
|
+
|
66
|
+
|
67
|
+
|
68
|
+
[id="plugins-{type}s-{plugin}-allow_time_override"]
|
69
|
+
===== `allow_time_override`
|
70
|
+
|
71
|
+
* Value type is <<boolean,boolean>>
|
72
|
+
* Default value is `false`
|
73
|
+
|
74
|
+
Allow the override of the `time` column in the event?
|
75
|
+
|
76
|
+
By default any column with a name of `time` will be ignored and the time will
|
77
|
+
be determined by the value of `@timestamp`.
|
78
|
+
|
79
|
+
Setting this to `true` allows you to explicitly set the `time` column yourself
|
80
|
+
|
81
|
+
Note: **`time` must be an epoch value in either seconds, milliseconds or microseconds**
|
82
|
+
|
83
|
+
[id="plugins-{type}s-{plugin}-coerce_values"]
|
84
|
+
===== `coerce_values`
|
85
|
+
|
86
|
+
* Value type is <<hash,hash>>
|
87
|
+
* Default value is `{}`
|
88
|
+
|
89
|
+
Allow value coercion
|
90
|
+
|
91
|
+
this will attempt to convert data point values to the appropriate type before posting
|
92
|
+
otherwise sprintf-filtered numeric values could get sent as strings
|
93
|
+
format is `{'column_name' => 'datatype'}`
|
94
|
+
|
95
|
+
currently supported datatypes are `integer` and `float`
|
96
|
+
|
97
|
+
|
98
|
+
[id="plugins-{type}s-{plugin}-data_points"]
|
99
|
+
===== `data_points`
|
100
|
+
|
101
|
+
* This is a required setting.
|
102
|
+
* Value type is <<hash,hash>>
|
103
|
+
* Default value is `{}`
|
104
|
+
|
105
|
+
Hash of key/value pairs representing data points to send to the named database
|
106
|
+
Example: `{'column1' => 'value1', 'column2' => 'value2'}`
|
107
|
+
|
108
|
+
Events for the same measurement will be batched together where possible
|
109
|
+
Both keys and values support sprintf formatting
|
110
|
+
|
111
|
+
[id="plugins-{type}s-{plugin}-db"]
|
112
|
+
===== `db`
|
113
|
+
|
114
|
+
* Value type is <<string,string>>
|
115
|
+
* Default value is `"statistics"`
|
116
|
+
|
117
|
+
The database to write - supports sprintf formatting
|
118
|
+
|
119
|
+
[id="plugins-{type}s-{plugin}-exclude_fields"]
|
120
|
+
===== `exclude_fields`
|
121
|
+
|
122
|
+
* Value type is <<array,array>>
|
123
|
+
* Default value is `["@timestamp", "@version", "sequence", "message", "type"]`
|
124
|
+
|
125
|
+
An array containing the names of fields from the event to exclude from the
|
126
|
+
data points
|
127
|
+
|
128
|
+
Events, in general, contain keys "@version" and "@timestamp". Other plugins
|
129
|
+
may add others that you'll want to exclude (such as "command" from the
|
130
|
+
exec plugin).
|
131
|
+
|
132
|
+
This only applies when use_event_fields_for_data_points is true.
|
133
|
+
|
134
|
+
[id="plugins-{type}s-{plugin}-flush_size"]
|
135
|
+
===== `flush_size`
|
136
|
+
|
137
|
+
* Value type is <<number,number>>
|
138
|
+
* Default value is `100`
|
139
|
+
|
140
|
+
This setting controls how many events will be buffered before sending a batch
|
141
|
+
of events. Note that these are only batched for the same measurement
|
142
|
+
|
143
|
+
[id="plugins-{type}s-{plugin}-host"]
|
144
|
+
===== `host`
|
145
|
+
|
146
|
+
* This is a required setting.
|
147
|
+
* Value type is <<string,string>>
|
148
|
+
* There is no default value for this setting.
|
149
|
+
|
150
|
+
The hostname or IP address to reach your InfluxDB instance
|
151
|
+
|
152
|
+
[id="plugins-{type}s-{plugin}-idle_flush_time"]
|
153
|
+
===== `idle_flush_time`
|
154
|
+
|
155
|
+
* Value type is <<number,number>>
|
156
|
+
* Default value is `1`
|
157
|
+
|
158
|
+
The amount of time since last flush before a flush is forced.
|
159
|
+
|
160
|
+
This setting helps ensure slow event rates don't get stuck in Logstash.
|
161
|
+
For example, if your `flush_size` is 100, and you have received 10 events,
|
162
|
+
and it has been more than `idle_flush_time` seconds since the last flush,
|
163
|
+
logstash will flush those 10 events automatically.
|
164
|
+
|
165
|
+
This helps keep both fast and slow log streams moving along in
|
166
|
+
near-real-time.
|
167
|
+
|
168
|
+
[id="plugins-{type}s-{plugin}-initial_delay"]
|
169
|
+
===== `initial_delay`
|
170
|
+
|
171
|
+
* Value type is <<number,number>>
|
172
|
+
* Default value is `1`
|
173
|
+
|
174
|
+
The amount of time in seconds to delay the initial retry on connection failure.
|
175
|
+
|
176
|
+
The delay will increase exponentially for each retry attempt (up to max_retries).
|
177
|
+
|
178
|
+
[id="plugins-{type}s-{plugin}-max_retries"]
|
179
|
+
===== `max_retries`
|
180
|
+
|
181
|
+
* Value type is <<number,number>>
|
182
|
+
* Default value is `3`
|
183
|
+
|
184
|
+
The number of time to retry recoverable errors before dropping the events.
|
185
|
+
|
186
|
+
A value of -1 will cause the plugin to retry indefinately.
|
187
|
+
A value of 0 will cause the plugin to never retry.
|
188
|
+
Otherwise it will retry up to the specified mumber of times.
|
189
|
+
|
190
|
+
|
191
|
+
[id="plugins-{type}s-{plugin}-measurement"]
|
192
|
+
===== `measurement`
|
193
|
+
|
194
|
+
* Value type is <<string,string>>
|
195
|
+
* Default value is `"logstash"`
|
196
|
+
|
197
|
+
Measurement name - supports sprintf formatting
|
198
|
+
|
199
|
+
[id="plugins-{type}s-{plugin}-password"]
|
200
|
+
===== `password`
|
201
|
+
|
202
|
+
* Value type is <<password,password>>
|
203
|
+
* Default value is `nil`
|
204
|
+
|
205
|
+
The password for the user who access to the named database
|
206
|
+
|
207
|
+
[id="plugins-{type}s-{plugin}-port"]
|
208
|
+
===== `port`
|
209
|
+
|
210
|
+
* Value type is <<number,number>>
|
211
|
+
* Default value is `8086`
|
212
|
+
|
213
|
+
The port for InfluxDB
|
214
|
+
|
215
|
+
[id="plugins-{type}s-{plugin}-retention_policy"]
|
216
|
+
===== `retention_policy`
|
217
|
+
|
218
|
+
* Value type is <<string,string>>
|
219
|
+
* Default value is `"autogen"`
|
220
|
+
|
221
|
+
The retention policy to use
|
222
|
+
|
223
|
+
[id="plugins-{type}s-{plugin}-send_as_tags"]
|
224
|
+
===== `send_as_tags`
|
225
|
+
|
226
|
+
* Value type is <<array,array>>
|
227
|
+
* Default value is `["host"]`
|
228
|
+
|
229
|
+
An array containing the names of fields to send to Influxdb as tags instead
|
230
|
+
of fields. Influxdb 0.9 convention is that values that do not change every
|
231
|
+
request should be considered metadata and given as tags.
|
232
|
+
|
233
|
+
[id="plugins-{type}s-{plugin}-ssl"]
|
234
|
+
===== `ssl`
|
235
|
+
|
236
|
+
* Value type is <<boolean,boolean>>
|
237
|
+
* Default value is `false`
|
238
|
+
|
239
|
+
Enable SSL/TLS secured communication to InfluxDB
|
240
|
+
|
241
|
+
[id="plugins-{type}s-{plugin}-time_precision"]
|
242
|
+
===== `time_precision`
|
243
|
+
|
244
|
+
* Value can be any of: `n`, `u`, `ms`, `s`, `m`, `h`
|
245
|
+
* Default value is `"ms"`
|
246
|
+
|
247
|
+
Set the level of precision of `time`
|
248
|
+
|
249
|
+
only useful when overriding the time value
|
250
|
+
|
251
|
+
[id="plugins-{type}s-{plugin}-use_event_fields_for_data_points"]
|
252
|
+
===== `use_event_fields_for_data_points`
|
253
|
+
|
254
|
+
* Value type is <<boolean,boolean>>
|
255
|
+
* Default value is `false`
|
256
|
+
|
257
|
+
Automatically use fields from the event as the data points sent to Influxdb
|
258
|
+
|
259
|
+
[id="plugins-{type}s-{plugin}-user"]
|
260
|
+
===== `user`
|
261
|
+
|
262
|
+
* Value type is <<string,string>>
|
263
|
+
* Default value is `nil`
|
264
|
+
|
265
|
+
The user who has access to the named database
|
266
|
+
|
267
|
+
|
268
|
+
|
269
|
+
[id="plugins-{type}s-{plugin}-common-options"]
|
270
|
+
include::{include_path}/{type}.asciidoc[]
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = 'logstash-output-influxdb'
|
3
|
-
s.version = '5.0.
|
3
|
+
s.version = '5.0.1'
|
4
4
|
s.licenses = ['Apache License (2.0)']
|
5
5
|
s.summary = "This output lets you output Metrics to InfluxDB"
|
6
6
|
s.description = "This gem is a Logstash plugin required to be installed on top of the Logstash core pipeline using $LS_HOME/bin/logstash-plugin install gemname. This gem is not a stand-alone program"
|
@@ -10,7 +10,7 @@ Gem::Specification.new do |s|
|
|
10
10
|
s.require_paths = ["lib"]
|
11
11
|
|
12
12
|
# Files
|
13
|
-
s.files = Dir[
|
13
|
+
s.files = Dir["lib/**/*","spec/**/*","*.gemspec","*.md","CONTRIBUTORS","Gemfile","LICENSE","NOTICE.TXT", "vendor/jar-dependencies/**/*.jar", "vendor/jar-dependencies/**/*.rb", "VERSION", "docs/**/*"]
|
14
14
|
|
15
15
|
# Tests
|
16
16
|
s.test_files = s.files.grep(%r{^(test|spec|features)/})
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logstash-output-influxdb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.0.
|
4
|
+
version: 5.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Elastic
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-06-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|
@@ -118,6 +118,7 @@ files:
|
|
118
118
|
- LICENSE
|
119
119
|
- NOTICE.TXT
|
120
120
|
- README.md
|
121
|
+
- docs/index.asciidoc
|
121
122
|
- lib/logstash/outputs/influxdb.rb
|
122
123
|
- logstash-output-influxdb.gemspec
|
123
124
|
- spec/outputs/influxdb_spec.rb
|