Commit Graph

65 Commits

Author SHA1 Message Date
Daniel Nelson 4e3244c575
Fix aggregator window and shutdown of multiple aggregators () 2019-03-29 15:40:33 -07:00
Daniel Nelson 99a390b8e6
Fix open error handling in file output () 2019-03-22 13:59:30 -07:00
Daniel Nelson 0b5811e193
Fix panic when rejecting empty batch () 2019-03-04 12:36:19 -08:00
Daniel Nelson c57f2d9d48
Ignore tracking for metrics added to aggregator () 2019-03-01 11:21:31 -08:00
Daniel Nelson b34c5e0d04
Update the buffer_size internal metric after writes () 2019-01-22 13:43:51 -08:00
Daniel Nelson da80276802
Use lifo order in metric buffer () 2019-01-15 11:48:52 -08:00
Daniel Nelson 0fd08dd65a
Add a copy of the input metric when adding to aggregator () 2019-01-08 11:56:44 -08:00
Daniel Nelson 544262a23a
Apply global and plugin level metric modifications before filtering () 2018-12-18 14:20:43 -08:00
Greg 74d8523db6 Aggregate early metrics, rather than ignore () 2018-12-10 16:07:08 -08:00
Daniel Nelson 0a506a93fe
Remove metrics from the buffer on write () 2018-11-29 12:58:48 -08:00
Daniel Nelson 6e5c2f8bb6
Remove outputs blocking inputs when output is slow () 2018-11-05 13:34:28 -08:00
Trevor Pounds ee056278f5 Enable gofmt code simplification () 2018-10-19 13:32:54 -07:00
Daniel Nelson 7553c8fd13
Remove metric recreation when filtering () 2018-09-28 14:48:20 -07:00
Daniel Nelson 1aa969aabc
Use separate mutexes for write and aggregation in running_output 2018-09-12 00:23:50 -07:00
Daniel Nelson 23a8498963
Fix locking if output is an AggregatingOutput 2018-09-10 15:14:14 -07:00
Gunnar f70d6519e7 Add Azure Monitor output plugin () 2018-09-05 14:50:32 -07:00
Daniel Nelson 886d8cc840
Drop message batches in kafka output if too large () 2018-08-17 13:51:21 -07:00
Shanshi Shi e538433959 Preserve metric type when using filters in output plugins () 2018-08-01 16:39:54 -06:00
Piotr Popieluch dfe7b5eec2 Don't skip metrics during startup in aggregate phase () 2018-06-05 16:30:53 -07:00
Daniel Nelson beeab2c509
Sort field names when running --test 2018-04-04 16:30:22 -07:00
Daniel Nelson 1c0f63a90d
Add new line protocol parser and serializer, influxdb output () 2018-03-27 17:30:51 -07:00
Daniel Nelson 8147d60973
Fix metric buffer limit in internal plugin after reload 2018-02-19 20:55:28 -08:00
Piotr Popieluch 601dc99606 Align aggregator period with internal ticker to avoid skipping metrics ()
By the time the aggregator.run() was called about 600ms already passed since setting now which was skewing up the aggregation intervals and skipping metrics.
2018-01-18 17:37:53 -08:00
Daniel Nelson 28d16188b3 Fix panic when handling string fields with escapes () 2017-08-30 21:16:37 -07:00
Daniel Nelson 573bd4aa32 Start first aggregator period at startup time ()
Fixes issue where metrics collected immediately after startup would not
be aggregated.
2017-07-24 18:25:05 -07:00
DanKans d903a9142d Fix filtering when both pass and drop match an item ()
Adjust logic in functions responsible for passing metrics in order to be able
to process them correctly in case where pass and drop are defined together.
2017-07-21 10:53:57 -07:00
DanKans 34c042c7dc Fix combined tagdrop/tagpass filtering () 2017-07-19 13:08:40 -07:00
Daniel Nelson b165ce4cd5 Prevent possible deadlock when using aggregators ()
Looping the metrics back through the same channel could result in a
deadlock, by using a new channel and locking the processor we can ensure
that all stages can make continual progress.
2017-07-13 15:34:21 -07:00
Daniel Nelson 5d2c093105 Prevent Write from being called concurrently () 2017-07-12 12:03:23 -07:00
Daniel Nelson 1388e2cf92 Do not allow metrics with trailing slashes ()
It is not possible to encode a measurement, tag, or field whose last
character is a backslash due to it being an unescapable character.
Because the tight coupling between line protocol and the internal metric
model, prevent metrics like this from being created.

Measurements with a trailing slash are not allowed and the point will be
dropped.  Tags and fields with a trailing a slash will be dropped from
the point.
2017-07-11 15:54:38 -07:00
Cameron Sparr 06176ef410
Only set the buffer size once
fixes 
2017-02-17 14:11:15 +00:00
Cameron Sparr e87ce22af9
running output: Drop nil metrics
fixes 
2017-02-01 08:55:22 +00:00
Cameron Sparr 7279018cfe
readme fixup & test output fixup 2017-01-09 12:28:13 +00:00
Cameron Sparr 12db3b9120
Check if metric is nil before calling SetAggregate
fixes 
2016-12-13 12:27:10 +00:00
Cameron Sparr d71a42cd1b Implement telegraf collecting stats on itself
closes 
2016-12-05 18:56:54 +00:00
Cameron Sparr e5c7a71d8e Fix unit tests for new metric implementation 2016-12-01 18:17:02 +00:00
Cameron Sparr db7a4b24b6 Implement telegraf's own full metric type
main reasons behind this:
- make adding/removing tags cheap
- make adding/removing fields cheap
- make parsing cheaper
- make parse -> decorate -> write out bytes metric flow much faster

Refactor serializer to use byte buffer
2016-12-01 18:17:02 +00:00
Cameron Sparr a84ce5d5cb drop metrics outside of the aggregators period 2016-10-12 14:56:03 +01:00
Cameron Sparr 8ca4a50c18 delete nil fields in the metric maker.
closes 
2016-10-12 14:50:19 +01:00
Cameron Sparr 03b2984ac2 Fixup some code based on feedback from @dgnorton 2016-10-12 14:50:19 +01:00
Cameron Sparr b03c1d9691 Support ordering of processor plugins 2016-10-12 14:50:19 +01:00
Cameron Sparr fead80844e Refactor handling of MinMax functionality into RunningAggregator
allows for easier addition of a sliding window at a later time.

Also makes `period` be a generic argument for all aggregator plugins.
2016-10-12 14:50:19 +01:00
Cameron Sparr 64a71263a1 Support Processor & Aggregator Plugins
closes 
2016-10-12 14:50:19 +01:00
Cameron Sparr c7834209d2 Major Logging Overhaul
in this commit:

- centralize logging output handler.
- set global Info/Debug/Error log levels based on config file or flags.
- remove per-plugin debug arg handling.
- add a I!, D!, or E! to every log message.
- add configuration option to specify where to send logs.

closes 
2016-10-03 17:13:03 +01:00
Cameron Sparr 50ef3282b6 Refactor and code cleanup of filtering
started working on this with the idea of fixing , although I
realized that this was actually just a documentation issue around
a toml eccentricity.

closes 
2016-09-05 16:30:18 +01:00
Cameron Sparr d3bb1e7010 Rename internal_models package to models 2016-08-08 14:41:40 +01:00
Cameron Sparr 2d4864e126 nil metric list panic fix 2016-06-29 12:08:36 +02:00
Cameron Sparr cb3c54a1ae logparser input plugin
closes 
closes 
2016-06-21 14:23:01 +01:00
Cameron Sparr 9bbdb2d562 Allow wildcard filtering of varnish stats
closes 
2016-05-26 10:42:34 +01:00
Cameron Sparr 4de75ce621 Performance refactor of running_output buffers
closes 
closes 
2016-04-27 13:40:05 -06:00