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