Class TelegrafJsonToRecordParser

java.lang.Object
com.arpnetworking.metrics.mad.parsers.TelegrafJsonToRecordParser
All Implemented Interfaces:
Parser<List<Record>,ByteBuffer>

public final class TelegrafJsonToRecordParser extends Object implements Parser<List<Record>,ByteBuffer>
Parses Telegraf JSON data as a Record. As defined here: https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md#json Sample MAD configuration:
 {
   type="com.arpnetworking.metrics.mad.sources.MappingSource"
   name="telegraftcp_mapping_source"
   findAndReplace={
     "\\."=["/"]
   }
   source={
     type="com.arpnetworking.metrics.common.sources.TcpLineSource"
     actorName="telegraf-tcp-source"
     name="telegraftcp_source"
     host="0.0.0.0"
     port="8094"
     parser={
       type="com.arpnetworking.metrics.mad.parsers.TelegrafJsonToRecordParser"
       timestampUnit="NANOSECONDS"
     }
   }
 }
 
Sample Telegraf configuration:
 [agent]
 interval="1s"
 flush_interval="1s"
 round_interval=true
 omit_hostname=false

 [global_tags]
 service="telegraf"
 cluster="telegraf_local"

 [[outputs.socket_writer]]
 address = "tcp://127.0.0.1:8094"
 data_format = "json"
 json_timestamp_units = "1ns"
 keep_alive_period = "5m"

 [[inputs.cpu]]
 percpu = true
 totalcpu = true
 collect_cpu_time = false
 report_active = false
 
Author:
Ville Koskela (ville dot koskela at inscopemetrics dot io)