feat(processors.printer): Embed Influx serializer options (#15434)
This commit is contained in:
parent
b0cf21e236
commit
ca525d69f8
|
|
@ -16,6 +16,25 @@ See the [CONFIGURATION.md][CONFIGURATION.md] for more details.
|
||||||
```toml @sample.conf
|
```toml @sample.conf
|
||||||
# Print all metrics that pass through this filter.
|
# Print all metrics that pass through this filter.
|
||||||
[[processors.printer]]
|
[[processors.printer]]
|
||||||
|
## Maximum line length in bytes. Useful only for debugging.
|
||||||
|
# influx_max_line_bytes = 0
|
||||||
|
|
||||||
|
## When true, fields will be output in ascending lexical order. Enabling
|
||||||
|
## this option will result in decreased performance and is only recommended
|
||||||
|
## when you need predictable ordering while debugging.
|
||||||
|
# influx_sort_fields = false
|
||||||
|
|
||||||
|
## When true, Telegraf will output unsigned integers as unsigned values,
|
||||||
|
## i.e.: `42u`. You will need a version of InfluxDB supporting unsigned
|
||||||
|
## integer values. Enabling this option will result in field type errors if
|
||||||
|
## existing data has been written.
|
||||||
|
# influx_uint_support = false
|
||||||
|
|
||||||
|
## When true, Telegraf will omit the timestamp on data to allow InfluxDB
|
||||||
|
## to set the timestamp of the data during ingestion. This is generally NOT
|
||||||
|
## what you want as it can lead to data points captured at different times
|
||||||
|
## getting omitted due to similar data.
|
||||||
|
# influx_omit_timestamp = false
|
||||||
```
|
```
|
||||||
|
|
||||||
## Tags
|
## Tags
|
||||||
|
|
|
||||||
|
|
@ -14,21 +14,16 @@ import (
|
||||||
var sampleConfig string
|
var sampleConfig string
|
||||||
|
|
||||||
type Printer struct {
|
type Printer struct {
|
||||||
serializer *influx.Serializer
|
influx.Serializer
|
||||||
}
|
}
|
||||||
|
|
||||||
func (*Printer) SampleConfig() string {
|
func (*Printer) SampleConfig() string {
|
||||||
return sampleConfig
|
return sampleConfig
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *Printer) Init() error {
|
|
||||||
p.serializer = &influx.Serializer{}
|
|
||||||
return p.serializer.Init()
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *Printer) Apply(in ...telegraf.Metric) []telegraf.Metric {
|
func (p *Printer) Apply(in ...telegraf.Metric) []telegraf.Metric {
|
||||||
for _, metric := range in {
|
for _, metric := range in {
|
||||||
octets, err := p.serializer.Serialize(metric)
|
octets, err := p.Serialize(metric)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,2 +1,21 @@
|
||||||
# Print all metrics that pass through this filter.
|
# Print all metrics that pass through this filter.
|
||||||
[[processors.printer]]
|
[[processors.printer]]
|
||||||
|
## Maximum line length in bytes. Useful only for debugging.
|
||||||
|
# influx_max_line_bytes = 0
|
||||||
|
|
||||||
|
## When true, fields will be output in ascending lexical order. Enabling
|
||||||
|
## this option will result in decreased performance and is only recommended
|
||||||
|
## when you need predictable ordering while debugging.
|
||||||
|
# influx_sort_fields = false
|
||||||
|
|
||||||
|
## When true, Telegraf will output unsigned integers as unsigned values,
|
||||||
|
## i.e.: `42u`. You will need a version of InfluxDB supporting unsigned
|
||||||
|
## integer values. Enabling this option will result in field type errors if
|
||||||
|
## existing data has been written.
|
||||||
|
# influx_uint_support = false
|
||||||
|
|
||||||
|
## When true, Telegraf will omit the timestamp on data to allow InfluxDB
|
||||||
|
## to set the timestamp of the data during ingestion. This is generally NOT
|
||||||
|
## what you want as it can lead to data points captured at different times
|
||||||
|
## getting omitted due to similar data.
|
||||||
|
# influx_omit_timestamp = false
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue