I am facing some issue with the “net_response” at the same time two different results not sure where it is going wrong.
Telegraf version - 1.17.3
Influx version - v1.8.0
telegraf.conf file
# Telegraf Configuration
#
# Telegraf is entirely plugin driven. All metrics are gathered from the
# declared inputs, and sent to the declared outputs.
#
# Plugins must be declared in here to be active.
# To deactivate a plugin, comment out the name and any variables.
#
# Use 'telegraf -config telegraf.conf -test' to see what metrics a config
# file would generate.
#
# Environment variables can be used anywhere in this config file, simply prepend
# them with $. For strings the variable must be within quotes (ie, "$STR_VAR"),
# for numbers and booleans they should be plain (ie, $INT_VAR, $BOOL_VAR)
# Global tags can be specified here in key="value" format.
[global_tags]
# **** CHANGE 1 of 4 BELOW
dc = "ODC" # refer to DC-INSTANCE (IDC-EVAL, IDC-NONPOD, IDC-PROD)
# rack = "1a" # not used
## Environment variables can be used as tags, and throughout the config file
# user = "$USER" # not used
# **** CHANGE 2 of 4 BELOW
host = "xyz-prod" # local hostname for display in dashboard
region = "prod" # leave as "dc-1"
# **** CHANGE 3 of 4 BELOW
#dpcolor = "green" # TBD - come up with color scheme for nodes
#az = "$APIGEE_AZ" # not sure of use
pod = "ds" # not sure of use
# Configuration for telegraf agent
[agent]
## Default data collection interval for all inputs
interval = "30s"
## Rounds collection interval to 'interval'
## ie, if interval="10s" then always collect on :00, :10, :20, etc.
round_interval = true
## Telegraf will send metrics to outputs in batches of at
## most metric_batch_size metrics.
metric_batch_size = 1000
## For failed writes, telegraf will cache metric_buffer_limit metrics for each
## output, and will flush this buffer on a successful write. Oldest metrics
## are dropped first when this buffer fills.
metric_buffer_limit = 1000
## Collection jitter is used to jitter the collection by a random amount.
## Each plugin will sleep for a random time within jitter before collecting.
## This can be used to avoid many plugins querying things like sysfs at the
## same time, which can have a measurable effect on the system.
collection_jitter = "1s"
## Default flushing interval for all outputs. You shouldn't set this below
## interval. Maximum flush_interval will be flush_interval + flush_jitter
flush_interval = "30s"
## Jitter the flush interval by a random amount. This is primarily to avoid
## large write spikes for users running a large number of telegraf instances.
## ie, a jitter of 5s and interval 10s means flushes will happen every 10-15s
flush_jitter = "5s"
## By default, precision will be set to the same timestamp order as the
## collection interval, with the maximum being 1s.
## Precision will NOT be used for service inputs, such as logparser and statsd.
## Valid values are "ns", "us" (or "µs"), "ms", "s".
precision = ""
## Run telegraf in debug mode
debug = false
## Run telegraf in quiet mode
quiet = false
## Specify the log file name. The empty string means to log to stderr.
#logfile = ""
## Override default hostname, if empty use os.Hostname()
hostname = ""
## If set to true, do no set the "host" tag in the telegraf agent.
omit_hostname = true
###############################################################################
# OUTPUT PLUGINS #
###############################################################################
# Configuration for influxdb server to send metrics to
[[outputs.influxdb]]
## The full HTTP or UDP endpoint URL for your InfluxDB instance.
## Multiple urls can be specified as part of the same cluster,
## this means that only ONE of the urls will be written to each interval.
# urls = ["udp://localhost:8089"] # UDP endpoint example
urls = ["http://influxdbip:8086"] # required
## The target database for metrics (telegraf will create it if not exists).
database = "application" # required
## Precision of writes, valid values are "ns", "us" (or "µs"), "ms", "s", "m", "h".
## note: using "s" precision greatly improves InfluxDB compression.
precision = "s"
## Retention policy to write to.
# retention_policy = "default"
## Write consistency (clusters only), can be: "any", "one", "quorum", "all"
# write_consistency = "any"
## Write timeout (for the InfluxDB client), formatted as a string.
## If not provided, will default to 5s. 0s means no timeout (not recommended).
timeout = "7s"
# username = "telegraf"
# password = "metricsmetricsmetricsmetrics"
## Set the user agent for HTTP POSTs (can be useful for log differentiation)
user_agent = "apigee-telegraf"
## Set UDP payload size, defaults to InfluxDB UDP Client default (512 bytes)
# udp_payload = 512
## Optional SSL Config
# ssl_ca = "/etc/telegraf/ca.pem"
# ssl_cert = "/etc/telegraf/cert.pem"
# ssl_key = "/etc/telegraf/key.pem"
## Use SSL but skip chain & host verification
# insecure_skip_verify = false
namedrop = ["latencies"]
[outputs.influxdb.tagpass]
metric_db = ["application"]
[[outputs.influxdb]]
urls = ["http://influxdbip:8086"] # required
database = "system" # required
precision = "s"
timeout = "7s"
user_agent = "apigee-telegraf"
[outputs.influxdb.tagpass]
metric_db = ["system"]
[[outputs.influxdb]]
urls = ["http://influxdbip:8086"] # required
database = "events" # required
precision = "s"
timeout = "7s"
user_agent = "apigee-telegraf"
[outputs.influxdb.tagpass]
metric_db = ["events"]
###############################################################################
# INPUT PLUGINS #
###############################################################################
# Read metrics about cpu usage
[[inputs.cpu]]
## Whether to report per-cpu stats or not
percpu = false
## Whether to report total system cpu stats or not
totalcpu = true
## Comment this line if you want the raw CPU time metrics
fielddrop = ["time_*"]
[inputs.cpu.tags]
metric_db = "system"
# Read metrics about disk usage by mount point
[[inputs.disk]]
## By default, telegraf gather stats for all mountpoints.
## Setting mountpoints will restrict the stats to the specified mountpoints.
# mount_points = ["/"]
## Ignore some mountpoints by filesystem type. For example (dev)tmpfs (usually
## present on /run, /var/run, /dev/shm or /dev).
ignore_fs = ["tmpfs", "devtmpfs"]
[inputs.disk.tags]
metric_db = "system"
# Read metrics about disk IO by device
# [[inputs.diskio]]
## By default, telegraf will gather stats for all devices including
## disk partitions.
## Setting devices will restrict the stats to the specified devices.
# devices = ["sda", "sdb"]
## Uncomment the following line if you do not need disk serial numbers.
# skip_serial_number = true
# Get kernel statistics from /proc/stat
# [[inputs.kernel]]
# no configuration
# Read metrics about memory usage
[[inputs.mem]]
# no configuration
[inputs.mem.tags]
metric_db = "system"
# Get the number of processes and group them by status
# [[inputs.processes]]
# no configuration
# Read metrics about swap memory usage
# [[inputs.swap]]
# no configuration
# Read metrics about system load & uptime
[[inputs.system]]
# no configuration
[inputs.system.tags]
metric_db = "system"
# Read metrics about network interface usage
[[inputs.net]]
## By default, telegraf gathers stats from any up interface (excluding loopback)
## Setting interfaces will tell it to gather these explicit interfaces,
## regardless of status.
##
# interfaces = ["eth0"]
[inputs.net.tags]
metric_db = "system"
# Read TCP metrics such as established, time wait and sockets counts.
[[inputs.netstat]]
# no configuration
[inputs.netstat.tags]
metric_db = "system"
[[inputs.net_response]]
protocol = "tcp"
address = "localhost:7199"
[inputs.net_response.tags]
metric_db = "system"
[[inputs.net_response]]
protocol = "tcp"
address = "localhost:2181"
[inputs.net_response.tags]
metric_db = "system"
# # Stream a log file, like the tail -f command
# [[inputs.tail]]
# ## files to tail.
# ## These accept standard unix glob matching rules, but with the addition of
# ## ** as a "super asterisk". ie:
# ## "/var/log/**.log" -> recursively find all .log files in /var/log
# ## "/var/log/*/*.log" -> find all .log files with a parent dir in /var/log
# ## "/var/log/apache.log" -> just tail the apache log file
# ##
# ## See https://github.com/gobwas/glob for more examples
# ##
# files = ["/var/mymetrics.out"]
# ## Read file from beginning.
# from_beginning = false
#
# ## Data format to consume.
# ## Each data format has it's own unique set of configuration options, read
# ## more about them here:
# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md
# data_format = "influx"
# **** CHANGE 4 of 4 BELOW
##################################################################################
# APIGEE-SPECIFIC INPUT PLUGINS #
# Comment/Uncomment what is needed on the Apigee node where telegraf is running #
##################################################################################
# apigee-zookeeper
[[inputs.zookeeper]]
servers = ["localhost:2181"]
[inputs.zookeeper.tags]
metric_db = "application"
service = "zookeeper"
Attached the screenshot of two same timeseries with different result_types
1721314591000000000 ODC xyz-prod system ds 2181 tcp prod 0.000290183 success 0 success localhost
1721314591000000000 ODC xyz-prod system ds 2181 tcp prod connection_failed 2 connection_failed localhost
Note: I am new to this Telegraf/Influx area correct me If I am stating any terminologies wrong.