· 8 years ago · Oct 12, 2017, 05:44 AM
1# Telegraf Configuration
2#
3# Telegraf is entirely plugin driven. All metrics are gathered from the
4# declared inputs, and sent to the declared outputs.
5#
6# Plugins must be declared in here to be active.
7# To deactivate a plugin, comment out the name and any variables.
8#
9# Use 'telegraf -config telegraf.conf -test' to see what metrics a config
10# file would generate.
11#
12# Environment variables can be used anywhere in this config file, simply prepend
13# them with $. For strings the variable must be within quotes (ie, "$STR_VAR"),
14# for numbers and booleans they should be plain (ie, $INT_VAR, $BOOL_VAR)
15
16
17# Global tags can be specified here in key="value" format.
18[global_tags]
19 # dc = "us-east-1" # will tag all metrics with dc=us-east-1
20 # rack = "1a"
21 ## Environment variables can be used as tags, and throughout the config file
22 # user = "$USER"
23
24
25# Configuration for telegraf agent
26[agent]
27 ## Default data collection interval for all inputs
28 interval = "10s"
29 ## Rounds collection interval to 'interval'
30 ## ie, if interval="10s" then always collect on :00, :10, :20, etc.
31 round_interval = true
32
33 ## Telegraf will send metrics to outputs in batches of at most
34 ## metric_batch_size metrics.
35 ## This controls the size of writes that Telegraf sends to output plugins.
36 metric_batch_size = 1000
37
38 ## For failed writes, telegraf will cache metric_buffer_limit metrics for each
39 ## output, and will flush this buffer on a successful write. Oldest metrics
40 ## are dropped first when this buffer fills.
41 ## This buffer only fills when writes fail to output plugin(s).
42 metric_buffer_limit = 10000
43
44 ## Collection jitter is used to jitter the collection by a random amount.
45 ## Each plugin will sleep for a random time within jitter before collecting.
46 ## This can be used to avoid many plugins querying things like sysfs at the
47 ## same time, which can have a measurable effect on the system.
48 collection_jitter = "0s"
49
50 ## Default flushing interval for all outputs. You shouldn't set this below
51 ## interval. Maximum flush_interval will be flush_interval + flush_jitter
52 flush_interval = "10s"
53 ## Jitter the flush interval by a random amount. This is primarily to avoid
54 ## large write spikes for users running a large number of telegraf instances.
55 ## ie, a jitter of 5s and interval 10s means flushes will happen every 10-15s
56 flush_jitter = "0s"
57
58 ## By default or when set to "0s", precision will be set to the same
59 ## timestamp order as the collection interval, with the maximum being 1s.
60 ## ie, when interval = "10s", precision will be "1s"
61 ## when interval = "250ms", precision will be "1ms"
62 ## Precision will NOT be used for service inputs. It is up to each individual
63 ## service input to set the timestamp at the appropriate precision.
64 ## Valid time units are "ns", "us" (or "µs"), "ms", "s".
65 precision = ""
66
67 ## Logging configuration:
68 ## Run telegraf with debug log messages.
69 debug = false
70 ## Run telegraf in quiet mode (error log messages only).
71 quiet = false
72 ## Specify the log file name. The empty string means to log to stderr.
73 logfile = ""
74
75 ## Override default hostname, if empty use os.Hostname()
76 hostname = "sds_mgnt"
77 ## If set to true, do no set the "host" tag in the telegraf agent.
78 omit_hostname = false
79
80
81###############################################################################
82# OUTPUT PLUGINS #
83###############################################################################
84
85# Configuration for influxdb server to send metrics to
86[[outputs.influxdb]]
87 ## The HTTP or UDP URL for your InfluxDB instance. Each item should be
88 ## of the form:
89 ## scheme "://" host [ ":" port]
90 ##
91 ## Multiple urls can be specified as part of the same cluster,
92 ## this means that only ONE of the urls will be written to each interval.
93 # urls = ["udp://localhost:8089"] # UDP endpoint example
94 urls = ["http://172.27.211.101:8086"] # required
95 ## The target database for metrics (telegraf will create it if not exists).
96 database = "sds_mgnt" # required
97
98 ## Name of existing retention policy to write to. Empty string writes to
99 ## the default retention policy.
100 retention_policy = ""
101 ## Write consistency (clusters only), can be: "any", "one", "quorum", "all"
102 write_consistency = "any"
103
104 ## Write timeout (for the InfluxDB client), formatted as a string.
105 ## If not provided, will default to 5s. 0s means no timeout (not recommended).
106 timeout = "5s"
107 # username = "telegraf"
108 # password = "metricsmetricsmetricsmetrics"
109 ## Set the user agent for HTTP POSTs (can be useful for log differentiation)
110 # user_agent = "telegraf"
111 ## Set UDP payload size, defaults to InfluxDB UDP Client default (512 bytes)
112 # udp_payload = 512
113
114 ## Optional SSL Config
115 # ssl_ca = "/etc/telegraf/ca.pem"
116 # ssl_cert = "/etc/telegraf/cert.pem"
117 # ssl_key = "/etc/telegraf/key.pem"
118 ## Use SSL but skip chain & host verification
119 # insecure_skip_verify = false
120
121 ## HTTP Proxy Config
122 # http_proxy = "http://corporate.proxy:3128"
123
124 ## Optional HTTP headers
125 # http_headers = {"X-Special-Header" = "Special-Value"}
126
127 ## Compress each HTTP request payload using GZIP.
128 # content_encoding = "gzip"
129
130
131# # Configuration for Amon Server to send metrics to.
132# [[outputs.amon]]
133# ## Amon Server Key
134# server_key = "my-server-key" # required.
135#
136# ## Amon Instance URL
137# amon_instance = "https://youramoninstance" # required
138#
139# ## Connection timeout.
140# # timeout = "5s"
141
142
143# # Configuration for the AMQP server to send metrics to
144# [[outputs.amqp]]
145# ## AMQP url
146# url = "amqp://localhost:5672/influxdb"
147# ## AMQP exchange
148# exchange = "telegraf"
149# ## Auth method. PLAIN and EXTERNAL are supported
150# ## Using EXTERNAL requires enabling the rabbitmq_auth_mechanism_ssl plugin as
151# ## described here: https://www.rabbitmq.com/plugins.html
152# # auth_method = "PLAIN"
153# ## Telegraf tag to use as a routing key
154# ## ie, if this tag exists, its value will be used as the routing key
155# routing_tag = "host"
156#
157# ## InfluxDB retention policy
158# # retention_policy = "default"
159# ## InfluxDB database
160# # database = "telegraf"
161#
162# ## Write timeout, formatted as a string. If not provided, will default
163# ## to 5s. 0s means no timeout (not recommended).
164# # timeout = "5s"
165#
166# ## Optional SSL Config
167# # ssl_ca = "/etc/telegraf/ca.pem"
168# # ssl_cert = "/etc/telegraf/cert.pem"
169# # ssl_key = "/etc/telegraf/key.pem"
170# ## Use SSL but skip chain & host verification
171# # insecure_skip_verify = false
172#
173# ## Data format to output.
174# ## Each data format has its own unique set of configuration options, read
175# ## more about them here:
176# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md
177# data_format = "influx"
178
179
180# # Configuration for AWS CloudWatch output.
181# [[outputs.cloudwatch]]
182# ## Amazon REGION
183# region = "us-east-1"
184#
185# ## Amazon Credentials
186# ## Credentials are loaded in the following order
187# ## 1) Assumed credentials via STS if role_arn is specified
188# ## 2) explicit credentials from 'access_key' and 'secret_key'
189# ## 3) shared profile from 'profile'
190# ## 4) environment variables
191# ## 5) shared credentials file
192# ## 6) EC2 Instance Profile
193# #access_key = ""
194# #secret_key = ""
195# #token = ""
196# #role_arn = ""
197# #profile = ""
198# #shared_credential_file = ""
199#
200# ## Namespace for the CloudWatch MetricDatums
201# namespace = "InfluxData/Telegraf"
202
203
204# # Configuration for DataDog API to send metrics to.
205# [[outputs.datadog]]
206# ## Datadog API key
207# apikey = "my-secret-key" # required.
208#
209# ## Connection timeout.
210# # timeout = "5s"
211
212
213# # Send metrics to nowhere at all
214# [[outputs.discard]]
215# # no configuration
216
217
218# # Configuration for Elasticsearch to send metrics to.
219# [[outputs.elasticsearch]]
220# ## The full HTTP endpoint URL for your Elasticsearch instance
221# ## Multiple urls can be specified as part of the same cluster,
222# ## this means that only ONE of the urls will be written to each interval.
223# urls = [ "http://node1.es.example.com:9200" ] # required.
224# ## Elasticsearch client timeout, defaults to "5s" if not set.
225# timeout = "5s"
226# ## Set to true to ask Elasticsearch a list of all cluster nodes,
227# ## thus it is not necessary to list all nodes in the urls config option.
228# enable_sniffer = false
229# ## Set the interval to check if the Elasticsearch nodes are available
230# ## Setting to "0s" will disable the health check (not recommended in production)
231# health_check_interval = "10s"
232# ## HTTP basic authentication details (eg. when using Shield)
233# # username = "telegraf"
234# # password = "mypassword"
235#
236# ## Index Config
237# ## The target index for metrics (Elasticsearch will create if it not exists).
238# ## You can use the date specifiers below to create indexes per time frame.
239# ## The metric timestamp will be used to decide the destination index name
240# # %Y - year (2016)
241# # %y - last two digits of year (00..99)
242# # %m - month (01..12)
243# # %d - day of month (e.g., 01)
244# # %H - hour (00..23)
245# index_name = "telegraf-%Y.%m.%d" # required.
246#
247# ## Template Config
248# ## Set to true if you want telegraf to manage its index template.
249# ## If enabled it will create a recommended index template for telegraf indexes
250# manage_template = true
251# ## The template name used for telegraf indexes
252# template_name = "telegraf"
253# ## Set to true if you want telegraf to overwrite an existing template
254# overwrite_template = false
255
256
257# # Send telegraf metrics to file(s)
258# [[outputs.file]]
259# ## Files to write to, "stdout" is a specially handled file.
260# files = ["stdout", "/tmp/metrics.out"]
261#
262# ## Data format to output.
263# ## Each data format has its own unique set of configuration options, read
264# ## more about them here:
265# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md
266# data_format = "influx"
267
268
269# # Configuration for Graphite server to send metrics to
270# [[outputs.graphite]]
271# ## TCP endpoint for your graphite instance.
272# ## If multiple endpoints are configured, output will be load balanced.
273# ## Only one of the endpoints will be written to with each iteration.
274# servers = ["localhost:2003"]
275# ## Prefix metrics name
276# prefix = ""
277# ## Graphite output template
278# ## see https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md
279# template = "host.tags.measurement.field"
280# ## timeout in seconds for the write connection to graphite
281# timeout = 2
282#
283# ## Optional SSL Config
284# # ssl_ca = "/etc/telegraf/ca.pem"
285# # ssl_cert = "/etc/telegraf/cert.pem"
286# # ssl_key = "/etc/telegraf/key.pem"
287# ## Use SSL but skip chain & host verification
288# # insecure_skip_verify = false
289
290
291# # Send telegraf metrics to graylog(s)
292# [[outputs.graylog]]
293# ## UDP endpoint for your graylog instance.
294# servers = ["127.0.0.1:12201", "192.168.1.1:12201"]
295
296
297# # Configuration for sending metrics to an Instrumental project
298# [[outputs.instrumental]]
299# ## Project API Token (required)
300# api_token = "API Token" # required
301# ## Prefix the metrics with a given name
302# prefix = ""
303# ## Stats output template (Graphite formatting)
304# ## see https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md#graphite
305# template = "host.tags.measurement.field"
306# ## Timeout in seconds to connect
307# timeout = "2s"
308# ## Display Communcation to Instrumental
309# debug = false
310
311
312# # Configuration for the Kafka server to send metrics to
313# [[outputs.kafka]]
314# ## URLs of kafka brokers
315# brokers = ["localhost:9092"]
316# ## Kafka topic for producer messages
317# topic = "telegraf"
318# ## Telegraf tag to use as a routing key
319# ## ie, if this tag exists, its value will be used as the routing key
320# routing_tag = "host"
321#
322# ## CompressionCodec represents the various compression codecs recognized by
323# ## Kafka in messages.
324# ## 0 : No compression
325# ## 1 : Gzip compression
326# ## 2 : Snappy compression
327# compression_codec = 0
328#
329# ## RequiredAcks is used in Produce Requests to tell the broker how many
330# ## replica acknowledgements it must see before responding
331# ## 0 : the producer never waits for an acknowledgement from the broker.
332# ## This option provides the lowest latency but the weakest durability
333# ## guarantees (some data will be lost when a server fails).
334# ## 1 : the producer gets an acknowledgement after the leader replica has
335# ## received the data. This option provides better durability as the
336# ## client waits until the server acknowledges the request as successful
337# ## (only messages that were written to the now-dead leader but not yet
338# ## replicated will be lost).
339# ## -1: the producer gets an acknowledgement after all in-sync replicas have
340# ## received the data. This option provides the best durability, we
341# ## guarantee that no messages will be lost as long as at least one in
342# ## sync replica remains.
343# required_acks = -1
344#
345# ## The total number of times to retry sending a message
346# max_retry = 3
347#
348# ## Optional SSL Config
349# # ssl_ca = "/etc/telegraf/ca.pem"
350# # ssl_cert = "/etc/telegraf/cert.pem"
351# # ssl_key = "/etc/telegraf/key.pem"
352# ## Use SSL but skip chain & host verification
353# # insecure_skip_verify = false
354#
355# ## Optional SASL Config
356# # sasl_username = "kafka"
357# # sasl_password = "secret"
358#
359# ## Data format to output.
360# ## Each data format has its own unique set of configuration options, read
361# ## more about them here:
362# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md
363# data_format = "influx"
364
365
366# # Configuration for the AWS Kinesis output.
367# [[outputs.kinesis]]
368# ## Amazon REGION of kinesis endpoint.
369# region = "ap-southeast-2"
370#
371# ## Amazon Credentials
372# ## Credentials are loaded in the following order
373# ## 1) Assumed credentials via STS if role_arn is specified
374# ## 2) explicit credentials from 'access_key' and 'secret_key'
375# ## 3) shared profile from 'profile'
376# ## 4) environment variables
377# ## 5) shared credentials file
378# ## 6) EC2 Instance Profile
379# #access_key = ""
380# #secret_key = ""
381# #token = ""
382# #role_arn = ""
383# #profile = ""
384# #shared_credential_file = ""
385#
386# ## Kinesis StreamName must exist prior to starting telegraf.
387# streamname = "StreamName"
388# ## PartitionKey as used for sharding data.
389# partitionkey = "PartitionKey"
390# ## If set the paritionKey will be a random UUID on every put.
391# ## This allows for scaling across multiple shards in a stream.
392# ## This will cause issues with ordering.
393# use_random_partitionkey = false
394#
395#
396# ## Data format to output.
397# ## Each data format has its own unique set of configuration options, read
398# ## more about them here:
399# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md
400# data_format = "influx"
401#
402# ## debug will show upstream aws messages.
403# debug = false
404
405
406# # Configuration for Librato API to send metrics to.
407# [[outputs.librato]]
408# ## Librator API Docs
409# ## http://dev.librato.com/v1/metrics-authentication
410# ## Librato API user
411# api_user = "telegraf@influxdb.com" # required.
412# ## Librato API token
413# api_token = "my-secret-token" # required.
414# ## Debug
415# # debug = false
416# ## Connection timeout.
417# # timeout = "5s"
418# ## Output source Template (same as graphite buckets)
419# ## see https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md#graphite
420# ## This template is used in librato's source (not metric's name)
421# template = "host"
422#
423
424
425# # Configuration for MQTT server to send metrics to
426# [[outputs.mqtt]]
427# servers = ["localhost:1883"] # required.
428#
429# ## MQTT outputs send metrics to this topic format
430# ## "<topic_prefix>/<hostname>/<pluginname>/"
431# ## ex: prefix/web01.example.com/mem
432# topic_prefix = "telegraf"
433#
434# ## username and password to connect MQTT server.
435# # username = "telegraf"
436# # password = "metricsmetricsmetricsmetrics"
437#
438# ## client ID, if not set a random ID is generated
439# # client_id = ""
440#
441# ## Optional SSL Config
442# # ssl_ca = "/etc/telegraf/ca.pem"
443# # ssl_cert = "/etc/telegraf/cert.pem"
444# # ssl_key = "/etc/telegraf/key.pem"
445# ## Use SSL but skip chain & host verification
446# # insecure_skip_verify = false
447#
448# ## Data format to output.
449# ## Each data format has its own unique set of configuration options, read
450# ## more about them here:
451# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md
452# data_format = "influx"
453
454
455# # Send telegraf measurements to NATS
456# [[outputs.nats]]
457# ## URLs of NATS servers
458# servers = ["nats://localhost:4222"]
459# ## Optional credentials
460# # username = ""
461# # password = ""
462# ## NATS subject for producer messages
463# subject = "telegraf"
464#
465# ## Optional SSL Config
466# # ssl_ca = "/etc/telegraf/ca.pem"
467# # ssl_cert = "/etc/telegraf/cert.pem"
468# # ssl_key = "/etc/telegraf/key.pem"
469# ## Use SSL but skip chain & host verification
470# # insecure_skip_verify = false
471#
472# ## Data format to output.
473# ## Each data format has its own unique set of configuration options, read
474# ## more about them here:
475# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md
476# data_format = "influx"
477
478
479# # Send telegraf measurements to NSQD
480# [[outputs.nsq]]
481# ## Location of nsqd instance listening on TCP
482# server = "localhost:4150"
483# ## NSQ topic for producer messages
484# topic = "telegraf"
485#
486# ## Data format to output.
487# ## Each data format has its own unique set of configuration options, read
488# ## more about them here:
489# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md
490# data_format = "influx"
491
492
493# # Configuration for OpenTSDB server to send metrics to
494# [[outputs.opentsdb]]
495# ## prefix for metrics keys
496# prefix = "my.specific.prefix."
497#
498# ## DNS name of the OpenTSDB server
499# ## Using "opentsdb.example.com" or "tcp://opentsdb.example.com" will use the
500# ## telnet API. "http://opentsdb.example.com" will use the Http API.
501# host = "opentsdb.example.com"
502#
503# ## Port of the OpenTSDB server
504# port = 4242
505#
506# ## Number of data points to send to OpenTSDB in Http requests.
507# ## Not used with telnet API.
508# httpBatchSize = 50
509#
510# ## Debug true - Prints OpenTSDB communication
511# debug = false
512
513
514# # Configuration for the Prometheus client to spawn
515# [[outputs.prometheus_client]]
516# ## Address to listen on
517# # listen = ":9273"
518#
519# ## Interval to expire metrics and not deliver to prometheus, 0 == no expiration
520# # expiration_interval = "60s"
521
522
523# # Configuration for the Riemann server to send metrics to
524# [[outputs.riemann]]
525# ## The full TCP or UDP URL of the Riemann server
526# url = "tcp://localhost:5555"
527#
528# ## Riemann event TTL, floating-point time in seconds.
529# ## Defines how long that an event is considered valid for in Riemann
530# # ttl = 30.0
531#
532# ## Separator to use between measurement and field name in Riemann service name
533# ## This does not have any effect if 'measurement_as_attribute' is set to 'true'
534# separator = "/"
535#
536# ## Set measurement name as Riemann attribute 'measurement', instead of prepending it to the Riemann service name
537# # measurement_as_attribute = false
538#
539# ## Send string metrics as Riemann event states.
540# ## Unless enabled all string metrics will be ignored
541# # string_as_state = false
542#
543# ## A list of tag keys whose values get sent as Riemann tags.
544# ## If empty, all Telegraf tag values will be sent as tags
545# # tag_keys = ["telegraf","custom_tag"]
546#
547# ## Additional Riemann tags to send.
548# # tags = ["telegraf-output"]
549#
550# ## Description for Riemann event
551# # description_text = "metrics collected from telegraf"
552#
553# ## Riemann client write timeout, defaults to "5s" if not set.
554# # timeout = "5s"
555
556
557# # Configuration for the Riemann server to send metrics to
558# [[outputs.riemann_legacy]]
559# ## URL of server
560# url = "localhost:5555"
561# ## transport protocol to use either tcp or udp
562# transport = "tcp"
563# ## separator to use between input name and field name in Riemann service name
564# separator = " "
565
566
567# # Generic socket writer capable of handling multiple socket types.
568# [[outputs.socket_writer]]
569# ## URL to connect to
570# # address = "tcp://127.0.0.1:8094"
571# # address = "tcp://example.com:http"
572# # address = "tcp4://127.0.0.1:8094"
573# # address = "tcp6://127.0.0.1:8094"
574# # address = "tcp6://[2001:db8::1]:8094"
575# # address = "udp://127.0.0.1:8094"
576# # address = "udp4://127.0.0.1:8094"
577# # address = "udp6://127.0.0.1:8094"
578# # address = "unix:///tmp/telegraf.sock"
579# # address = "unixgram:///tmp/telegraf.sock"
580#
581# ## Period between keep alive probes.
582# ## Only applies to TCP sockets.
583# ## 0 disables keep alive probes.
584# ## Defaults to the OS configuration.
585# # keep_alive_period = "5m"
586#
587# ## Data format to generate.
588# ## Each data format has its own unique set of configuration options, read
589# ## more about them here:
590# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md
591# # data_format = "influx"
592
593
594
595###############################################################################
596# PROCESSOR PLUGINS #
597###############################################################################
598
599# # Print all metrics that pass through this filter.
600# [[processors.printer]]
601
602
603
604###############################################################################
605# AGGREGATOR PLUGINS #
606###############################################################################
607
608# # Create aggregate histograms.
609# [[aggregators.histogram]]
610# ## The period in which to flush the aggregator.
611# period = "30s"
612#
613# ## If true, the original metric will be dropped by the
614# ## aggregator and will not get sent to the output plugins.
615# drop_original = false
616#
617# ## Example config that aggregates all fields of the metric.
618# # [[aggregators.histogram.config]]
619# # ## The set of buckets.
620# # buckets = [0.0, 15.6, 34.5, 49.1, 71.5, 80.5, 94.5, 100.0]
621# # ## The name of metric.
622# # measurement_name = "cpu"
623#
624# ## Example config that aggregates only specific fields of the metric.
625# # [[aggregators.histogram.config]]
626# # ## The set of buckets.
627# # buckets = [0.0, 10.0, 20.0, 30.0, 40.0, 50.0, 60.0, 70.0, 80.0, 90.0, 100.0]
628# # ## The name of metric.
629# # measurement_name = "diskio"
630# # ## The concrete fields of metric
631# # fields = ["io_time", "read_time", "write_time"]
632
633
634# # Keep the aggregate min/max of each metric passing through.
635# [[aggregators.minmax]]
636# ## General Aggregator Arguments:
637# ## The period on which to flush & clear the aggregator.
638# period = "30s"
639# ## If true, the original metric will be dropped by the
640# ## aggregator and will not get sent to the output plugins.
641# drop_original = false
642
643
644
645###############################################################################
646# INPUT PLUGINS #
647###############################################################################
648
649# Read metrics about cpu usage
650[[inputs.cpu]]
651 ## Whether to report per-cpu stats or not
652 percpu = true
653 ## Whether to report total system cpu stats or not
654 totalcpu = true
655 ## If true, collect raw CPU time metrics.
656 collect_cpu_time = false
657 ## If true, compute and report the sum of all non-idle CPU states.
658 report_active = false
659
660
661# Read metrics about disk usage by mount point
662[[inputs.disk]]
663 ## By default, telegraf gather stats for all mountpoints.
664 ## Setting mountpoints will restrict the stats to the specified mountpoints.
665 mount_points = ["/"]
666
667 ## Ignore some mountpoints by filesystem type. For example (dev)tmpfs (usually
668 ## present on /run, /var/run, /dev/shm or /dev).
669 ignore_fs = ["tmpfs", "devtmpfs", "devfs"]
670
671
672# Read metrics about disk IO by device
673[[inputs.diskio]]
674 ## By default, telegraf will gather stats for all devices including
675 ## disk partitions.
676 ## Setting devices will restrict the stats to the specified devices.
677 devices = ["sda"]
678 ## Uncomment the following line if you need disk serial numbers.
679 # skip_serial_number = false
680 #
681 ## On systems which support it, device metadata can be added in the form of
682 ## tags.
683 ## Currently only Linux is supported via udev properties. You can view
684 ## available properties for a device by running:
685 ## 'udevadm info -q property -n /dev/sda'
686 # device_tags = ["ID_FS_TYPE", "ID_FS_USAGE"]
687 #
688 ## Using the same metadata source as device_tags, you can also customize the
689 ## name of the device via templates.
690 ## The 'name_templates' parameter is a list of templates to try and apply to
691 ## the device. The template may contain variables in the form of '$PROPERTY' or
692 ## '${PROPERTY}'. The first template which does not contain any variables not
693 ## present for the device is used as the device name tag.
694 ## The typical use case is for LVM volumes, to get the VG/LV name instead of
695 ## the near-meaningless DM-0 name.
696 # name_templates = ["$ID_FS_LABEL","$DM_VG_NAME/$DM_LV_NAME"]
697
698
699# Get kernel statistics from /proc/stat
700[[inputs.kernel]]
701 # no configuration
702
703
704# Read metrics about memory usage
705[[inputs.mem]]
706 # no configuration
707
708
709# Get the number of processes and group them by status
710[[inputs.processes]]
711 # no configuration
712
713
714# Read metrics about swap memory usage
715[[inputs.swap]]
716 # no configuration
717
718
719# Read metrics about system load & uptime
720[[inputs.system]]
721 # no configuration
722
723
724# # Read stats from aerospike server(s)
725# [[inputs.aerospike]]
726# ## Aerospike servers to connect to (with port)
727# ## This plugin will query all namespaces the aerospike
728# ## server has configured and get stats for them.
729# servers = ["localhost:3000"]
730
731
732# # Read Apache status information (mod_status)
733# [[inputs.apache]]
734# ## An array of URLs to gather from, must be directed at the machine
735# ## readable version of the mod_status page including the auto query string.
736# ## Default is "http://localhost/server-status?auto".
737# urls = ["http://localhost/server-status?auto"]
738#
739# ## Credentials for basic HTTP authentication.
740# # username = "myuser"
741# # password = "mypassword"
742#
743# ## Maximum time to receive response.
744# # response_timeout = "5s"
745#
746# ## Optional SSL Config
747# # ssl_ca = "/etc/telegraf/ca.pem"
748# # ssl_cert = "/etc/telegraf/cert.pem"
749# # ssl_key = "/etc/telegraf/key.pem"
750# ## Use SSL but skip chain & host verification
751# # insecure_skip_verify = false
752
753
754# # Read metrics of bcache from stats_total and dirty_data
755# [[inputs.bcache]]
756# ## Bcache sets path
757# ## If not specified, then default is:
758# bcachePath = "/sys/fs/bcache"
759#
760# ## By default, telegraf gather stats for all bcache devices
761# ## Setting devices will restrict the stats to the specified
762# ## bcache devices.
763# bcacheDevs = ["bcache0"]
764
765
766# # Read Cassandra metrics through Jolokia
767# [[inputs.cassandra]]
768# # This is the context root used to compose the jolokia url
769# context = "/jolokia/read"
770# ## List of cassandra servers exposing jolokia read service
771# servers = ["myuser:mypassword@10.10.10.1:8778","10.10.10.2:8778",":8778"]
772# ## List of metrics collected on above servers
773# ## Each metric consists of a jmx path.
774# ## This will collect all heap memory usage metrics from the jvm and
775# ## ReadLatency metrics for all keyspaces and tables.
776# ## "type=Table" in the query works with Cassandra3.0. Older versions might
777# ## need to use "type=ColumnFamily"
778# metrics = [
779# "/java.lang:type=Memory/HeapMemoryUsage",
780# "/org.apache.cassandra.metrics:type=Table,keyspace=*,scope=*,name=ReadLatency"
781# ]
782
783
784# # Collects performance metrics from the MON and OSD nodes in a Ceph storage cluster.
785# [[inputs.ceph]]
786# ## This is the recommended interval to poll. Too frequent and you will lose
787# ## data points due to timeouts during rebalancing and recovery
788# interval = '1m'
789#
790# ## All configuration values are optional, defaults are shown below
791#
792# ## location of ceph binary
793# ceph_binary = "/usr/bin/ceph"
794#
795# ## directory in which to look for socket files
796# socket_dir = "/var/run/ceph"
797#
798# ## prefix of MON and OSD socket files, used to determine socket type
799# mon_prefix = "ceph-mon"
800# osd_prefix = "ceph-osd"
801#
802# ## suffix used to identify socket files
803# socket_suffix = "asok"
804#
805# ## Ceph user to authenticate as
806# ceph_user = "client.admin"
807#
808# ## Ceph configuration to use to locate the cluster
809# ceph_config = "/etc/ceph/ceph.conf"
810#
811# ## Whether to gather statistics via the admin socket
812# gather_admin_socket_stats = true
813#
814# ## Whether to gather statistics via ceph commands
815# gather_cluster_stats = false
816
817
818# # Read specific statistics per cgroup
819# [[inputs.cgroup]]
820# ## Directories in which to look for files, globs are supported.
821# ## Consider restricting paths to the set of cgroups you really
822# ## want to monitor if you have a large number of cgroups, to avoid
823# ## any cardinality issues.
824# # paths = [
825# # "/cgroup/memory",
826# # "/cgroup/memory/child1",
827# # "/cgroup/memory/child2/*",
828# # ]
829# ## cgroup stat fields, as file names, globs are supported.
830# ## these file names are appended to each path from above.
831# # files = ["memory.*usage*", "memory.limit_in_bytes"]
832
833
834# # Get standard chrony metrics, requires chronyc executable.
835# [[inputs.chrony]]
836# ## If true, chronyc tries to perform a DNS lookup for the time server.
837# # dns_lookup = false
838
839
840# # Pull Metric Statistics from Amazon CloudWatch
841# [[inputs.cloudwatch]]
842# ## Amazon Region
843# region = "us-east-1"
844#
845# ## Amazon Credentials
846# ## Credentials are loaded in the following order
847# ## 1) Assumed credentials via STS if role_arn is specified
848# ## 2) explicit credentials from 'access_key' and 'secret_key'
849# ## 3) shared profile from 'profile'
850# ## 4) environment variables
851# ## 5) shared credentials file
852# ## 6) EC2 Instance Profile
853# #access_key = ""
854# #secret_key = ""
855# #token = ""
856# #role_arn = ""
857# #profile = ""
858# #shared_credential_file = ""
859#
860# # The minimum period for Cloudwatch metrics is 1 minute (60s). However not all
861# # metrics are made available to the 1 minute period. Some are collected at
862# # 3 minute, 5 minute, or larger intervals. See https://aws.amazon.com/cloudwatch/faqs/#monitoring.
863# # Note that if a period is configured that is smaller than the minimum for a
864# # particular metric, that metric will not be returned by the Cloudwatch API
865# # and will not be collected by Telegraf.
866# #
867# ## Requested CloudWatch aggregation Period (required - must be a multiple of 60s)
868# period = "5m"
869#
870# ## Collection Delay (required - must account for metrics availability via CloudWatch API)
871# delay = "5m"
872#
873# ## Recomended: use metric 'interval' that is a multiple of 'period' to avoid
874# ## gaps or overlap in pulled data
875# interval = "5m"
876#
877# ## Configure the TTL for the internal cache of metrics.
878# ## Defaults to 1 hr if not specified
879# #cache_ttl = "10m"
880#
881# ## Metric Statistic Namespace (required)
882# namespace = "AWS/ELB"
883#
884# ## Maximum requests per second. Note that the global default AWS rate limit is
885# ## 400 reqs/sec, so if you define multiple namespaces, these should add up to a
886# ## maximum of 400. Optional - default value is 200.
887# ## See http://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_limits.html
888# ratelimit = 200
889#
890# ## Metrics to Pull (optional)
891# ## Defaults to all Metrics in Namespace if nothing is provided
892# ## Refreshes Namespace available metrics every 1h
893# #[[inputs.cloudwatch.metrics]]
894# # names = ["Latency", "RequestCount"]
895# #
896# # ## Dimension filters for Metric (optional)
897# # [[inputs.cloudwatch.metrics.dimensions]]
898# # name = "LoadBalancerName"
899# # value = "p-example"
900
901
902# # Collects conntrack stats from the configured directories and files.
903# [[inputs.conntrack]]
904# ## The following defaults would work with multiple versions of conntrack.
905# ## Note the nf_ and ip_ filename prefixes are mutually exclusive across
906# ## kernel versions, as are the directory locations.
907#
908# ## Superset of filenames to look for within the conntrack dirs.
909# ## Missing files will be ignored.
910# files = ["ip_conntrack_count","ip_conntrack_max",
911# "nf_conntrack_count","nf_conntrack_max"]
912#
913# ## Directories to search within for the conntrack files above.
914# ## Missing directrories will be ignored.
915# dirs = ["/proc/sys/net/ipv4/netfilter","/proc/sys/net/netfilter"]
916
917
918# # Gather health check statuses from services registered in Consul
919# [[inputs.consul]]
920# ## Most of these values defaults to the one configured on a Consul's agent level.
921# ## Optional Consul server address (default: "localhost")
922# # address = "localhost"
923# ## Optional URI scheme for the Consul server (default: "http")
924# # scheme = "http"
925# ## Optional ACL token used in every request (default: "")
926# # token = ""
927# ## Optional username used for request HTTP Basic Authentication (default: "")
928# # username = ""
929# ## Optional password used for HTTP Basic Authentication (default: "")
930# # password = ""
931# ## Optional data centre to query the health checks from (default: "")
932# # datacentre = ""
933
934
935# # Read metrics from one or many couchbase clusters
936# [[inputs.couchbase]]
937# ## specify servers via a url matching:
938# ## [protocol://][:password]@address[:port]
939# ## e.g.
940# ## http://couchbase-0.example.com/
941# ## http://admin:secret@couchbase-0.example.com:8091/
942# ##
943# ## If no servers are specified, then localhost is used as the host.
944# ## If no protocol is specifed, HTTP is used.
945# ## If no port is specified, 8091 is used.
946# servers = ["http://localhost:8091"]
947
948
949# # Read CouchDB Stats from one or more servers
950# [[inputs.couchdb]]
951# ## Works with CouchDB stats endpoints out of the box
952# ## Multiple HOSTs from which to read CouchDB stats:
953# hosts = ["http://localhost:8086/_stats"]
954
955
956# # Read metrics from one or many disque servers
957# [[inputs.disque]]
958# ## An array of URI to gather stats about. Specify an ip or hostname
959# ## with optional port and password.
960# ## ie disque://localhost, disque://10.10.3.33:18832, 10.0.0.1:10000, etc.
961# ## If no servers are specified, then localhost is used as the host.
962# servers = ["localhost"]
963
964
965# # Provide a native collection for dmsetup based statistics for dm-cache
966# [[inputs.dmcache]]
967# ## Whether to report per-device stats or not
968# per_device = true
969
970
971# # Query given DNS server and gives statistics
972# [[inputs.dns_query]]
973# ## servers to query
974# servers = ["8.8.8.8"]
975#
976# ## Network is the network protocol name.
977# # network = "udp"
978#
979# ## Domains or subdomains to query.
980# # domains = ["."]
981#
982# ## Query record type.
983# ## Posible values: A, AAAA, CNAME, MX, NS, PTR, TXT, SOA, SPF, SRV.
984# # record_type = "A"
985#
986# ## Dns server port.
987# # port = 53
988#
989# ## Query timeout in seconds.
990# # timeout = 2
991
992
993# # Read metrics about docker containers
994 [[inputs.docker]]
995# ## Docker Endpoint
996# ## To use TCP, set endpoint = "tcp://[ip]:[port]"
997# ## To use environment variables (ie, docker-machine), set endpoint = "ENV"
998 endpoint = "unix:///var/run/docker.sock"
999#
1000# ## Only collect metrics for these containers, collect all if empty
1001# container_names = []
1002#
1003# ## Containers to include and exclude. Globs accepted.
1004# ## Note that an empty array for both will include all containers
1005# container_name_include = []
1006# container_name_exclude = []
1007#
1008# ## Timeout for docker list, info, and stats commands
1009# timeout = "5s"
1010#
1011# ## Whether to report for each container per-device blkio (8:0, 8:1...) and
1012# ## network (eth0, eth1, ...) stats or not
1013# perdevice = true
1014# ## Whether to report for each container total blkio and network stats or not
1015# total = false
1016# ## Which environment variables should we use as a tag
1017# ##tag_env = ["JAVA_HOME", "HEAP_SIZE"]
1018#
1019# ## docker labels to include and exclude as tags. Globs accepted.
1020# ## Note that an empty array for both will include all labels as tags
1021# docker_label_include = []
1022# docker_label_exclude = []
1023#
1024# ## Optional SSL Config
1025# # ssl_ca = "/etc/telegraf/ca.pem"
1026# # ssl_cert = "/etc/telegraf/cert.pem"
1027# # ssl_key = "/etc/telegraf/key.pem"
1028# ## Use SSL but skip chain & host verification
1029# # insecure_skip_verify = false
1030
1031
1032# # Read statistics from one or many dovecot servers
1033# [[inputs.dovecot]]
1034# ## specify dovecot servers via an address:port list
1035# ## e.g.
1036# ## localhost:24242
1037# ##
1038# ## If no servers are specified, then localhost is used as the host.
1039# servers = ["localhost:24242"]
1040# ## Type is one of "user", "domain", "ip", or "global"
1041# type = "global"
1042# ## Wildcard matches like "*.com". An empty string "" is same as "*"
1043# ## If type = "ip" filters should be <IP/network>
1044# filters = [""]
1045
1046
1047# # Read stats from one or more Elasticsearch servers or clusters
1048# [[inputs.elasticsearch]]
1049# ## specify a list of one or more Elasticsearch servers
1050# # you can add username and password to your url to use basic authentication:
1051# # servers = ["http://user:pass@localhost:9200"]
1052# servers = ["http://localhost:9200"]
1053#
1054# ## Timeout for HTTP requests to the elastic search server(s)
1055# http_timeout = "5s"
1056#
1057# ## When local is true (the default), the node will read only its own stats.
1058# ## Set local to false when you want to read the node stats from all nodes
1059# ## of the cluster.
1060# local = true
1061#
1062# ## Set cluster_health to true when you want to also obtain cluster health stats
1063# cluster_health = false
1064#
1065# ## Set cluster_stats to true when you want to also obtain cluster stats from the
1066# ## Master node.
1067# cluster_stats = false
1068#
1069# ## Optional SSL Config
1070# # ssl_ca = "/etc/telegraf/ca.pem"
1071# # ssl_cert = "/etc/telegraf/cert.pem"
1072# # ssl_key = "/etc/telegraf/key.pem"
1073# ## Use SSL but skip chain & host verification
1074# # insecure_skip_verify = false
1075
1076
1077# # Read metrics from one or more commands that can output to stdout
1078# [[inputs.exec]]
1079# ## Commands array
1080# commands = [
1081# "/tmp/test.sh",
1082# "/usr/bin/mycollector --foo=bar",
1083# "/tmp/collect_*.sh"
1084# ]
1085#
1086# ## Timeout for each command to complete.
1087# timeout = "5s"
1088#
1089# ## measurement name suffix (for separating different commands)
1090# name_suffix = "_mycollector"
1091#
1092# ## Data format to consume.
1093# ## Each data format has its own unique set of configuration options, read
1094# ## more about them here:
1095# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md
1096# data_format = "influx"
1097
1098
1099# # Read metrics from fail2ban.
1100# [[inputs.fail2ban]]
1101# ## Use sudo to run fail2ban-client
1102# use_sudo = false
1103
1104
1105# # Read stats about given file(s)
1106# [[inputs.filestat]]
1107# ## Files to gather stats about.
1108# ## These accept standard unix glob matching rules, but with the addition of
1109# ## ** as a "super asterisk". ie:
1110# ## "/var/log/**.log" -> recursively find all .log files in /var/log
1111# ## "/var/log/*/*.log" -> find all .log files with a parent dir in /var/log
1112# ## "/var/log/apache.log" -> just tail the apache log file
1113# ##
1114# ## See https://github.com/gobwas/glob for more examples
1115# ##
1116# files = ["/var/log/**.log"]
1117# ## If true, read the entire file and calculate an md5 checksum.
1118# md5 = false
1119
1120
1121# # Read metrics exposed by fluentd in_monitor plugin
1122# [[inputs.fluentd]]
1123# ## This plugin reads information exposed by fluentd (using /api/plugins.json endpoint).
1124# ##
1125# ## Endpoint:
1126# ## - only one URI is allowed
1127# ## - https is not supported
1128# endpoint = "http://localhost:24220/api/plugins.json"
1129#
1130# ## Define which plugins have to be excluded (based on "type" field - e.g. monitor_agent)
1131# exclude = [
1132# "monitor_agent",
1133# "dummy",
1134# ]
1135
1136
1137# # Read flattened metrics from one or more GrayLog HTTP endpoints
1138# [[inputs.graylog]]
1139# ## API endpoint, currently supported API:
1140# ##
1141# ## - multiple (Ex http://<host>:12900/system/metrics/multiple)
1142# ## - namespace (Ex http://<host>:12900/system/metrics/namespace/{namespace})
1143# ##
1144# ## For namespace endpoint, the metrics array will be ignored for that call.
1145# ## Endpoint can contain namespace and multiple type calls.
1146# ##
1147# ## Please check http://[graylog-server-ip]:12900/api-browser for full list
1148# ## of endpoints
1149# servers = [
1150# "http://[graylog-server-ip]:12900/system/metrics/multiple",
1151# ]
1152#
1153# ## Metrics list
1154# ## List of metrics can be found on Graylog webservice documentation.
1155# ## Or by hitting the the web service api at:
1156# ## http://[graylog-host]:12900/system/metrics
1157# metrics = [
1158# "jvm.cl.loaded",
1159# "jvm.memory.pools.Metaspace.committed"
1160# ]
1161#
1162# ## Username and password
1163# username = ""
1164# password = ""
1165#
1166# ## Optional SSL Config
1167# # ssl_ca = "/etc/telegraf/ca.pem"
1168# # ssl_cert = "/etc/telegraf/cert.pem"
1169# # ssl_key = "/etc/telegraf/key.pem"
1170# ## Use SSL but skip chain & host verification
1171# # insecure_skip_verify = false
1172
1173
1174# # Read metrics of haproxy, via socket or csv stats page
1175# [[inputs.haproxy]]
1176# ## An array of address to gather stats about. Specify an ip on hostname
1177# ## with optional port. ie localhost, 10.10.3.33:1936, etc.
1178# ## Make sure you specify the complete path to the stats endpoint
1179# ## including the protocol, ie http://10.10.3.33:1936/haproxy?stats
1180#
1181# ## If no servers are specified, then default to 127.0.0.1:1936/haproxy?stats
1182# servers = ["http://myhaproxy.com:1936/haproxy?stats"]
1183#
1184# ## You can also use local socket with standard wildcard globbing.
1185# ## Server address not starting with 'http' will be treated as a possible
1186# ## socket, so both examples below are valid.
1187# # servers = ["socket:/run/haproxy/admin.sock", "/run/haproxy/*.sock"]
1188#
1189# ## By default, some of the fields are renamed from what haproxy calls them.
1190# ## Setting this option to true results in the plugin keeping the original
1191# ## field names.
1192# # keep_field_names = true
1193#
1194# ## Optional SSL Config
1195# # ssl_ca = "/etc/telegraf/ca.pem"
1196# # ssl_cert = "/etc/telegraf/cert.pem"
1197# # ssl_key = "/etc/telegraf/key.pem"
1198# ## Use SSL but skip chain & host verification
1199# # insecure_skip_verify = false
1200
1201
1202# # Monitor disks' temperatures using hddtemp
1203# [[inputs.hddtemp]]
1204# ## By default, telegraf gathers temps data from all disks detected by the
1205# ## hddtemp.
1206# ##
1207# ## Only collect temps from the selected disks.
1208# ##
1209# ## A * as the device name will return the temperature values of all disks.
1210# ##
1211# # address = "127.0.0.1:7634"
1212# # devices = ["sda", "*"]
1213
1214
1215# # HTTP/HTTPS request given an address a method and a timeout
1216# [[inputs.http_response]]
1217# ## Server address (default http://localhost)
1218# # address = "http://localhost"
1219#
1220# ## Set response_timeout (default 5 seconds)
1221# # response_timeout = "5s"
1222#
1223# ## HTTP Request Method
1224# # method = "GET"
1225#
1226# ## Whether to follow redirects from the server (defaults to false)
1227# # follow_redirects = false
1228#
1229# ## Optional HTTP Request Body
1230# # body = '''
1231# # {'fake':'data'}
1232# # '''
1233#
1234# ## Optional substring or regex match in body of the response
1235# # response_string_match = "\"service_status\": \"up\""
1236# # response_string_match = "ok"
1237# # response_string_match = "\".*_status\".?:.?\"up\""
1238#
1239# ## Optional SSL Config
1240# # ssl_ca = "/etc/telegraf/ca.pem"
1241# # ssl_cert = "/etc/telegraf/cert.pem"
1242# # ssl_key = "/etc/telegraf/key.pem"
1243# ## Use SSL but skip chain & host verification
1244# # insecure_skip_verify = false
1245#
1246# ## HTTP Request Headers (all values must be strings)
1247# # [inputs.http_response.headers]
1248# # Host = "github.com"
1249
1250
1251# # Read flattened metrics from one or more JSON HTTP endpoints
1252# [[inputs.httpjson]]
1253# ## NOTE This plugin only reads numerical measurements, strings and booleans
1254# ## will be ignored.
1255#
1256# ## Name for the service being polled. Will be appended to the name of the
1257# ## measurement e.g. httpjson_webserver_stats
1258# ##
1259# ## Deprecated (1.3.0): Use name_override, name_suffix, name_prefix instead.
1260# name = "webserver_stats"
1261#
1262# ## URL of each server in the service's cluster
1263# servers = [
1264# "http://localhost:9999/stats/",
1265# "http://localhost:9998/stats/",
1266# ]
1267# ## Set response_timeout (default 5 seconds)
1268# response_timeout = "5s"
1269#
1270# ## HTTP method to use: GET or POST (case-sensitive)
1271# method = "GET"
1272#
1273# ## List of tag names to extract from top-level of JSON server response
1274# # tag_keys = [
1275# # "my_tag_1",
1276# # "my_tag_2"
1277# # ]
1278#
1279# ## HTTP parameters (all values must be strings). For "GET" requests, data
1280# ## will be included in the query. For "POST" requests, data will be included
1281# ## in the request body as "x-www-form-urlencoded".
1282# # [inputs.httpjson.parameters]
1283# # event_type = "cpu_spike"
1284# # threshold = "0.75"
1285#
1286# ## HTTP Headers (all values must be strings)
1287# # [inputs.httpjson.headers]
1288# # X-Auth-Token = "my-xauth-token"
1289# # apiVersion = "v1"
1290#
1291# ## Optional SSL Config
1292# # ssl_ca = "/etc/telegraf/ca.pem"
1293# # ssl_cert = "/etc/telegraf/cert.pem"
1294# # ssl_key = "/etc/telegraf/key.pem"
1295# ## Use SSL but skip chain & host verification
1296# # insecure_skip_verify = false
1297
1298
1299# # Read InfluxDB-formatted JSON metrics from one or more HTTP endpoints
1300# [[inputs.influxdb]]
1301# ## Works with InfluxDB debug endpoints out of the box,
1302# ## but other services can use this format too.
1303# ## See the influxdb plugin's README for more details.
1304#
1305# ## Multiple URLs from which to read InfluxDB-formatted JSON
1306# ## Default is "http://localhost:8086/debug/vars".
1307# urls = [
1308# "http://localhost:8086/debug/vars"
1309# ]
1310#
1311# ## Optional SSL Config
1312# # ssl_ca = "/etc/telegraf/ca.pem"
1313# # ssl_cert = "/etc/telegraf/cert.pem"
1314# # ssl_key = "/etc/telegraf/key.pem"
1315# ## Use SSL but skip chain & host verification
1316# # insecure_skip_verify = false
1317#
1318# ## http request & header timeout
1319# timeout = "5s"
1320
1321
1322# # Collect statistics about itself
1323# [[inputs.internal]]
1324# ## If true, collect telegraf memory stats.
1325# # collect_memstats = true
1326
1327
1328# # This plugin gathers interrupts data from /proc/interrupts and /proc/softirqs.
1329# [[inputs.interrupts]]
1330# ## To filter which IRQs to collect, make use of tagpass / tagdrop, i.e.
1331# # [inputs.interrupts.tagdrop]
1332# # irq = [ "NET_RX", "TASKLET" ]
1333
1334
1335# # Read metrics from the bare metal servers via IPMI
1336# [[inputs.ipmi_sensor]]
1337# ## optionally specify the path to the ipmitool executable
1338# # path = "/usr/bin/ipmitool"
1339# #
1340# ## optionally specify one or more servers via a url matching
1341# ## [username[:password]@][protocol[(address)]]
1342# ## e.g.
1343# ## root:passwd@lan(127.0.0.1)
1344# ##
1345# ## if no servers are specified, local machine sensor stats will be queried
1346# ##
1347# # servers = ["USERID:PASSW0RD@lan(192.168.1.1)"]
1348#
1349# ## Recomended: use metric 'interval' that is a multiple of 'timeout' to avoid
1350# ## gaps or overlap in pulled data
1351# interval = "30s"
1352#
1353# ## Timeout for the ipmitool command to complete
1354# timeout = "20s"
1355
1356
1357# # Gather packets and bytes throughput from iptables
1358# [[inputs.iptables]]
1359# ## iptables require root access on most systems.
1360# ## Setting 'use_sudo' to true will make use of sudo to run iptables.
1361# ## Users must configure sudo to allow telegraf user to run iptables with no password.
1362# ## iptables can be restricted to only list command "iptables -nvL".
1363# use_sudo = false
1364# ## Setting 'use_lock' to true runs iptables with the "-w" option.
1365# ## Adjust your sudo settings appropriately if using this option ("iptables -wnvl")
1366# use_lock = false
1367# ## defines the table to monitor:
1368# table = "filter"
1369# ## defines the chains to monitor.
1370# ## NOTE: iptables rules without a comment will not be monitored.
1371# ## Read the plugin documentation for more information.
1372# chains = [ "INPUT" ]
1373
1374
1375# # Read JMX metrics through Jolokia
1376# [[inputs.jolokia]]
1377# ## This is the context root used to compose the jolokia url
1378# ## NOTE that Jolokia requires a trailing slash at the end of the context root
1379# ## NOTE that your jolokia security policy must allow for POST requests.
1380# context = "/jolokia/"
1381#
1382# ## This specifies the mode used
1383# # mode = "proxy"
1384# #
1385# ## When in proxy mode this section is used to specify further
1386# ## proxy address configurations.
1387# ## Remember to change host address to fit your environment.
1388# # [inputs.jolokia.proxy]
1389# # host = "127.0.0.1"
1390# # port = "8080"
1391#
1392# ## Optional http timeouts
1393# ##
1394# ## response_header_timeout, if non-zero, specifies the amount of time to wait
1395# ## for a server's response headers after fully writing the request.
1396# # response_header_timeout = "3s"
1397# ##
1398# ## client_timeout specifies a time limit for requests made by this client.
1399# ## Includes connection time, any redirects, and reading the response body.
1400# # client_timeout = "4s"
1401#
1402# ## Attribute delimiter
1403# ##
1404# ## When multiple attributes are returned for a single
1405# ## [inputs.jolokia.metrics], the field name is a concatenation of the metric
1406# ## name, and the attribute name, separated by the given delimiter.
1407# # delimiter = "_"
1408#
1409# ## List of servers exposing jolokia read service
1410# [[inputs.jolokia.servers]]
1411# name = "as-server-01"
1412# host = "127.0.0.1"
1413# port = "8080"
1414# # username = "myuser"
1415# # password = "mypassword"
1416#
1417# ## List of metrics collected on above servers
1418# ## Each metric consists in a name, a jmx path and either
1419# ## a pass or drop slice attribute.
1420# ##Â This collect all heap memory usage metrics.
1421# [[inputs.jolokia.metrics]]
1422# name = "heap_memory_usage"
1423# mbean = "java.lang:type=Memory"
1424# attribute = "HeapMemoryUsage"
1425#
1426# ##Â This collect thread counts metrics.
1427# [[inputs.jolokia.metrics]]
1428# name = "thread_count"
1429# mbean = "java.lang:type=Threading"
1430# attribute = "TotalStartedThreadCount,ThreadCount,DaemonThreadCount,PeakThreadCount"
1431#
1432# ##Â This collect number of class loaded/unloaded counts metrics.
1433# [[inputs.jolokia.metrics]]
1434# name = "class_count"
1435# mbean = "java.lang:type=ClassLoading"
1436# attribute = "LoadedClassCount,UnloadedClassCount,TotalLoadedClassCount"
1437
1438
1439# # Read Kapacitor-formatted JSON metrics from one or more HTTP endpoints
1440# [[inputs.kapacitor]]
1441# ## Multiple URLs from which to read Kapacitor-formatted JSON
1442# ## Default is "http://localhost:9092/kapacitor/v1/debug/vars".
1443# urls = [
1444# "http://localhost:9092/kapacitor/v1/debug/vars"
1445# ]
1446#
1447# ## Time limit for http requests
1448# timeout = "5s"
1449
1450
1451# # Get kernel statistics from /proc/vmstat
1452 [[inputs.kernel_vmstat]]
1453# # no configuration
1454
1455
1456# # Read metrics from the kubernetes kubelet api
1457# [[inputs.kubernetes]]
1458# ## URL for the kubelet
1459# url = "http://1.1.1.1:10255"
1460#
1461# ## Use bearer token for authorization
1462# # bearer_token = /path/to/bearer/token
1463#
1464# ## Optional SSL Config
1465# # ssl_ca = /path/to/cafile
1466# # ssl_cert = /path/to/certfile
1467# # ssl_key = /path/to/keyfile
1468# ## Use SSL but skip chain & host verification
1469# # insecure_skip_verify = false
1470
1471
1472# # Read metrics from a LeoFS Server via SNMP
1473# [[inputs.leofs]]
1474# ## An array of URLs of the form:
1475# ## "udp://" host [ ":" port]
1476# servers = ["udp://127.0.0.1:4020"]
1477
1478
1479# # Provides Linux sysctl fs metrics
1480# [[inputs.linux_sysctl_fs]]
1481# # no configuration
1482
1483
1484# # Read metrics from local Lustre service on OST, MDS
1485# [[inputs.lustre2]]
1486# ## An array of /proc globs to search for Lustre stats
1487# ## If not specified, the default will work on Lustre 2.5.x
1488# ##
1489# # ost_procfiles = [
1490# # "/proc/fs/lustre/obdfilter/*/stats",
1491# # "/proc/fs/lustre/osd-ldiskfs/*/stats",
1492# # "/proc/fs/lustre/obdfilter/*/job_stats",
1493# # ]
1494# # mds_procfiles = [
1495# # "/proc/fs/lustre/mdt/*/md_stats",
1496# # "/proc/fs/lustre/mdt/*/job_stats",
1497# # ]
1498
1499
1500# # Gathers metrics from the /3.0/reports MailChimp API
1501# [[inputs.mailchimp]]
1502# ## MailChimp API key
1503# ## get from https://admin.mailchimp.com/account/api/
1504# api_key = "" # required
1505# ## Reports for campaigns sent more than days_old ago will not be collected.
1506# ## 0 means collect all.
1507# days_old = 0
1508# ## Campaign ID to get, if empty gets all campaigns, this option overrides days_old
1509# # campaign_id = ""
1510
1511
1512# # Read metrics from one or many memcached servers
1513# [[inputs.memcached]]
1514# ## An array of address to gather stats about. Specify an ip on hostname
1515# ## with optional port. ie localhost, 10.0.0.1:11211, etc.
1516# servers = ["localhost:11211"]
1517# # unix_sockets = ["/var/run/memcached.sock"]
1518
1519
1520# # Telegraf plugin for gathering metrics from N Mesos masters
1521# [[inputs.mesos]]
1522# ## Timeout, in ms.
1523# timeout = 100
1524# ## A list of Mesos masters.
1525# masters = ["localhost:5050"]
1526# ## Master metrics groups to be collected, by default, all enabled.
1527# master_collections = [
1528# "resources",
1529# "master",
1530# "system",
1531# "agents",
1532# "frameworks",
1533# "tasks",
1534# "messages",
1535# "evqueue",
1536# "registrar",
1537# ]
1538# ## A list of Mesos slaves, default is []
1539# # slaves = []
1540# ## Slave metrics groups to be collected, by default, all enabled.
1541# # slave_collections = [
1542# # "resources",
1543# # "agent",
1544# # "system",
1545# # "executors",
1546# # "tasks",
1547# # "messages",
1548# # ]
1549
1550
1551# # Collects scores from a minecraft server's scoreboard using the RCON protocol
1552# [[inputs.minecraft]]
1553# ## server address for minecraft
1554# # server = "localhost"
1555# ## port for RCON
1556# # port = "25575"
1557# ## password RCON for mincraft server
1558# # password = ""
1559
1560
1561# # Read metrics from one or many MongoDB servers
1562# [[inputs.mongodb]]
1563# ## An array of URLs of the form:
1564# ## "mongodb://" [user ":" pass "@"] host [ ":" port]
1565# ## For example:
1566# ## mongodb://user:auth_key@10.10.3.30:27017,
1567# ## mongodb://10.10.3.33:18832,
1568# servers = ["mongodb://127.0.0.1:27017"]
1569# gather_perdb_stats = false
1570#
1571# ## Optional SSL Config
1572# # ssl_ca = "/etc/telegraf/ca.pem"
1573# # ssl_cert = "/etc/telegraf/cert.pem"
1574# # ssl_key = "/etc/telegraf/key.pem"
1575# ## Use SSL but skip chain & host verification
1576# # insecure_skip_verify = false
1577
1578
1579# # Read metrics from one or many mysql servers
1580# [[inputs.mysql]]
1581# ## specify servers via a url matching:
1582# ## [username[:password]@][protocol[(address)]]/[?tls=[true|false|skip-verify|custom]]
1583# ## see https://github.com/go-sql-driver/mysql#dsn-data-source-name
1584# ## e.g.
1585# ## servers = ["user:passwd@tcp(127.0.0.1:3306)/?tls=false"]
1586# ## servers = ["user@tcp(127.0.0.1:3306)/?tls=false"]
1587# #
1588# ## If no servers are specified, then localhost is used as the host.
1589# servers = ["tcp(127.0.0.1:3306)/"]
1590# ## the limits for metrics form perf_events_statements
1591# perf_events_statements_digest_text_limit = 120
1592# perf_events_statements_limit = 250
1593# perf_events_statements_time_limit = 86400
1594# #
1595# ## if the list is empty, then metrics are gathered from all databasee tables
1596# table_schema_databases = []
1597# #
1598# ## gather metrics from INFORMATION_SCHEMA.TABLES for databases provided above list
1599# gather_table_schema = false
1600# #
1601# ## gather thread state counts from INFORMATION_SCHEMA.PROCESSLIST
1602# gather_process_list = true
1603# #
1604# ## gather thread state counts from INFORMATION_SCHEMA.USER_STATISTICS
1605# gather_user_statistics = true
1606# #
1607# ## gather auto_increment columns and max values from information schema
1608# gather_info_schema_auto_inc = true
1609# #
1610# ## gather metrics from INFORMATION_SCHEMA.INNODB_METRICS
1611# gather_innodb_metrics = true
1612# #
1613# ## gather metrics from SHOW SLAVE STATUS command output
1614# gather_slave_status = true
1615# #
1616# ## gather metrics from SHOW BINARY LOGS command output
1617# gather_binary_logs = false
1618# #
1619# ## gather metrics from PERFORMANCE_SCHEMA.TABLE_IO_WAITS_SUMMARY_BY_TABLE
1620# gather_table_io_waits = false
1621# #
1622# ## gather metrics from PERFORMANCE_SCHEMA.TABLE_LOCK_WAITS
1623# gather_table_lock_waits = false
1624# #
1625# ## gather metrics from PERFORMANCE_SCHEMA.TABLE_IO_WAITS_SUMMARY_BY_INDEX_USAGE
1626# gather_index_io_waits = false
1627# #
1628# ## gather metrics from PERFORMANCE_SCHEMA.EVENT_WAITS
1629# gather_event_waits = false
1630# #
1631# ## gather metrics from PERFORMANCE_SCHEMA.FILE_SUMMARY_BY_EVENT_NAME
1632# gather_file_events_stats = false
1633# #
1634# ## gather metrics from PERFORMANCE_SCHEMA.EVENTS_STATEMENTS_SUMMARY_BY_DIGEST
1635# gather_perf_events_statements = false
1636# #
1637# ## Some queries we may want to run less often (such as SHOW GLOBAL VARIABLES)
1638# interval_slow = "30m"
1639#
1640# ## Optional SSL Config (will be used if tls=custom parameter specified in server uri)
1641# ssl_ca = "/etc/telegraf/ca.pem"
1642# ssl_cert = "/etc/telegraf/cert.pem"
1643# ssl_key = "/etc/telegraf/key.pem"
1644
1645
1646# # Read metrics about network interface usage
1647 [[inputs.net]]
1648# ## By default, telegraf gathers stats from any up interface (excluding loopback)
1649# ## Setting interfaces will tell it to gather these explicit interfaces,
1650# ## regardless of status.
1651# ##
1652 interfaces = []
1653
1654
1655# # TCP or UDP 'ping' given url and collect response time in seconds
1656# [[inputs.net_response]]
1657# ## Protocol, must be "tcp" or "udp"
1658# ## NOTE: because the "udp" protocol does not respond to requests, it requires
1659# ## a send/expect string pair (see below).
1660# protocol = "tcp"
1661# ## Server address (default localhost)
1662# address = "localhost:80"
1663# ## Set timeout
1664# timeout = "1s"
1665#
1666# ## Set read timeout (only used if expecting a response)
1667# read_timeout = "1s"
1668#
1669# ## The following options are required for UDP checks. For TCP, they are
1670# ## optional. The plugin will send the given string to the server and then
1671# ## expect to receive the given 'expect' string back.
1672# ## string sent to the server
1673# # send = "ssh"
1674# ## expected string in answer
1675# # expect = "ssh"
1676
1677
1678# # Read TCP metrics such as established, time wait and sockets counts.
1679# [[inputs.netstat]]
1680# # no configuration
1681
1682
1683# # Read Nginx's basic status information (ngx_http_stub_status_module)
1684# [[inputs.nginx]]
1685# # An array of Nginx stub_status URI to gather stats.
1686# urls = ["http://localhost/server_status"]
1687#
1688# # TLS/SSL configuration
1689# ssl_ca = "/etc/telegraf/ca.pem"
1690# ssl_cert = "/etc/telegraf/cert.cer"
1691# ssl_key = "/etc/telegraf/key.key"
1692# insecure_skip_verify = false
1693#
1694# # HTTP response timeout (default: 5s)
1695# response_timeout = "5s"
1696
1697
1698# # Read NSQ topic and channel statistics.
1699# [[inputs.nsq]]
1700# ## An array of NSQD HTTP API endpoints
1701# endpoints = ["http://localhost:4151"]
1702
1703
1704# # Collect kernel snmp counters and network interface statistics
1705# [[inputs.nstat]]
1706# ## file paths for proc files. If empty default paths will be used:
1707# ## /proc/net/netstat, /proc/net/snmp, /proc/net/snmp6
1708# ## These can also be overridden with env variables, see README.
1709# proc_net_netstat = "/proc/net/netstat"
1710# proc_net_snmp = "/proc/net/snmp"
1711# proc_net_snmp6 = "/proc/net/snmp6"
1712# ## dump metrics with 0 values too
1713# dump_zeros = true
1714
1715
1716# # Get standard NTP query metrics, requires ntpq executable.
1717# [[inputs.ntpq]]
1718# ## If false, set the -n ntpq flag. Can reduce metric gather time.
1719# dns_lookup = true
1720
1721
1722# # OpenLDAP cn=Monitor plugin
1723# [[inputs.openldap]]
1724# host = "localhost"
1725# port = 389
1726#
1727# # ldaps, starttls, or no encryption. default is an empty string, disabling all encryption.
1728# # note that port will likely need to be changed to 636 for ldaps
1729# # valid options: "" | "starttls" | "ldaps"
1730# ssl = ""
1731#
1732# # skip peer certificate verification. Default is false.
1733# insecure_skip_verify = false
1734#
1735# # Path to PEM-encoded Root certificate to use to verify server certificate
1736# ssl_ca = "/etc/ssl/certs.pem"
1737#
1738# # dn/password to bind with. If bind_dn is empty, an anonymous bind is performed.
1739# bind_dn = ""
1740# bind_password = ""
1741
1742
1743# # Read metrics of passenger using passenger-status
1744# [[inputs.passenger]]
1745# ## Path of passenger-status.
1746# ##
1747# ## Plugin gather metric via parsing XML output of passenger-status
1748# ## More information about the tool:
1749# ## https://www.phusionpassenger.com/library/admin/apache/overall_status_report.html
1750# ##
1751# ## If no path is specified, then the plugin simply execute passenger-status
1752# ## hopefully it can be found in your PATH
1753# command = "passenger-status -v --show=xml"
1754
1755
1756# # Read metrics of phpfpm, via HTTP status page or socket
1757# [[inputs.phpfpm]]
1758# ## An array of addresses to gather stats about. Specify an ip or hostname
1759# ## with optional port and path
1760# ##
1761# ## Plugin can be configured in three modes (either can be used):
1762# ## - http: the URL must start with http:// or https://, ie:
1763# ## "http://localhost/status"
1764# ## "http://192.168.130.1/status?full"
1765# ##
1766# ## - unixsocket: path to fpm socket, ie:
1767# ## "/var/run/php5-fpm.sock"
1768# ## or using a custom fpm status path:
1769# ## "/var/run/php5-fpm.sock:fpm-custom-status-path"
1770# ##
1771# ## - fcgi: the URL must start with fcgi:// or cgi://, and port must be present, ie:
1772# ## "fcgi://10.0.0.12:9000/status"
1773# ## "cgi://10.0.10.12:9001/status"
1774# ##
1775# ## Example of multiple gathering from local socket and remove host
1776# ## urls = ["http://192.168.1.20/status", "/tmp/fpm.sock"]
1777# urls = ["http://localhost/status"]
1778
1779
1780# # Ping given url(s) and return statistics
1781# [[inputs.ping]]
1782# ## NOTE: this plugin forks the ping command. You may need to set capabilities
1783# ## via setcap cap_net_raw+p /bin/ping
1784# #
1785# ## List of urls to ping
1786# urls = ["www.google.com"] # required
1787# ## number of pings to send per collection (ping -c <COUNT>)
1788# # count = 1
1789# ## interval, in s, at which to ping. 0 == default (ping -i <PING_INTERVAL>)
1790# # ping_interval = 1.0
1791# ## per-ping timeout, in s. 0 == no timeout (ping -W <TIMEOUT>)
1792# # timeout = 1.0
1793# ## interface to send ping from (ping -I <INTERFACE>)
1794# # interface = ""
1795
1796
1797# # Read metrics from one or many postgresql servers
1798# [[inputs.postgresql]]
1799# ## specify address via a url matching:
1800# ## postgres://[pqgotest[:password]]@localhost[/dbname]\
1801# ## ?sslmode=[disable|verify-ca|verify-full]
1802# ## or a simple string:
1803# ## host=localhost user=pqotest password=... sslmode=... dbname=app_production
1804# ##
1805# ## All connection parameters are optional.
1806# ##
1807# ## Without the dbname parameter, the driver will default to a database
1808# ## with the same name as the user. This dbname is just for instantiating a
1809# ## connection with the server and doesn't restrict the databases we are trying
1810# ## to grab metrics for.
1811# ##
1812# address = "host=localhost user=postgres sslmode=disable"
1813#
1814# ## A list of databases to explicitly ignore. If not specified, metrics for all
1815# ## databases are gathered. Do NOT use with the 'databases' option.
1816# # ignored_databases = ["postgres", "template0", "template1"]
1817#
1818# ## A list of databases to pull metrics about. If not specified, metrics for all
1819# ## databases are gathered. Do NOT use with the 'ignored_databases' option.
1820# # databases = ["app_production", "testing"]
1821
1822
1823# # Read metrics from one or many postgresql servers
1824# [[inputs.postgresql_extensible]]
1825# ## specify address via a url matching:
1826# ## postgres://[pqgotest[:password]]@localhost[/dbname]\
1827# ## ?sslmode=[disable|verify-ca|verify-full]
1828# ## or a simple string:
1829# ## host=localhost user=pqotest password=... sslmode=... dbname=app_production
1830# #
1831# ## All connection parameters are optional. #
1832# ## Without the dbname parameter, the driver will default to a database
1833# ## with the same name as the user. This dbname is just for instantiating a
1834# ## connection with the server and doesn't restrict the databases we are trying
1835# ## to grab metrics for.
1836# #
1837# address = "host=localhost user=postgres sslmode=disable"
1838# ## A list of databases to pull metrics about. If not specified, metrics for all
1839# ## databases are gathered.
1840# ## databases = ["app_production", "testing"]
1841# #
1842# # outputaddress = "db01"
1843# ## A custom name for the database that will be used as the "server" tag in the
1844# ## measurement output. If not specified, a default one generated from
1845# ## the connection address is used.
1846# #
1847# ## Define the toml config where the sql queries are stored
1848# ## New queries can be added, if the withdbname is set to true and there is no
1849# ## databases defined in the 'databases field', the sql query is ended by a
1850# ## 'is not null' in order to make the query succeed.
1851# ## Example :
1852# ## The sqlquery : "SELECT * FROM pg_stat_database where datname" become
1853# ## "SELECT * FROM pg_stat_database where datname IN ('postgres', 'pgbench')"
1854# ## because the databases variable was set to ['postgres', 'pgbench' ] and the
1855# ## withdbname was true. Be careful that if the withdbname is set to false you
1856# ## don't have to define the where clause (aka with the dbname) the tagvalue
1857# ## field is used to define custom tags (separated by commas)
1858# ## The optional "measurement" value can be used to override the default
1859# ## output measurement name ("postgresql").
1860# #
1861# ## Structure :
1862# ## [[inputs.postgresql_extensible.query]]
1863# ## sqlquery string
1864# ## version string
1865# ## withdbname boolean
1866# ## tagvalue string (comma separated)
1867# ## measurement string
1868# [[inputs.postgresql_extensible.query]]
1869# sqlquery="SELECT * FROM pg_stat_database"
1870# version=901
1871# withdbname=false
1872# tagvalue=""
1873# measurement=""
1874# [[inputs.postgresql_extensible.query]]
1875# sqlquery="SELECT * FROM pg_stat_bgwriter"
1876# version=901
1877# withdbname=false
1878# tagvalue="postgresql.stats"
1879
1880
1881# # Read metrics from one or many PowerDNS servers
1882# [[inputs.powerdns]]
1883# ## An array of sockets to gather stats about.
1884# ## Specify a path to unix socket.
1885# unix_sockets = ["/var/run/pdns.controlsocket"]
1886
1887
1888# # Monitor process cpu and memory usage
1889# [[inputs.procstat]]
1890# ## Must specify one of: pid_file, exe, or pattern
1891# ## PID file to monitor process
1892# pid_file = "/var/run/nginx.pid"
1893# ## executable name (ie, pgrep <exe>)
1894# # exe = "nginx"
1895# ## pattern as argument for pgrep (ie, pgrep -f <pattern>)
1896# # pattern = "nginx"
1897# ## user as argument for pgrep (ie, pgrep -u <user>)
1898# # user = "nginx"
1899#
1900# ## override for process_name
1901# ## This is optional; default is sourced from /proc/<pid>/status
1902# # process_name = "bar"
1903# ## Field name prefix
1904# prefix = ""
1905# ## comment this out if you want raw cpu_time stats
1906# fielddrop = ["cpu_time_*"]
1907# ## This is optional; moves pid into a tag instead of a field
1908# pid_tag = false
1909
1910
1911# # Read metrics from one or many prometheus clients
1912# [[inputs.prometheus]]
1913# ## An array of urls to scrape metrics from.
1914# urls = ["http://localhost:9100/metrics"]
1915#
1916# ## Use bearer token for authorization
1917# # bearer_token = /path/to/bearer/token
1918#
1919# ## Specify timeout duration for slower prometheus clients (default is 3s)
1920# # response_timeout = "3s"
1921#
1922# ## Optional SSL Config
1923# # ssl_ca = /path/to/cafile
1924# # ssl_cert = /path/to/certfile
1925# # ssl_key = /path/to/keyfile
1926# ## Use SSL but skip chain & host verification
1927# # insecure_skip_verify = false
1928
1929
1930# # Reads last_run_summary.yaml file and converts to measurments
1931# [[inputs.puppetagent]]
1932# ## Location of puppet last run summary file
1933# location = "/var/lib/puppet/state/last_run_summary.yaml"
1934
1935
1936# # Reads metrics from RabbitMQ servers via the Management Plugin
1937# [[inputs.rabbitmq]]
1938# ## Management Plugin url. (default: http://localhost:15672)
1939# # url = "http://localhost:15672"
1940# ## Tag added to rabbitmq_overview series; deprecated: use tags
1941# # name = "rmq-server-1"
1942# ## Credentials
1943# # username = "guest"
1944# # password = "guest"
1945#
1946# ## Optional SSL Config
1947# # ssl_ca = "/etc/telegraf/ca.pem"
1948# # ssl_cert = "/etc/telegraf/cert.pem"
1949# # ssl_key = "/etc/telegraf/key.pem"
1950# ## Use SSL but skip chain & host verification
1951# # insecure_skip_verify = false
1952#
1953# ## Optional request timeouts
1954# ##
1955# ## ResponseHeaderTimeout, if non-zero, specifies the amount of time to wait
1956# ## for a server's response headers after fully writing the request.
1957# # header_timeout = "3s"
1958# ##
1959# ## client_timeout specifies a time limit for requests made by this client.
1960# ## Includes connection time, any redirects, and reading the response body.
1961# # client_timeout = "4s"
1962#
1963# ## A list of nodes to pull metrics about. If not specified, metrics for
1964# ## all nodes are gathered.
1965# # nodes = ["rabbit@node1", "rabbit@node2"]
1966
1967
1968# # Read raindrops stats (raindrops - real-time stats for preforking Rack servers)
1969# [[inputs.raindrops]]
1970# ## An array of raindrops middleware URI to gather stats.
1971# urls = ["http://localhost:8080/_raindrops"]
1972
1973
1974# # Read metrics from one or many redis servers
1975# [[inputs.redis]]
1976# ## specify servers via a url matching:
1977# ## [protocol://][:password]@address[:port]
1978# ## e.g.
1979# ## tcp://localhost:6379
1980# ## tcp://:password@192.168.99.100
1981# ## unix:///var/run/redis.sock
1982# ##
1983# ## If no servers are specified, then localhost is used as the host.
1984# ## If no port is specified, 6379 is used
1985# servers = ["tcp://localhost:6379"]
1986
1987
1988# # Read metrics from one or many RethinkDB servers
1989# [[inputs.rethinkdb]]
1990# ## An array of URI to gather stats about. Specify an ip or hostname
1991# ## with optional port add password. ie,
1992# ## rethinkdb://user:auth_key@10.10.3.30:28105,
1993# ## rethinkdb://10.10.3.33:18832,
1994# ## 10.0.0.1:10000, etc.
1995# servers = ["127.0.0.1:28015"]
1996# ##
1997# ## If you use actual rethinkdb of > 2.3.0 with username/password authorization,
1998# ## protocol have to be named "rethinkdb2" - it will use 1_0 H.
1999# # servers = ["rethinkdb2://username:password@127.0.0.1:28015"]
2000# ##
2001# ## If you use older versions of rethinkdb (<2.2) with auth_key, protocol
2002# ## have to be named "rethinkdb".
2003# # servers = ["rethinkdb://username:auth_key@127.0.0.1:28015"]
2004
2005
2006# # Read metrics one or many Riak servers
2007# [[inputs.riak]]
2008# # Specify a list of one or more riak http servers
2009# servers = ["http://localhost:8098"]
2010
2011
2012# # Read API usage and limits for a Salesforce organisation
2013# [[inputs.salesforce]]
2014# ## specify your credentials
2015# ##
2016# username = "your_username"
2017# password = "your_password"
2018# ##
2019# ## (optional) security token
2020# # security_token = "your_security_token"
2021# ##
2022# ## (optional) environment type (sandbox or production)
2023# ## default is: production
2024# ##
2025# # environment = "production"
2026# ##
2027# ## (optional) API version (default: "39.0")
2028# ##
2029# # version = "39.0"
2030
2031
2032# # Monitor sensors, requires lm-sensors package
2033# [[inputs.sensors]]
2034# ## Remove numbers from field names.
2035# ## If true, a field name like 'temp1_input' will be changed to 'temp_input'.
2036# # remove_numbers = true
2037
2038
2039# # Retrieves SNMP values from remote agents
2040# [[inputs.snmp]]
2041# agents = [ "127.0.0.1:161" ]
2042# ## Timeout for each SNMP query.
2043# timeout = "5s"
2044# ## Number of retries to attempt within timeout.
2045# retries = 3
2046# ## SNMP version, values can be 1, 2, or 3
2047# version = 2
2048#
2049# ## SNMP community string.
2050# community = "public"
2051#
2052# ## The GETBULK max-repetitions parameter
2053# max_repetitions = 10
2054#
2055# ## SNMPv3 auth parameters
2056# #sec_name = "myuser"
2057# #auth_protocol = "md5" # Values: "MD5", "SHA", ""
2058# #auth_password = "pass"
2059# #sec_level = "authNoPriv" # Values: "noAuthNoPriv", "authNoPriv", "authPriv"
2060# #context_name = ""
2061# #priv_protocol = "" # Values: "DES", "AES", ""
2062# #priv_password = ""
2063#
2064# ## measurement name
2065# name = "system"
2066# [[inputs.snmp.field]]
2067# name = "hostname"
2068# oid = ".1.0.0.1.1"
2069# [[inputs.snmp.field]]
2070# name = "uptime"
2071# oid = ".1.0.0.1.2"
2072# [[inputs.snmp.field]]
2073# name = "load"
2074# oid = ".1.0.0.1.3"
2075# [[inputs.snmp.field]]
2076# oid = "HOST-RESOURCES-MIB::hrMemorySize"
2077#
2078# [[inputs.snmp.table]]
2079# ## measurement name
2080# name = "remote_servers"
2081# inherit_tags = [ "hostname" ]
2082# [[inputs.snmp.table.field]]
2083# name = "server"
2084# oid = ".1.0.0.0.1.0"
2085# is_tag = true
2086# [[inputs.snmp.table.field]]
2087# name = "connections"
2088# oid = ".1.0.0.0.1.1"
2089# [[inputs.snmp.table.field]]
2090# name = "latency"
2091# oid = ".1.0.0.0.1.2"
2092#
2093# [[inputs.snmp.table]]
2094# ## auto populate table's fields using the MIB
2095# oid = "HOST-RESOURCES-MIB::hrNetworkTable"
2096
2097
2098# # DEPRECATED! PLEASE USE inputs.snmp INSTEAD.
2099# [[inputs.snmp_legacy]]
2100# ## Use 'oids.txt' file to translate oids to names
2101# ## To generate 'oids.txt' you need to run:
2102# ## snmptranslate -m all -Tz -On | sed -e 's/"//g' > /tmp/oids.txt
2103# ## Or if you have an other MIB folder with custom MIBs
2104# ## snmptranslate -M /mycustommibfolder -Tz -On -m all | sed -e 's/"//g' > oids.txt
2105# snmptranslate_file = "/tmp/oids.txt"
2106# [[inputs.snmp.host]]
2107# address = "192.168.2.2:161"
2108# # SNMP community
2109# community = "public" # default public
2110# # SNMP version (1, 2 or 3)
2111# # Version 3 not supported yet
2112# version = 2 # default 2
2113# # SNMP response timeout
2114# timeout = 2.0 # default 2.0
2115# # SNMP request retries
2116# retries = 2 # default 2
2117# # Which get/bulk do you want to collect for this host
2118# collect = ["mybulk", "sysservices", "sysdescr"]
2119# # Simple list of OIDs to get, in addition to "collect"
2120# get_oids = []
2121#
2122# [[inputs.snmp.host]]
2123# address = "192.168.2.3:161"
2124# community = "public"
2125# version = 2
2126# timeout = 2.0
2127# retries = 2
2128# collect = ["mybulk"]
2129# get_oids = [
2130# "ifNumber",
2131# ".1.3.6.1.2.1.1.3.0",
2132# ]
2133#
2134# [[inputs.snmp.get]]
2135# name = "ifnumber"
2136# oid = "ifNumber"
2137#
2138# [[inputs.snmp.get]]
2139# name = "interface_speed"
2140# oid = "ifSpeed"
2141# instance = "0"
2142#
2143# [[inputs.snmp.get]]
2144# name = "sysuptime"
2145# oid = ".1.3.6.1.2.1.1.3.0"
2146# unit = "second"
2147#
2148# [[inputs.snmp.bulk]]
2149# name = "mybulk"
2150# max_repetition = 127
2151# oid = ".1.3.6.1.2.1.1"
2152#
2153# [[inputs.snmp.bulk]]
2154# name = "ifoutoctets"
2155# max_repetition = 127
2156# oid = "ifOutOctets"
2157#
2158# [[inputs.snmp.host]]
2159# address = "192.168.2.13:161"
2160# #address = "127.0.0.1:161"
2161# community = "public"
2162# version = 2
2163# timeout = 2.0
2164# retries = 2
2165# #collect = ["mybulk", "sysservices", "sysdescr", "systype"]
2166# collect = ["sysuptime" ]
2167# [[inputs.snmp.host.table]]
2168# name = "iftable3"
2169# include_instances = ["enp5s0", "eth1"]
2170#
2171# # SNMP TABLEs
2172# # table without mapping neither subtables
2173# [[inputs.snmp.table]]
2174# name = "iftable1"
2175# oid = ".1.3.6.1.2.1.31.1.1.1"
2176#
2177# # table without mapping but with subtables
2178# [[inputs.snmp.table]]
2179# name = "iftable2"
2180# oid = ".1.3.6.1.2.1.31.1.1.1"
2181# sub_tables = [".1.3.6.1.2.1.2.2.1.13"]
2182#
2183# # table with mapping but without subtables
2184# [[inputs.snmp.table]]
2185# name = "iftable3"
2186# oid = ".1.3.6.1.2.1.31.1.1.1"
2187# # if empty. get all instances
2188# mapping_table = ".1.3.6.1.2.1.31.1.1.1.1"
2189# # if empty, get all subtables
2190#
2191# # table with both mapping and subtables
2192# [[inputs.snmp.table]]
2193# name = "iftable4"
2194# oid = ".1.3.6.1.2.1.31.1.1.1"
2195# # if empty get all instances
2196# mapping_table = ".1.3.6.1.2.1.31.1.1.1.1"
2197# # if empty get all subtables
2198# # sub_tables could be not "real subtables"
2199# sub_tables=[".1.3.6.1.2.1.2.2.1.13", "bytes_recv", "bytes_send"]
2200
2201
2202# # Read metrics from Microsoft SQL Server
2203# [[inputs.sqlserver]]
2204# ## Specify instances to monitor with a list of connection strings.
2205# ## All connection parameters are optional.
2206# ## By default, the host is localhost, listening on default port, TCP 1433.
2207# ## for Windows, the user is the currently running AD user (SSO).
2208# ## See https://github.com/denisenkom/go-mssqldb for detailed connection
2209# ## parameters.
2210# # servers = [
2211# # "Server=192.168.1.10;Port=1433;User Id=<user>;Password=<pw>;app name=telegraf;log=1;",
2212# # ]
2213
2214
2215# # Sysstat metrics collector
2216# [[inputs.sysstat]]
2217# ## Path to the sadc command.
2218# #
2219# ## Common Defaults:
2220# ## Debian/Ubuntu: /usr/lib/sysstat/sadc
2221# ## Arch: /usr/lib/sa/sadc
2222# ## RHEL/CentOS: /usr/lib64/sa/sadc
2223# sadc_path = "/usr/lib/sa/sadc" # required
2224# #
2225# #
2226# ## Path to the sadf command, if it is not in PATH
2227# # sadf_path = "/usr/bin/sadf"
2228# #
2229# #
2230# ## Activities is a list of activities, that are passed as argument to the
2231# ## sadc collector utility (e.g: DISK, SNMP etc...)
2232# ## The more activities that are added, the more data is collected.
2233# # activities = ["DISK"]
2234# #
2235# #
2236# ## Group metrics to measurements.
2237# ##
2238# ## If group is false each metric will be prefixed with a description
2239# ## and represents itself a measurement.
2240# ##
2241# ## If Group is true, corresponding metrics are grouped to a single measurement.
2242# # group = true
2243# #
2244# #
2245# ## Options for the sadf command. The values on the left represent the sadf
2246# ## options and the values on the right their description (wich are used for
2247# ## grouping and prefixing metrics).
2248# ##
2249# ## Run 'sar -h' or 'man sar' to find out the supported options for your
2250# ## sysstat version.
2251# [inputs.sysstat.options]
2252# -C = "cpu"
2253# -B = "paging"
2254# -b = "io"
2255# -d = "disk" # requires DISK activity
2256# "-n ALL" = "network"
2257# "-P ALL" = "per_cpu"
2258# -q = "queue"
2259# -R = "mem"
2260# -r = "mem_util"
2261# -S = "swap_util"
2262# -u = "cpu_util"
2263# -v = "inode"
2264# -W = "swap"
2265# -w = "task"
2266# # -H = "hugepages" # only available for newer linux distributions
2267# # "-I ALL" = "interrupts" # requires INT activity
2268# #
2269# #
2270# ## Device tags can be used to add additional tags for devices.
2271# ## For example the configuration below adds a tag vg with value rootvg for
2272# ## all metrics with sda devices.
2273# # [[inputs.sysstat.device_tags.sda]]
2274# # vg = "rootvg"
2275
2276
2277# # Gather metrics from the Tomcat server status page.
2278# [[inputs.tomcat]]
2279# ## URL of the Tomcat server status
2280# # url = "http://127.0.0.1:8080/manager/status/all?XML=true"
2281#
2282# ## HTTP Basic Auth Credentials
2283# # username = "tomcat"
2284# # password = "s3cret"
2285#
2286# ## Request timeout
2287# # timeout = "5s"
2288#
2289# ## Optional SSL Config
2290# # ssl_ca = "/etc/telegraf/ca.pem"
2291# # ssl_cert = "/etc/telegraf/cert.pem"
2292# # ssl_key = "/etc/telegraf/key.pem"
2293# ## Use SSL but skip chain & host verification
2294# # insecure_skip_verify = false
2295
2296
2297# # Inserts sine and cosine waves for demonstration purposes
2298# [[inputs.trig]]
2299# ## Set the amplitude
2300# amplitude = 10.0
2301
2302
2303# # Read Twemproxy stats data
2304# [[inputs.twemproxy]]
2305# ## Twemproxy stats address and port (no scheme)
2306# addr = "localhost:22222"
2307# ## Monitor pool name
2308# pools = ["redis_pool", "mc_pool"]
2309
2310
2311# # A plugin to collect stats from Varnish HTTP Cache
2312# [[inputs.varnish]]
2313# ## If running as a restricted user you can prepend sudo for additional access:
2314# #use_sudo = false
2315#
2316# ## The default location of the varnishstat binary can be overridden with:
2317# binary = "/usr/bin/varnishstat"
2318#
2319# ## By default, telegraf gather stats for 3 metric points.
2320# ## Setting stats will override the defaults shown below.
2321# ## Glob matching can be used, ie, stats = ["MAIN.*"]
2322# ## stats may also be set to ["*"], which will collect all stats
2323# stats = ["MAIN.cache_hit", "MAIN.cache_miss", "MAIN.uptime"]
2324
2325
2326# # Read metrics of ZFS from arcstats, zfetchstats, vdev_cache_stats, and pools
2327# [[inputs.zfs]]
2328# ## ZFS kstat path. Ignored on FreeBSD
2329# ## If not specified, then default is:
2330# # kstatPath = "/proc/spl/kstat/zfs"
2331#
2332# ## By default, telegraf gather all zfs stats
2333# ## If not specified, then default is:
2334# # kstatMetrics = ["arcstats", "zfetchstats", "vdev_cache_stats"]
2335#
2336# ## By default, don't gather zpool stats
2337# # poolMetrics = false
2338
2339
2340# # Reads 'mntr' stats from one or many zookeeper servers
2341# [[inputs.zookeeper]]
2342# ## An array of address to gather stats about. Specify an ip or hostname
2343# ## with port. ie localhost:2181, 10.0.0.1:2181, etc.
2344#
2345# ## If no servers are specified, then localhost is used as the host.
2346# ## If no port is specified, 2181 is used
2347# servers = [":2181"]
2348
2349
2350
2351###############################################################################
2352# SERVICE INPUT PLUGINS #
2353###############################################################################
2354
2355# # AMQP consumer plugin
2356# [[inputs.amqp_consumer]]
2357# ## AMQP url
2358# url = "amqp://localhost:5672/influxdb"
2359# ## AMQP exchange
2360# exchange = "telegraf"
2361# ## AMQP queue name
2362# queue = "telegraf"
2363# ## Binding Key
2364# binding_key = "#"
2365#
2366# ## Maximum number of messages server should give to the worker.
2367# prefetch_count = 50
2368#
2369# ## Auth method. PLAIN and EXTERNAL are supported
2370# ## Using EXTERNAL requires enabling the rabbitmq_auth_mechanism_ssl plugin as
2371# ## described here: https://www.rabbitmq.com/plugins.html
2372# # auth_method = "PLAIN"
2373#
2374# ## Optional SSL Config
2375# # ssl_ca = "/etc/telegraf/ca.pem"
2376# # ssl_cert = "/etc/telegraf/cert.pem"
2377# # ssl_key = "/etc/telegraf/key.pem"
2378# ## Use SSL but skip chain & host verification
2379# # insecure_skip_verify = false
2380#
2381# ## Data format to consume.
2382# ## Each data format has its own unique set of configuration options, read
2383# ## more about them here:
2384# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md
2385# data_format = "influx"
2386
2387
2388# # Influx HTTP write listener
2389# [[inputs.http_listener]]
2390# ## Address and port to host HTTP listener on
2391# service_address = ":8186"
2392#
2393# ## maximum duration before timing out read of the request
2394# read_timeout = "10s"
2395# ## maximum duration before timing out write of the response
2396# write_timeout = "10s"
2397#
2398# ## Maximum allowed http request body size in bytes.
2399# ## 0 means to use the default of 536,870,912 bytes (500 mebibytes)
2400# max_body_size = 0
2401#
2402# ## Maximum line size allowed to be sent in bytes.
2403# ## 0 means to use the default of 65536 bytes (64 kibibytes)
2404# max_line_size = 0
2405
2406
2407# # Read metrics from Kafka topic(s)
2408# [[inputs.kafka_consumer]]
2409# ## kafka servers
2410# brokers = ["localhost:9092"]
2411# ## topic(s) to consume
2412# topics = ["telegraf"]
2413#
2414# ## Optional SSL Config
2415# # ssl_ca = "/etc/telegraf/ca.pem"
2416# # ssl_cert = "/etc/telegraf/cert.pem"
2417# # ssl_key = "/etc/telegraf/key.pem"
2418# ## Use SSL but skip chain & host verification
2419# # insecure_skip_verify = false
2420#
2421# ## Optional SASL Config
2422# # sasl_username = "kafka"
2423# # sasl_password = "secret"
2424#
2425# ## the name of the consumer group
2426# consumer_group = "telegraf_metrics_consumers"
2427# ## Offset (must be either "oldest" or "newest")
2428# offset = "oldest"
2429#
2430# ## Data format to consume.
2431# ## Each data format has its own unique set of configuration options, read
2432# ## more about them here:
2433# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md
2434# data_format = "influx"
2435#
2436# ## Maximum length of a message to consume, in bytes (default 0/unlimited);
2437# ## larger messages are dropped
2438# max_message_len = 65536
2439
2440
2441# # Read metrics from Kafka topic(s)
2442# [[inputs.kafka_consumer_legacy]]
2443# ## topic(s) to consume
2444# topics = ["telegraf"]
2445# ## an array of Zookeeper connection strings
2446# zookeeper_peers = ["localhost:2181"]
2447# ## Zookeeper Chroot
2448# zookeeper_chroot = ""
2449# ## the name of the consumer group
2450# consumer_group = "telegraf_metrics_consumers"
2451# ## Offset (must be either "oldest" or "newest")
2452# offset = "oldest"
2453#
2454# ## Data format to consume.
2455# ## Each data format has its own unique set of configuration options, read
2456# ## more about them here:
2457# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md
2458# data_format = "influx"
2459#
2460# ## Maximum length of a message to consume, in bytes (default 0/unlimited);
2461# ## larger messages are dropped
2462# max_message_len = 65536
2463
2464
2465# # Stream and parse log file(s).
2466# [[inputs.logparser]]
2467# ## Log files to parse.
2468# ## These accept standard unix glob matching rules, but with the addition of
2469# ## ** as a "super asterisk". ie:
2470# ## /var/log/**.log -> recursively find all .log files in /var/log
2471# ## /var/log/*/*.log -> find all .log files with a parent dir in /var/log
2472# ## /var/log/apache.log -> only tail the apache log file
2473# files = ["/var/log/apache/access.log"]
2474#
2475# ## Read files that currently exist from the beginning. Files that are created
2476# ## while telegraf is running (and that match the "files" globs) will always
2477# ## be read from the beginning.
2478# from_beginning = false
2479#
2480# ## Parse logstash-style "grok" patterns:
2481# ## Telegraf built-in parsing patterns: https://goo.gl/dkay10
2482# [inputs.logparser.grok]
2483# ## This is a list of patterns to check the given log file(s) for.
2484# ## Note that adding patterns here increases processing time. The most
2485# ## efficient configuration is to have one pattern per logparser.
2486# ## Other common built-in patterns are:
2487# ## %{COMMON_LOG_FORMAT} (plain apache & nginx access logs)
2488# ## %{COMBINED_LOG_FORMAT} (access logs + referrer & agent)
2489# patterns = ["%{COMBINED_LOG_FORMAT}"]
2490#
2491# ## Name of the outputted measurement name.
2492# measurement = "apache_access_log"
2493#
2494# ## Full path(s) to custom pattern files.
2495# custom_pattern_files = []
2496#
2497# ## Custom patterns can also be defined here. Put one pattern per line.
2498# custom_patterns = '''
2499#
2500# ## Timezone allows you to provide an override for timestamps that
2501# ## don't already include an offset
2502# ## e.g. 04/06/2016 12:41:45 data one two 5.43µs
2503# ##
2504# ## Default: "" which renders UTC
2505# ## Options are as follows:
2506# ## 1. Local -- interpret based on machine localtime
2507# ## 2. "Canada/Eastern" -- Unix TZ values like those found in https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
2508# ## 3. UTC -- or blank/unspecified, will return timestamp in UTC
2509# timezone = "Canada/Eastern"
2510# '''
2511
2512
2513# # Read metrics from MQTT topic(s)
2514# [[inputs.mqtt_consumer]]
2515# servers = ["localhost:1883"]
2516# ## MQTT QoS, must be 0, 1, or 2
2517# qos = 0
2518# ## Connection timeout for initial connection in seconds
2519# connection_timeout = 30
2520#
2521# ## Topics to subscribe to
2522# topics = [
2523# "telegraf/host01/cpu",
2524# "telegraf/+/mem",
2525# "sensors/#",
2526# ]
2527#
2528# # if true, messages that can't be delivered while the subscriber is offline
2529# # will be delivered when it comes back (such as on service restart).
2530# # NOTE: if true, client_id MUST be set
2531# persistent_session = false
2532# # If empty, a random client ID will be generated.
2533# client_id = ""
2534#
2535# ## username and password to connect MQTT server.
2536# # username = "telegraf"
2537# # password = "metricsmetricsmetricsmetrics"
2538#
2539# ## Optional SSL Config
2540# # ssl_ca = "/etc/telegraf/ca.pem"
2541# # ssl_cert = "/etc/telegraf/cert.pem"
2542# # ssl_key = "/etc/telegraf/key.pem"
2543# ## Use SSL but skip chain & host verification
2544# # insecure_skip_verify = false
2545#
2546# ## Data format to consume.
2547# ## Each data format has its own unique set of configuration options, read
2548# ## more about them here:
2549# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md
2550# data_format = "influx"
2551
2552
2553# # Read metrics from NATS subject(s)
2554# [[inputs.nats_consumer]]
2555# ## urls of NATS servers
2556# # servers = ["nats://localhost:4222"]
2557# ## Use Transport Layer Security
2558# # secure = false
2559# ## subject(s) to consume
2560# # subjects = ["telegraf"]
2561# ## name a queue group
2562# # queue_group = "telegraf_consumers"
2563#
2564# ## Sets the limits for pending msgs and bytes for each subscription
2565# ## These shouldn't need to be adjusted except in very high throughput scenarios
2566# # pending_message_limit = 65536
2567# # pending_bytes_limit = 67108864
2568#
2569# ## Data format to consume.
2570# ## Each data format has its own unique set of configuration options, read
2571# ## more about them here:
2572# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md
2573# data_format = "influx"
2574
2575
2576# # Read NSQ topic for metrics.
2577# [[inputs.nsq_consumer]]
2578# ## An string representing the NSQD TCP Endpoint
2579# server = "localhost:4150"
2580# topic = "telegraf"
2581# channel = "consumer"
2582# max_in_flight = 100
2583#
2584# ## Data format to consume.
2585# ## Each data format has its own unique set of configuration options, read
2586# ## more about them here:
2587# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md
2588# data_format = "influx"
2589
2590
2591# # Generic socket listener capable of handling multiple socket types.
2592# [[inputs.socket_listener]]
2593# ## URL to listen on
2594# # service_address = "tcp://:8094"
2595# # service_address = "tcp://127.0.0.1:http"
2596# # service_address = "tcp4://:8094"
2597# # service_address = "tcp6://:8094"
2598# # service_address = "tcp6://[2001:db8::1]:8094"
2599# # service_address = "udp://:8094"
2600# # service_address = "udp4://:8094"
2601# # service_address = "udp6://:8094"
2602# # service_address = "unix:///tmp/telegraf.sock"
2603# # service_address = "unixgram:///tmp/telegraf.sock"
2604#
2605# ## Maximum number of concurrent connections.
2606# ## Only applies to stream sockets (e.g. TCP).
2607# ## 0 (default) is unlimited.
2608# # max_connections = 1024
2609#
2610# ## Read timeout.
2611# ## Only applies to stream sockets (e.g. TCP).
2612# ## 0 (default) is unlimited.
2613# # read_timeout = "30s"
2614#
2615# ## Maximum socket buffer size in bytes.
2616# ## For stream sockets, once the buffer fills up, the sender will start backing up.
2617# ## For datagram sockets, once the buffer fills up, metrics will start dropping.
2618# ## Defaults to the OS default.
2619# # read_buffer_size = 65535
2620#
2621# ## Period between keep alive probes.
2622# ## Only applies to TCP sockets.
2623# ## 0 disables keep alive probes.
2624# ## Defaults to the OS configuration.
2625# # keep_alive_period = "5m"
2626#
2627# ## Data format to consume.
2628# ## Each data format has its own unique set of configuration options, read
2629# ## more about them here:
2630# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md
2631# # data_format = "influx"
2632
2633
2634# # Statsd UDP/TCP Server
2635# [[inputs.statsd]]
2636# ## Protocol, must be "tcp" or "udp" (default=udp)
2637# protocol = "udp"
2638#
2639# ## MaxTCPConnection - applicable when protocol is set to tcp (default=250)
2640# max_tcp_connections = 250
2641#
2642# ## Address and port to host UDP listener on
2643# service_address = ":8125"
2644#
2645# ## The following configuration options control when telegraf clears it's cache
2646# ## of previous values. If set to false, then telegraf will only clear it's
2647# ## cache when the daemon is restarted.
2648# ## Reset gauges every interval (default=true)
2649# delete_gauges = true
2650# ## Reset counters every interval (default=true)
2651# delete_counters = true
2652# ## Reset sets every interval (default=true)
2653# delete_sets = true
2654# ## Reset timings & histograms every interval (default=true)
2655# delete_timings = true
2656#
2657# ## Percentiles to calculate for timing & histogram stats
2658# percentiles = [90]
2659#
2660# ## separator to use between elements of a statsd metric
2661# metric_separator = "_"
2662#
2663# ## Parses tags in the datadog statsd format
2664# ## http://docs.datadoghq.com/guides/dogstatsd/
2665# parse_data_dog_tags = false
2666#
2667# ## Statsd data translation templates, more info can be read here:
2668# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md#graphite
2669# # templates = [
2670# # "cpu.* measurement*"
2671# # ]
2672#
2673# ## Number of UDP messages allowed to queue up, once filled,
2674# ## the statsd server will start dropping packets
2675# allowed_pending_messages = 10000
2676#
2677# ## Number of timing/histogram values to track per-measurement in the
2678# ## calculation of percentiles. Raising this limit increases the accuracy
2679# ## of percentiles but also increases the memory usage and cpu time.
2680# percentile_limit = 1000
2681
2682
2683# # Stream a log file, like the tail -f command
2684# [[inputs.tail]]
2685# ## files to tail.
2686# ## These accept standard unix glob matching rules, but with the addition of
2687# ## ** as a "super asterisk". ie:
2688# ## "/var/log/**.log" -> recursively find all .log files in /var/log
2689# ## "/var/log/*/*.log" -> find all .log files with a parent dir in /var/log
2690# ## "/var/log/apache.log" -> just tail the apache log file
2691# ##
2692# ## See https://github.com/gobwas/glob for more examples
2693# ##
2694# files = ["/var/mymetrics.out"]
2695# ## Read file from beginning.
2696# from_beginning = false
2697# ## Whether file is a named pipe
2698# pipe = false
2699#
2700# ## Data format to consume.
2701# ## Each data format has its own unique set of configuration options, read
2702# ## more about them here:
2703# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md
2704# data_format = "influx"
2705
2706
2707# # Generic TCP listener
2708# [[inputs.tcp_listener]]
2709# # DEPRECATED: the TCP listener plugin has been deprecated in favor of the
2710# # socket_listener plugin
2711# # see https://github.com/influxdata/telegraf/tree/master/plugins/inputs/socket_listener
2712
2713
2714# # Generic UDP listener
2715# [[inputs.udp_listener]]
2716# # DEPRECATED: the TCP listener plugin has been deprecated in favor of the
2717# # socket_listener plugin
2718# # see https://github.com/influxdata/telegraf/tree/master/plugins/inputs/socket_listener
2719
2720
2721# # A Webhooks Event collector
2722# [[inputs.webhooks]]
2723# ## Address and port to host Webhook listener on
2724# service_address = ":1619"
2725#
2726# [inputs.webhooks.filestack]
2727# path = "/filestack"
2728#
2729# [inputs.webhooks.github]
2730# path = "/github"
2731# # secret = ""
2732#
2733# [inputs.webhooks.mandrill]
2734# path = "/mandrill"
2735#
2736# [inputs.webhooks.rollbar]
2737# path = "/rollbar"
2738#
2739# [inputs.webhooks.papertrail]
2740# path = "/papertrail"
2741
2742
2743# # This plugin implements the Zipkin http server to gather trace and timing data needed to troubleshoot latency problems in microservice architectures.
2744# [[inputs.zipkin]]
2745# # path = "/api/v1/spans" # URL path for span data
2746# # port = 9411 # Port on which Telegraf listens