From 5780c285ce27108ac564051f63b6c5d4f7a9df62 Mon Sep 17 00:00:00 2001 From: kev Date: Fri, 9 Sep 2016 08:43:02 +0800 Subject: [PATCH] move grafana/telegraf/influxdb (arm) to EasyPi/docker-dashboard-arm --- README.md | 3 - grafana/arm/Dockerfile | 37 - grafana/arm/docker-compose.yml | 9 - influxdb/Dockerfile | 4 +- influxdb/arm/Dockerfile | 29 - influxdb/arm/docker-compose.yml | 8 - telegraf/arm/Dockerfile | 21 - telegraf/arm/docker-compose.yml | 10 - telegraf/arm/telegraf.conf | 1569 ------------------------------- 9 files changed, 2 insertions(+), 1688 deletions(-) delete mode 100644 grafana/arm/Dockerfile delete mode 100644 grafana/arm/docker-compose.yml delete mode 100644 influxdb/arm/Dockerfile delete mode 100644 influxdb/arm/docker-compose.yml delete mode 100644 telegraf/arm/Dockerfile delete mode 100644 telegraf/arm/docker-compose.yml delete mode 100644 telegraf/arm/telegraf.conf diff --git a/README.md b/README.md index 6f5c5eb..37c24cc 100644 --- a/README.md +++ b/README.md @@ -59,7 +59,6 @@ A collection of delicious docker recipes. - [x] httpbin :+1: - [x] hubot - [x] influxdb -- [x] influxdb-arm - [x] mariadb - [x] mariadb-arm - [x] monit @@ -84,7 +83,6 @@ A collection of delicious docker recipes. - [x] swarm-arm - [x] taskd - [x] telegraf -- [x] telegraf-arm - [x] tmail :beetle: - [x] urlwatch :beetle: - [x] vnstat @@ -119,7 +117,6 @@ A collection of delicious docker recipes. - [x] dokuwiki-arm :+1: - [x] gogs-arm :cn: - [x] grafana -- [x] grafana-arm - [x] hugo - [x] hugo-arm - [x] jamapi diff --git a/grafana/arm/Dockerfile b/grafana/arm/Dockerfile deleted file mode 100644 index 21af7cd..0000000 --- a/grafana/arm/Dockerfile +++ /dev/null @@ -1,37 +0,0 @@ -# -# Dockerfile for grafana-arm -# - -FROM resin/rpi-raspbian:jessie -MAINTAINER kev - -ENV GRAFANA_VERSION=3.0.4-1464202710 -ENV GRAFANA_FILE=grafana_${GRAFANA_VERSION}_armhf.deb -ENV GRAFANA_URL=https://github.com/vimagick/rpi-bin/raw/master/deb/${GRAFANA_FILE} - -RUN set -xe \ - && apt-get update \ - && apt-get install -y ca-certificates \ - libfontconfig \ - wget \ - && wget ${GRAFANA_URL} \ - && dpkg -i ${GRAFANA_FILE} \ - && apt-get purge --auto-remove -y wget \ - && rm -rf ${GRAFANA_FILE} \ - /var/lib/apt/lists/* - -ENV GF_PATHS_DATA=/var/lib/grafana -ENV GF_PATHS_LOGS=/var/log/grafana -ENV GF_PATHS_PLUGINS=/var/lib/grafana/plugins - -VOLUME /etc/grafana \ - $GF_PATHS_DATA \ - $GF_PATHS_LOGS - -EXPOSE 3000 - -CMD grafana-server --homepath=/usr/share/grafana \ - --config=/etc/grafana/grafana.ini \ - cfg:default.paths.data="$GF_PATHS_DATA" \ - cfg:default.paths.logs="$GF_PATHS_LOGS" \ - cfg:default.paths.plugins="$GF_PATHS_PLUGINS" diff --git a/grafana/arm/docker-compose.yml b/grafana/arm/docker-compose.yml deleted file mode 100644 index 2654aa2..0000000 --- a/grafana/arm/docker-compose.yml +++ /dev/null @@ -1,9 +0,0 @@ -grafana: - image: easypi/grafana-arm - ports: - - "3000:3000" - environment: - - GF_SERVER_ROOT_URL=http://grafana.easypi.info/ - - GF_SECURITY_ADMIN_USER=admin - - GF_SECURITY_ADMIN_PASSWORD=admin - restart: always diff --git a/influxdb/Dockerfile b/influxdb/Dockerfile index 73d9268..5805dba 100644 --- a/influxdb/Dockerfile +++ b/influxdb/Dockerfile @@ -5,9 +5,9 @@ FROM debian:jessie MAINTAINER kev -ENV INFLUXDB_VERSION=0.13.0 +ENV INFLUXDB_VERSION=1.0.0 ENV INFLUXDB_FILE=influxdb_${INFLUXDB_VERSION}_amd64.deb -ENV INFLUXDB_MD5=4f0aa76fee22cf4c18e2a0779ba4f462 +ENV INFLUXDB_MD5=a25daf049d2482166b248fe2d0be4b69 ENV INFLUXDB_URL=https://dl.influxdata.com/influxdb/releases/${INFLUXDB_FILE} ENV COLLECTD_URL=https://github.com/collectd/collectd/raw/master/src/types.db diff --git a/influxdb/arm/Dockerfile b/influxdb/arm/Dockerfile deleted file mode 100644 index 448b602..0000000 --- a/influxdb/arm/Dockerfile +++ /dev/null @@ -1,29 +0,0 @@ -# -# Dockerfile for influxdb-arm -# - -FROM resin/rpi-raspbian:jessie -MAINTAINER kev - -ENV INFLUXDB_VERSION=0.13.0 -ENV INFLUXDB_FILE=influxdb_${INFLUXDB_VERSION}_armhf.deb -ENV INFLUXDB_MD5=bcca4c91bbd8e7f60e4a8325be67a08a -ENV INFLUXDB_URL=https://dl.influxdata.com/influxdb/releases/${INFLUXDB_FILE} -ENV COLLECTD_URL=https://github.com/collectd/collectd/raw/master/src/types.db - -RUN set -xe \ - && apt-get update \ - && apt-get install -y ca-certificates wget \ - && wget ${INFLUXDB_URL} -O ${INFLUXDB_FILE} \ - && echo "${INFLUXDB_MD5} ${INFLUXDB_FILE}" | md5sum -c \ - && dpkg -i ${INFLUXDB_FILE} \ - && sed -i '/^reporting-disabled/s/false/true/' /etc/influxdb/influxdb.conf \ - && wget ${COLLECTD_URL} -O /usr/lib/influxdb/types.db \ - && apt-get purge --auto-remove -y wget \ - && rm -rf ${INFLUXDB_FILE} \ - /var/lib/apt/lists/* - -VOLUME /etc/influxdb /var/lib/influxdb -EXPOSE 8083 8086 8088 - -CMD ["influxd", "-config", "/etc/influxdb/influxdb.conf"] diff --git a/influxdb/arm/docker-compose.yml b/influxdb/arm/docker-compose.yml deleted file mode 100644 index f9d47bb..0000000 --- a/influxdb/arm/docker-compose.yml +++ /dev/null @@ -1,8 +0,0 @@ -influxdb: - image: easypi/influxdb-arm - ports: - - "8083:8083" - - "8086:8086" - volumes: - - ./data:/var/lib/influxdb - restart: always diff --git a/telegraf/arm/Dockerfile b/telegraf/arm/Dockerfile deleted file mode 100644 index 68d9207..0000000 --- a/telegraf/arm/Dockerfile +++ /dev/null @@ -1,21 +0,0 @@ -# -# Dockerfile for telegraf-arm -# - -FROM easypi/alpine-arm -MAINTAINER kev - -ENV TELEGRAF_VERSION 1.0.0 -ENV TELEGRAF_FILE telegraf-${TELEGRAF_VERSION}_linux_armhf.tar.gz -ENV TELEGRAF_URL https://dl.influxdata.com/telegraf/releases/${TELEGRAF_FILE} - -RUN set -xe \ - && apk add --no-cache --virtual .build-deps ca-certificates curl tar \ - && update-ca-certificates \ - && curl -sSL ${TELEGRAF_URL} | tar xz --strip 2 -C / \ - && apk del .build-deps \ - && rm -rf /var/cache/apk/* - -EXPOSE 8092/udp 8094/tcp 8125/udp - -ENTRYPOINT ["telegraf"] diff --git a/telegraf/arm/docker-compose.yml b/telegraf/arm/docker-compose.yml deleted file mode 100644 index 4e5d3e3..0000000 --- a/telegraf/arm/docker-compose.yml +++ /dev/null @@ -1,10 +0,0 @@ -telegraf: - image: easypi/telegraf-arm - ports: - - "8092:8092/udp" - - "8094:8094/tcp" - volumes: - - ./telegraf.conf:/etc/telegraf/telegraf.conf - net: host - pid: host - restart: always diff --git a/telegraf/arm/telegraf.conf b/telegraf/arm/telegraf.conf deleted file mode 100644 index 94b3d0d..0000000 --- a/telegraf/arm/telegraf.conf +++ /dev/null @@ -1,1569 +0,0 @@ -# Telegraf Configuration -# -# Telegraf is entirely plugin driven. All metrics are gathered from the -# declared inputs, and sent to the declared outputs. -# -# Plugins must be declared in here to be active. -# To deactivate a plugin, comment out the name and any variables. -# -# Use 'telegraf -config telegraf.conf -test' to see what metrics a config -# file would generate. -# -# Environment variables can be used anywhere in this config file, simply prepend -# them with $. For strings the variable must be within quotes (ie, "$STR_VAR"), -# for numbers and booleans they should be plain (ie, $INT_VAR, $BOOL_VAR) - - -# Global tags can be specified here in key="value" format. -[global_tags] - # dc = "us-east-1" # will tag all metrics with dc=us-east-1 - # rack = "1a" - ## Environment variables can be used as tags, and throughout the config file - # user = "$USER" - - -# Configuration for telegraf agent -[agent] - ## Default data collection interval for all inputs - interval = "10s" - ## Rounds collection interval to 'interval' - ## ie, if interval="10s" then always collect on :00, :10, :20, etc. - round_interval = true - - ## Telegraf will send metrics to outputs in batches of at - ## most metric_batch_size metrics. - metric_batch_size = 1000 - ## For failed writes, telegraf will cache metric_buffer_limit metrics for each - ## output, and will flush this buffer on a successful write. Oldest metrics - ## are dropped first when this buffer fills. - metric_buffer_limit = 10000 - - ## Collection jitter is used to jitter the collection by a random amount. - ## Each plugin will sleep for a random time within jitter before collecting. - ## This can be used to avoid many plugins querying things like sysfs at the - ## same time, which can have a measurable effect on the system. - collection_jitter = "0s" - - ## Default flushing interval for all outputs. You shouldn't set this below - ## interval. Maximum flush_interval will be flush_interval + flush_jitter - flush_interval = "10s" - ## Jitter the flush interval by a random amount. This is primarily to avoid - ## large write spikes for users running a large number of telegraf instances. - ## ie, a jitter of 5s and interval 10s means flushes will happen every 10-15s - flush_jitter = "0s" - - ## Run telegraf in debug mode - debug = false - ## Run telegraf in quiet mode - quiet = false - ## Override default hostname, if empty use os.Hostname() - hostname = "" - ## If set to true, do no set the "host" tag in the telegraf agent. - omit_hostname = false - - -############################################################################### -# OUTPUT PLUGINS # -############################################################################### - -# Configuration for influxdb server to send metrics to -[[outputs.influxdb]] - ## The full HTTP or UDP endpoint URL for your InfluxDB instance. - ## Multiple urls can be specified as part of the same cluster, - ## this means that only ONE of the urls will be written to each interval. - # urls = ["udp://localhost:8089"] # UDP endpoint example - urls = ["http://localhost:8086"] # required - ## The target database for metrics (telegraf will create it if not exists). - database = "telegraf" # required - ## Retention policy to write to. - retention_policy = "default" - ## Precision of writes, valid values are "ns", "us" (or "µs"), "ms", "s", "m", "h". - ## note: using "s" precision greatly improves InfluxDB compression. - precision = "s" - - ## Write timeout (for the InfluxDB client), formatted as a string. - ## If not provided, will default to 5s. 0s means no timeout (not recommended). - timeout = "5s" - # username = "telegraf" - # password = "metricsmetricsmetricsmetrics" - ## Set the user agent for HTTP POSTs (can be useful for log differentiation) - # user_agent = "telegraf" - ## Set UDP payload size, defaults to InfluxDB UDP Client default (512 bytes) - # udp_payload = 512 - - ## Optional SSL Config - # ssl_ca = "/etc/telegraf/ca.pem" - # ssl_cert = "/etc/telegraf/cert.pem" - # ssl_key = "/etc/telegraf/key.pem" - ## Use SSL but skip chain & host verification - # insecure_skip_verify = false - - -# # Configuration for Amon Server to send metrics to. -# [[outputs.amon]] -# ## Amon Server Key -# server_key = "my-server-key" # required. -# -# ## Amon Instance URL -# amon_instance = "https://youramoninstance" # required -# -# ## Connection timeout. -# # timeout = "5s" - - -# # Configuration for the AMQP server to send metrics to -# [[outputs.amqp]] -# ## AMQP url -# url = "amqp://localhost:5672/influxdb" -# ## AMQP exchange -# exchange = "telegraf" -# ## Auth method. PLAIN and EXTERNAL are supported -# # auth_method = "PLAIN" -# ## Telegraf tag to use as a routing key -# ## ie, if this tag exists, it's value will be used as the routing key -# routing_tag = "host" -# -# ## InfluxDB retention policy -# # retention_policy = "default" -# ## InfluxDB database -# # database = "telegraf" -# ## InfluxDB precision -# # precision = "s" -# -# ## Optional SSL Config -# # ssl_ca = "/etc/telegraf/ca.pem" -# # ssl_cert = "/etc/telegraf/cert.pem" -# # ssl_key = "/etc/telegraf/key.pem" -# ## Use SSL but skip chain & host verification -# # insecure_skip_verify = false -# -# ## Data format to output. -# ## Each data format has it's own unique set of configuration options, read -# ## more about them here: -# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md -# data_format = "influx" - - -# # Configuration for AWS CloudWatch output. -# [[outputs.cloudwatch]] -# ## Amazon REGION -# region = 'us-east-1' -# -# ## Amazon Credentials -# ## Credentials are loaded in the following order -# ## 1) explicit credentials from 'access_key' and 'secret_key' -# ## 2) environment variables -# ## 3) shared credentials file -# ## 4) EC2 Instance Profile -# #access_key = "" -# #secret_key = "" -# -# ## Namespace for the CloudWatch MetricDatums -# namespace = 'InfluxData/Telegraf' - - -# # Configuration for DataDog API to send metrics to. -# [[outputs.datadog]] -# ## Datadog API key -# apikey = "my-secret-key" # required. -# -# ## Connection timeout. -# # timeout = "5s" - - -# # Send telegraf metrics to file(s) -# [[outputs.file]] -# ## Files to write to, "stdout" is a specially handled file. -# files = ["stdout", "/tmp/metrics.out"] -# -# ## Data format to output. -# ## Each data format has it's own unique set of configuration options, read -# ## more about them here: -# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md -# data_format = "influx" - - -# # Configuration for Graphite server to send metrics to -# [[outputs.graphite]] -# ## TCP endpoint for your graphite instance. -# servers = ["localhost:2003"] -# ## Prefix metrics name -# prefix = "" -# ## Graphite output template -# ## see https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md -# template = "host.tags.measurement.field" -# ## timeout in seconds for the write connection to graphite -# timeout = 2 - - -# # Configuration for the Kafka server to send metrics to -# [[outputs.kafka]] -# ## URLs of kafka brokers -# brokers = ["localhost:9092"] -# ## Kafka topic for producer messages -# topic = "telegraf" -# ## Telegraf tag to use as a routing key -# ## ie, if this tag exists, it's value will be used as the routing key -# routing_tag = "host" -# -# ## CompressionCodec represents the various compression codecs recognized by -# ## Kafka in messages. -# ## 0 : No compression -# ## 1 : Gzip compression -# ## 2 : Snappy compression -# compression_codec = 0 -# -# ## RequiredAcks is used in Produce Requests to tell the broker how many -# ## replica acknowledgements it must see before responding -# ## 0 : the producer never waits for an acknowledgement from the broker. -# ## This option provides the lowest latency but the weakest durability -# ## guarantees (some data will be lost when a server fails). -# ## 1 : the producer gets an acknowledgement after the leader replica has -# ## received the data. This option provides better durability as the -# ## client waits until the server acknowledges the request as successful -# ## (only messages that were written to the now-dead leader but not yet -# ## replicated will be lost). -# ## -1: the producer gets an acknowledgement after all in-sync replicas have -# ## received the data. This option provides the best durability, we -# ## guarantee that no messages will be lost as long as at least one in -# ## sync replica remains. -# required_acks = -1 -# -# ## The total number of times to retry sending a message -# max_retry = 3 -# -# ## Optional SSL Config -# # ssl_ca = "/etc/telegraf/ca.pem" -# # ssl_cert = "/etc/telegraf/cert.pem" -# # ssl_key = "/etc/telegraf/key.pem" -# ## Use SSL but skip chain & host verification -# # insecure_skip_verify = false -# -# ## Data format to output. -# ## Each data format has it's own unique set of configuration options, read -# ## more about them here: -# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md -# data_format = "influx" - - -# # Configuration for the AWS Kinesis output. -# [[outputs.kinesis]] -# ## Amazon REGION of kinesis endpoint. -# region = "ap-southeast-2" -# -# ## Amazon Credentials -# ## Credentials are loaded in the following order -# ## 1) explicit credentials from 'access_key' and 'secret_key' -# ## 2) environment variables -# ## 3) shared credentials file -# ## 4) EC2 Instance Profile -# #access_key = "" -# #secret_key = "" -# -# ## Kinesis StreamName must exist prior to starting telegraf. -# streamname = "StreamName" -# ## PartitionKey as used for sharding data. -# partitionkey = "PartitionKey" -# ## format of the Data payload in the kinesis PutRecord, supported -# ## String and Custom. -# format = "string" -# ## debug will show upstream aws messages. -# debug = false - - -# # Configuration for Librato API to send metrics to. -# [[outputs.librato]] -# ## Librator API Docs -# ## http://dev.librato.com/v1/metrics-authentication -# ## Librato API user -# api_user = "telegraf@influxdb.com" # required. -# ## Librato API token -# api_token = "my-secret-token" # required. -# ## Debug -# # debug = false -# ## Tag Field to populate source attribute (optional) -# ## This is typically the _hostname_ from which the metric was obtained. -# source_tag = "host" -# ## Connection timeout. -# # timeout = "5s" -# ## Output Name Template (same as graphite buckets) -# ## see https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md#graphite -# template = "host.tags.measurement.field" - - -# # Configuration for MQTT server to send metrics to -# [[outputs.mqtt]] -# servers = ["localhost:1883"] # required. -# -# ## MQTT outputs send metrics to this topic format -# ## "///" -# ## ex: prefix/web01.example.com/mem -# topic_prefix = "telegraf" -# -# ## username and password to connect MQTT server. -# # username = "telegraf" -# # password = "metricsmetricsmetricsmetrics" -# -# ## Optional SSL Config -# # ssl_ca = "/etc/telegraf/ca.pem" -# # ssl_cert = "/etc/telegraf/cert.pem" -# # ssl_key = "/etc/telegraf/key.pem" -# ## Use SSL but skip chain & host verification -# # insecure_skip_verify = false -# -# ## Data format to output. -# ## Each data format has it's own unique set of configuration options, read -# ## more about them here: -# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md -# data_format = "influx" - - -# # Send telegraf measurements to NSQD -# [[outputs.nsq]] -# ## Location of nsqd instance listening on TCP -# server = "localhost:4150" -# ## NSQ topic for producer messages -# topic = "telegraf" -# -# ## Data format to output. -# ## Each data format has it's own unique set of configuration options, read -# ## more about them here: -# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md -# data_format = "influx" - - -# # Configuration for OpenTSDB server to send metrics to -# [[outputs.opentsdb]] -# ## prefix for metrics keys -# prefix = "my.specific.prefix." -# -# ## Telnet Mode ## -# ## DNS name of the OpenTSDB server in telnet mode -# host = "opentsdb.example.com" -# -# ## Port of the OpenTSDB server in telnet mode -# port = 4242 -# -# ## Debug true - Prints OpenTSDB communication -# debug = false - - -# # Configuration for the Prometheus client to spawn -# [[outputs.prometheus_client]] -# ## Address to listen on -# # listen = ":9126" - - -# # Configuration for the Riemann server to send metrics to -# [[outputs.riemann]] -# ## URL of server -# url = "localhost:5555" -# ## transport protocol to use either tcp or udp -# transport = "tcp" -# ## separator to use between input name and field name in Riemann service name -# separator = " " - - - -############################################################################### -# INPUT PLUGINS # -############################################################################### - -# Read metrics about cpu usage -[[inputs.cpu]] - ## Whether to report per-cpu stats or not - percpu = true - ## Whether to report total system cpu stats or not - totalcpu = true - ## Comment this line if you want the raw CPU time metrics - fielddrop = ["time_*"] - - -# Read metrics about disk usage by mount point -[[inputs.disk]] - ## By default, telegraf gather stats for all mountpoints. - ## Setting mountpoints will restrict the stats to the specified mountpoints. - # mount_points = ["/"] - - ## Ignore some mountpoints by filesystem type. For example (dev)tmpfs (usually - ## present on /run, /var/run, /dev/shm or /dev). - ignore_fs = ["tmpfs", "devtmpfs"] - - -# Read metrics about disk IO by device -[[inputs.diskio]] - ## By default, telegraf will gather stats for all devices including - ## disk partitions. - ## Setting devices will restrict the stats to the specified devices. - # devices = ["sda", "sdb"] - ## Uncomment the following line if you do not need disk serial numbers. - # skip_serial_number = true - - -# Get kernel statistics from /proc/stat -[[inputs.kernel]] - # no configuration - - -# Read metrics about memory usage -[[inputs.mem]] - # no configuration - - -# Get the number of processes and group them by status -[[inputs.processes]] - # no configuration - - -# Read metrics about swap memory usage -[[inputs.swap]] - # no configuration - - -# Read metrics about system load & uptime -[[inputs.system]] - # no configuration - - -# # Read stats from an aerospike server -# [[inputs.aerospike]] -# ## Aerospike servers to connect to (with port) -# ## This plugin will query all namespaces the aerospike -# ## server has configured and get stats for them. -# servers = ["localhost:3000"] - - -# # Read Apache status information (mod_status) -# [[inputs.apache]] -# ## An array of Apache status URI to gather stats. -# urls = ["http://localhost/server-status?auto"] - - -# # Read metrics of bcache from stats_total and dirty_data -# [[inputs.bcache]] -# ## Bcache sets path -# ## If not specified, then default is: -# bcachePath = "/sys/fs/bcache" -# -# ## By default, telegraf gather stats for all bcache devices -# ## Setting devices will restrict the stats to the specified -# ## bcache devices. -# bcacheDevs = ["bcache0"] - - -# # Read Cassandra metrics through Jolokia -# [[inputs.cassandra]] -# # This is the context root used to compose the jolokia url -# context = "/jolokia/read" -# ## List of cassandra servers exposing jolokia read service -# servers = ["myuser:mypassword@10.10.10.1:8778","10.10.10.2:8778",":8778"] -# ## List of metrics collected on above servers -# ## Each metric consists of a jmx path. -# ## This will collect all heap memory usage metrics from the jvm and -# ## ReadLatency metrics for all keyspaces and tables. -# ## "type=Table" in the query works with Cassandra3.0. Older versions might -# ## need to use "type=ColumnFamily" -# metrics = [ -# "/java.lang:type=Memory/HeapMemoryUsage", -# "/org.apache.cassandra.metrics:type=Table,keyspace=*,scope=*,name=ReadLatency" -# ] - - -# # Pull Metric Statistics from Amazon CloudWatch -# [[inputs.cloudwatch]] -# ## Amazon Region -# region = 'us-east-1' -# -# ## Amazon Credentials -# ## Credentials are loaded in the following order -# ## 1) explicit credentials from 'access_key' and 'secret_key' -# ## 2) environment variables -# ## 3) shared credentials file -# ## 4) EC2 Instance Profile -# #access_key = "" -# #secret_key = "" -# -# ## Requested CloudWatch aggregation Period (required - must be a multiple of 60s) -# period = '1m' -# -# ## Collection Delay (required - must account for metrics availability via CloudWatch API) -# delay = '1m' -# -# ## Recomended: use metric 'interval' that is a multiple of 'period' to avoid -# ## gaps or overlap in pulled data -# interval = '1m' -# -# ## Metric Statistic Namespace (required) -# namespace = 'AWS/ELB' -# -# ## Metrics to Pull (optional) -# ## Defaults to all Metrics in Namespace if nothing is provided -# ## Refreshes Namespace available metrics every 1h -# #[[inputs.cloudwatch.metrics]] -# # names = ['Latency', 'RequestCount'] -# # -# # ## Dimension filters for Metric (optional) -# # [[inputs.cloudwatch.metrics.dimensions]] -# # name = 'LoadBalancerName' -# # value = 'p-example' - - -# # Read metrics from one or many couchbase clusters -# [[inputs.couchbase]] -# ## specify servers via a url matching: -# ## [protocol://][:password]@address[:port] -# ## e.g. -# ## http://couchbase-0.example.com/ -# ## http://admin:secret@couchbase-0.example.com:8091/ -# ## -# ## If no servers are specified, then localhost is used as the host. -# ## If no protocol is specifed, HTTP is used. -# ## If no port is specified, 8091 is used. -# servers = ["http://localhost:8091"] - - -# # Read CouchDB Stats from one or more servers -# [[inputs.couchdb]] -# ## Works with CouchDB stats endpoints out of the box -# ## Multiple HOSTs from which to read CouchDB stats: -# hosts = ["http://localhost:8086/_stats"] - - -# # Read metrics from one or many disque servers -# [[inputs.disque]] -# ## An array of URI to gather stats about. Specify an ip or hostname -# ## with optional port and password. -# ## ie disque://localhost, disque://10.10.3.33:18832, 10.0.0.1:10000, etc. -# ## If no servers are specified, then localhost is used as the host. -# servers = ["localhost"] - - -# # Query given DNS server and gives statistics -# [[inputs.dns_query]] -# ## servers to query -# servers = ["8.8.8.8"] # required -# -# ## Domains or subdomains to query. "."(root) is default -# domains = ["."] # optional -# -# ## Query record type. Default is "A" -# ## Posible values: A, AAAA, CNAME, MX, NS, PTR, TXT, SOA, SPF, SRV. -# record_type = "A" # optional -# -# ## Dns server port. 53 is default -# port = 53 # optional -# -# ## Query timeout in seconds. Default is 2 seconds -# timeout = 2 # optional - - -# # Read metrics about docker containers -# [[inputs.docker]] -# ## Docker Endpoint -# ## To use TCP, set endpoint = "tcp://[ip]:[port]" -# ## To use environment variables (ie, docker-machine), set endpoint = "ENV" -# endpoint = "unix:///var/run/docker.sock" -# ## Only collect metrics for these containers, collect all if empty -# container_names = [] -# ## Timeout for docker list, info, and stats commands -# timeout = "5s" - - -# # Read statistics from one or many dovecot servers -# [[inputs.dovecot]] -# ## specify dovecot servers via an address:port list -# ## e.g. -# ## localhost:24242 -# ## -# ## If no servers are specified, then localhost is used as the host. -# servers = ["localhost:24242"] -# ## Type is one of "user", "domain", "ip", or "global" -# type = "global" -# ## Wildcard matches like "*.com". An empty string "" is same as "*" -# ## If type = "ip" filters should be -# filters = [""] - - -# # Read stats from one or more Elasticsearch servers or clusters -# [[inputs.elasticsearch]] -# ## specify a list of one or more Elasticsearch servers -# servers = ["http://localhost:9200"] -# -# ## set local to false when you want to read the indices stats from all nodes -# ## within the cluster -# local = true -# -# ## set cluster_health to true when you want to also obtain cluster level stats -# cluster_health = false - - -# # Read metrics from one or more commands that can output to stdout -# [[inputs.exec]] -# ## Commands array -# commands = ["/tmp/test.sh", "/usr/bin/mycollector --foo=bar"] -# -# ## Timeout for each command to complete. -# timeout = "5s" -# -# ## measurement name suffix (for separating different commands) -# name_suffix = "_mycollector" -# -# ## Data format to consume. -# ## Each data format has it's own unique set of configuration options, read -# ## more about them here: -# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md -# data_format = "influx" - - -# # Read stats about given file(s) -# [[inputs.filestat]] -# ## Files to gather stats about. -# ## These accept standard unix glob matching rules, but with the addition of -# ## ** as a "super asterisk". ie: -# ## "/var/log/**.log" -> recursively find all .log files in /var/log -# ## "/var/log/*/*.log" -> find all .log files with a parent dir in /var/log -# ## "/var/log/apache.log" -> just tail the apache log file -# ## -# ## See https://github.com/gobwas/glob for more examples -# ## -# files = ["/var/log/**.log"] -# ## If true, read the entire file and calculate an md5 checksum. -# md5 = false - - -# # Read metrics of haproxy, via socket or csv stats page -# [[inputs.haproxy]] -# ## An array of address to gather stats about. Specify an ip on hostname -# ## with optional port. ie localhost, 10.10.3.33:1936, etc. -# -# ## If no servers are specified, then default to 127.0.0.1:1936 -# servers = ["http://myhaproxy.com:1936", "http://anotherhaproxy.com:1936"] -# ## Or you can also use local socket -# ## servers = ["socket:/run/haproxy/admin.sock"] - - -# # HTTP/HTTPS request given an address a method and a timeout -# [[inputs.http_response]] -# ## Server address (default http://localhost) -# address = "http://github.com" -# ## Set response_timeout (default 5 seconds) -# response_timeout = 5 -# ## HTTP Request Method -# method = "GET" -# ## Whether to follow redirects from the server (defaults to false) -# follow_redirects = true -# ## HTTP Request Headers (all values must be strings) -# # [inputs.http_response.headers] -# # Host = "github.com" -# ## Optional HTTP Request Body -# # body = ''' -# # {'fake':'data'} -# # ''' - - -# # Read flattened metrics from one or more JSON HTTP endpoints -# [[inputs.httpjson]] -# ## NOTE This plugin only reads numerical measurements, strings and booleans -# ## will be ignored. -# -# ## a name for the service being polled -# name = "webserver_stats" -# -# ## URL of each server in the service's cluster -# servers = [ -# "http://localhost:9999/stats/", -# "http://localhost:9998/stats/", -# ] -# -# ## HTTP method to use: GET or POST (case-sensitive) -# method = "GET" -# -# ## List of tag names to extract from top-level of JSON server response -# # tag_keys = [ -# # "my_tag_1", -# # "my_tag_2" -# # ] -# -# ## HTTP parameters (all values must be strings) -# [inputs.httpjson.parameters] -# event_type = "cpu_spike" -# threshold = "0.75" -# -# ## HTTP Header parameters (all values must be strings) -# # [inputs.httpjson.headers] -# # X-Auth-Token = "my-xauth-token" -# # apiVersion = "v1" -# -# ## Optional SSL Config -# # ssl_ca = "/etc/telegraf/ca.pem" -# # ssl_cert = "/etc/telegraf/cert.pem" -# # ssl_key = "/etc/telegraf/key.pem" -# ## Use SSL but skip chain & host verification -# # insecure_skip_verify = false - - -# # Read InfluxDB-formatted JSON metrics from one or more HTTP endpoints -# [[inputs.influxdb]] -# ## Works with InfluxDB debug endpoints out of the box, -# ## but other services can use this format too. -# ## See the influxdb plugin's README for more details. -# -# ## Multiple URLs from which to read InfluxDB-formatted JSON -# urls = [ -# "http://localhost:8086/debug/vars" -# ] - - -# # Read metrics from one or many bare metal servers -# [[inputs.ipmi_sensor]] -# ## specify servers via a url matching: -# ## [username[:password]@][protocol[(address)]] -# ## e.g. -# ## root:passwd@lan(127.0.0.1) -# ## -# servers = ["USERID:PASSW0RD@lan(192.168.1.1)"] - - -# # Read JMX metrics through Jolokia -# [[inputs.jolokia]] -# ## This is the context root used to compose the jolokia url -# context = "/jolokia" -# -# ## This specifies the mode used -# # mode = "proxy" -# # -# ## When in proxy mode this section is used to specify further -# ## proxy address configurations. -# ## Remember to change host address to fit your environment. -# # [inputs.jolokia.proxy] -# # host = "127.0.0.1" -# # port = "8080" -# -# -# ## List of servers exposing jolokia read service -# [[inputs.jolokia.servers]] -# name = "as-server-01" -# host = "127.0.0.1" -# port = "8080" -# # username = "myuser" -# # password = "mypassword" -# -# ## List of metrics collected on above servers -# ## Each metric consists in a name, a jmx path and either -# ## a pass or drop slice attribute. -# ## This collect all heap memory usage metrics. -# [[inputs.jolokia.metrics]] -# name = "heap_memory_usage" -# mbean = "java.lang:type=Memory" -# attribute = "HeapMemoryUsage" -# -# ## This collect thread counts metrics. -# [[inputs.jolokia.metrics]] -# name = "thread_count" -# mbean = "java.lang:type=Threading" -# attribute = "TotalStartedThreadCount,ThreadCount,DaemonThreadCount,PeakThreadCount" -# -# ## This collect number of class loaded/unloaded counts metrics. -# [[inputs.jolokia.metrics]] -# name = "class_count" -# mbean = "java.lang:type=ClassLoading" -# attribute = "LoadedClassCount,UnloadedClassCount,TotalLoadedClassCount" - - -# # Read metrics from a LeoFS Server via SNMP -# [[inputs.leofs]] -# ## An array of URI to gather stats about LeoFS. -# ## Specify an ip or hostname with port. ie 127.0.0.1:4020 -# servers = ["127.0.0.1:4021"] - - -# # Read metrics from local Lustre service on OST, MDS -# [[inputs.lustre2]] -# ## An array of /proc globs to search for Lustre stats -# ## If not specified, the default will work on Lustre 2.5.x -# ## -# # ost_procfiles = [ -# # "/proc/fs/lustre/obdfilter/*/stats", -# # "/proc/fs/lustre/osd-ldiskfs/*/stats", -# # "/proc/fs/lustre/obdfilter/*/job_stats", -# # ] -# # mds_procfiles = [ -# # "/proc/fs/lustre/mdt/*/md_stats", -# # "/proc/fs/lustre/mdt/*/job_stats", -# # ] - - -# # Gathers metrics from the /3.0/reports MailChimp API -# [[inputs.mailchimp]] -# ## MailChimp API key -# ## get from https://admin.mailchimp.com/account/api/ -# api_key = "" # required -# ## Reports for campaigns sent more than days_old ago will not be collected. -# ## 0 means collect all. -# days_old = 0 -# ## Campaign ID to get, if empty gets all campaigns, this option overrides days_old -# # campaign_id = "" - - -# # Read metrics from one or many memcached servers -# [[inputs.memcached]] -# ## An array of address to gather stats about. Specify an ip on hostname -# ## with optional port. ie localhost, 10.0.0.1:11211, etc. -# servers = ["localhost:11211"] -# # unix_sockets = ["/var/run/memcached.sock"] - - -# # Telegraf plugin for gathering metrics from N Mesos masters -# [[inputs.mesos]] -# # Timeout, in ms. -# timeout = 100 -# # A list of Mesos masters, default value is localhost:5050. -# masters = ["localhost:5050"] -# # Metrics groups to be collected, by default, all enabled. -# master_collections = [ -# "resources", -# "master", -# "system", -# "slaves", -# "frameworks", -# "messages", -# "evqueue", -# "registrar", -# ] - - -# # Read metrics from one or many MongoDB servers -# [[inputs.mongodb]] -# ## An array of URI to gather stats about. Specify an ip or hostname -# ## with optional port add password. ie, -# ## mongodb://user:auth_key@10.10.3.30:27017, -# ## mongodb://10.10.3.33:18832, -# ## 10.0.0.1:10000, etc. -# servers = ["127.0.0.1:27017"] - - -# # Read metrics from one or many mysql servers -# [[inputs.mysql]] -# ## specify servers via a url matching: -# ## [username[:password]@][protocol[(address)]]/[?tls=[true|false|skip-verify]] -# ## see https://github.com/go-sql-driver/mysql#dsn-data-source-name -# ## e.g. -# ## root:passwd@tcp(127.0.0.1:3306)/?tls=false -# ## root@tcp(127.0.0.1:3306)/?tls=false -# # -# ## If no servers are specified, then localhost is used as the host. -# servers = ["tcp(127.0.0.1:3306)/"] -# ## the limits for metrics form perf_events_statements -# perf_events_statements_digest_text_limit = 120 -# perf_events_statements_limit = 250 -# perf_events_statements_time_limit = 86400 -# # -# ## if the list is empty, then metrics are gathered from all databasee tables -# table_schema_databases = [] -# # -# ## gather metrics from INFORMATION_SCHEMA.TABLES for databases provided above list -# gather_table_schema = false -# # -# ## gather thread state counts from INFORMATION_SCHEMA.PROCESSLIST -# gather_process_list = true -# # -# ## gather auto_increment columns and max values from information schema -# gather_info_schema_auto_inc = true -# # -# ## gather metrics from SHOW SLAVE STATUS command output -# gather_slave_status = true -# # -# ## gather metrics from SHOW BINARY LOGS command output -# gather_binary_logs = false -# # -# ## gather metrics from PERFORMANCE_SCHEMA.TABLE_IO_WAITS_SUMMART_BY_TABLE -# gather_table_io_waits = false -# # -# ## gather metrics from PERFORMANCE_SCHEMA.TABLE_LOCK_WAITS -# gather_table_lock_waits = false -# # -# ## gather metrics from PERFORMANCE_SCHEMA.TABLE_IO_WAITS_SUMMART_BY_INDEX_USAGE -# gather_index_io_waits = false -# # -# ## gather metrics from PERFORMANCE_SCHEMA.EVENT_WAITS -# gather_event_waits = false -# # -# ## gather metrics from PERFORMANCE_SCHEMA.FILE_SUMMARY_BY_EVENT_NAME -# gather_file_events_stats = false -# # -# ## gather metrics from PERFORMANCE_SCHEMA.EVENTS_STATEMENTS_SUMMARY_BY_DIGEST -# gather_perf_events_statements = false -# # -# ## Some queries we may want to run less often (such as SHOW GLOBAL VARIABLES) -# interval_slow = "30m" - - -# # Read metrics about network interface usage -# [[inputs.net]] -# ## By default, telegraf gathers stats from any up interface (excluding loopback) -# ## Setting interfaces will tell it to gather these explicit interfaces, -# ## regardless of status. -# ## -# # interfaces = ["eth0"] - - -# # TCP or UDP 'ping' given url and collect response time in seconds -# [[inputs.net_response]] -# ## Protocol, must be "tcp" or "udp" -# protocol = "tcp" -# ## Server address (default localhost) -# address = "github.com:80" -# ## Set timeout (default 1.0 seconds) -# timeout = 1.0 -# ## Set read timeout (default 1.0 seconds) -# read_timeout = 1.0 -# ## Optional string sent to the server -# # send = "ssh" -# ## Optional expected string in answer -# # expect = "ssh" - - -# # Read TCP metrics such as established, time wait and sockets counts. -# [[inputs.netstat]] -# # no configuration - - -# # Read Nginx's basic status information (ngx_http_stub_status_module) -# [[inputs.nginx]] -# ## An array of Nginx stub_status URI to gather stats. -# urls = ["http://localhost/status"] - - -# # Read NSQ topic and channel statistics. -# [[inputs.nsq]] -# ## An array of NSQD HTTP API endpoints -# endpoints = ["http://localhost:4151"] - - -# # Get standard NTP query metrics, requires ntpq executable. -# [[inputs.ntpq]] -# ## If false, set the -n ntpq flag. Can reduce metric gather time. -# dns_lookup = true - - -# # Read metrics of passenger using passenger-status -# [[inputs.passenger]] -# ## Path of passenger-status. -# ## -# ## Plugin gather metric via parsing XML output of passenger-status -# ## More information about the tool: -# ## https://www.phusionpassenger.com/library/admin/apache/overall_status_report.html -# ## -# ## If no path is specified, then the plugin simply execute passenger-status -# ## hopefully it can be found in your PATH -# command = "passenger-status -v --show=xml" - - -# # Read metrics of phpfpm, via HTTP status page or socket -# [[inputs.phpfpm]] -# ## An array of addresses to gather stats about. Specify an ip or hostname -# ## with optional port and path -# ## -# ## Plugin can be configured in three modes (either can be used): -# ## - http: the URL must start with http:// or https://, ie: -# ## "http://localhost/status" -# ## "http://192.168.130.1/status?full" -# ## -# ## - unixsocket: path to fpm socket, ie: -# ## "/var/run/php5-fpm.sock" -# ## or using a custom fpm status path: -# ## "/var/run/php5-fpm.sock:fpm-custom-status-path" -# ## -# ## - fcgi: the URL must start with fcgi:// or cgi://, and port must be present, ie: -# ## "fcgi://10.0.0.12:9000/status" -# ## "cgi://10.0.10.12:9001/status" -# ## -# ## Example of multiple gathering from local socket and remove host -# ## urls = ["http://192.168.1.20/status", "/tmp/fpm.sock"] -# urls = ["http://localhost/status"] - - -# # Ping given url(s) and return statistics -# [[inputs.ping]] -# ## NOTE: this plugin forks the ping command. You may need to set capabilities -# ## via setcap cap_net_raw+p /bin/ping -# # -# ## urls to ping -# urls = ["www.google.com"] # required -# ## number of pings to send per collection (ping -c ) -# count = 1 # required -# ## interval, in s, at which to ping. 0 == default (ping -i ) -# ping_interval = 0.0 -# ## ping timeout, in s. 0 == no timeout (ping -W ) -# timeout = 1.0 -# ## interface to send ping from (ping -I ) -# interface = "" - - -# # Read metrics from one or many postgresql servers -# [[inputs.postgresql]] -# ## specify address via a url matching: -# ## postgres://[pqgotest[:password]]@localhost[/dbname]\ -# ## ?sslmode=[disable|verify-ca|verify-full] -# ## or a simple string: -# ## host=localhost user=pqotest password=... sslmode=... dbname=app_production -# ## -# ## All connection parameters are optional. -# ## -# ## Without the dbname parameter, the driver will default to a database -# ## with the same name as the user. This dbname is just for instantiating a -# ## connection with the server and doesn't restrict the databases we are trying -# ## to grab metrics for. -# ## -# address = "host=localhost user=postgres sslmode=disable" -# -# ## A list of databases to pull metrics about. If not specified, metrics for all -# ## databases are gathered. -# # databases = ["app_production", "testing"] - - -# # Read metrics from one or many postgresql servers -# [[inputs.postgresql_extensible]] -# ## specify address via a url matching: -# ## postgres://[pqgotest[:password]]@localhost[/dbname]\ -# ## ?sslmode=[disable|verify-ca|verify-full] -# ## or a simple string: -# ## host=localhost user=pqotest password=... sslmode=... dbname=app_production -# # -# ## All connection parameters are optional. # -# ## Without the dbname parameter, the driver will default to a database -# ## with the same name as the user. This dbname is just for instantiating a -# ## connection with the server and doesn't restrict the databases we are trying -# ## to grab metrics for. -# # -# address = "host=localhost user=postgres sslmode=disable" -# ## A list of databases to pull metrics about. If not specified, metrics for all -# ## databases are gathered. -# ## databases = ["app_production", "testing"] -# # -# # outputaddress = "db01" -# ## A custom name for the database that will be used as the "server" tag in the -# ## measurement output. If not specified, a default one generated from -# ## the connection address is used. -# # -# ## Define the toml config where the sql queries are stored -# ## New queries can be added, if the withdbname is set to true and there is no -# ## databases defined in the 'databases field', the sql query is ended by a -# ## 'is not null' in order to make the query succeed. -# ## Example : -# ## The sqlquery : "SELECT * FROM pg_stat_database where datname" become -# ## "SELECT * FROM pg_stat_database where datname IN ('postgres', 'pgbench')" -# ## because the databases variable was set to ['postgres', 'pgbench' ] and the -# ## withdbname was true. Be careful that if the withdbname is set to false you -# ## don't have to define the where clause (aka with the dbname) the tagvalue -# ## field is used to define custom tags (separated by commas) -# ## The optional "measurement" value can be used to override the default -# ## output measurement name ("postgresql"). -# # -# ## Structure : -# ## [[inputs.postgresql_extensible.query]] -# ## sqlquery string -# ## version string -# ## withdbname boolean -# ## tagvalue string (comma separated) -# ## measurement string -# [[inputs.postgresql_extensible.query]] -# sqlquery="SELECT * FROM pg_stat_database" -# version=901 -# withdbname=false -# tagvalue="" -# measurement="" -# [[inputs.postgresql_extensible.query]] -# sqlquery="SELECT * FROM pg_stat_bgwriter" -# version=901 -# withdbname=false -# tagvalue="postgresql.stats" - - -# # Read metrics from one or many PowerDNS servers -# [[inputs.powerdns]] -# ## An array of sockets to gather stats about. -# ## Specify a path to unix socket. -# unix_sockets = ["/var/run/pdns.controlsocket"] - - -# # Monitor process cpu and memory usage -# [[inputs.procstat]] -# ## Must specify one of: pid_file, exe, or pattern -# ## PID file to monitor process -# pid_file = "/var/run/nginx.pid" -# ## executable name (ie, pgrep ) -# # exe = "nginx" -# ## pattern as argument for pgrep (ie, pgrep -f ) -# # pattern = "nginx" -# ## user as argument for pgrep (ie, pgrep -u ) -# # user = "nginx" -# -# ## Field name prefix -# prefix = "" -# ## comment this out if you want raw cpu_time stats -# fielddrop = ["cpu_time_*"] - - -# # Read metrics from one or many prometheus clients -# [[inputs.prometheus]] -# ## An array of urls to scrape metrics from. -# urls = ["http://localhost:9100/metrics"] -# -# ## Use SSL but skip chain & host verification -# # insecure_skip_verify = false -# ## Use bearer token for authorization -# # bearer_token = /path/to/bearer/token - - -# # Reads last_run_summary.yaml file and converts to measurments -# [[inputs.puppetagent]] -# ## Location of puppet last run summary file -# location = "/var/lib/puppet/state/last_run_summary.yaml" - - -# # Read metrics from one or many RabbitMQ servers via the management API -# [[inputs.rabbitmq]] -# url = "http://localhost:15672" # required -# # name = "rmq-server-1" # optional tag -# # username = "guest" -# # password = "guest" -# -# ## A list of nodes to pull metrics about. If not specified, metrics for -# ## all nodes are gathered. -# # nodes = ["rabbit@node1", "rabbit@node2"] - - -# # Read raindrops stats (raindrops - real-time stats for preforking Rack servers) -# [[inputs.raindrops]] -# ## An array of raindrops middleware URI to gather stats. -# urls = ["http://localhost:8080/_raindrops"] - - -# # Read metrics from one or many redis servers -# [[inputs.redis]] -# ## specify servers via a url matching: -# ## [protocol://][:password]@address[:port] -# ## e.g. -# ## tcp://localhost:6379 -# ## tcp://:password@192.168.99.100 -# ## -# ## If no servers are specified, then localhost is used as the host. -# ## If no port is specified, 6379 is used -# servers = ["tcp://localhost:6379"] - - -# # Read metrics from one or many RethinkDB servers -# [[inputs.rethinkdb]] -# ## An array of URI to gather stats about. Specify an ip or hostname -# ## with optional port add password. ie, -# ## rethinkdb://user:auth_key@10.10.3.30:28105, -# ## rethinkdb://10.10.3.33:18832, -# ## 10.0.0.1:10000, etc. -# servers = ["127.0.0.1:28015"] - - -# # Read metrics one or many Riak servers -# [[inputs.riak]] -# # Specify a list of one or more riak http servers -# servers = ["http://localhost:8098"] - - -# # Reads oids value from one or many snmp agents -# [[inputs.snmp]] -# ## Use 'oids.txt' file to translate oids to names -# ## To generate 'oids.txt' you need to run: -# ## snmptranslate -m all -Tz -On | sed -e 's/"//g' > /tmp/oids.txt -# ## Or if you have an other MIB folder with custom MIBs -# ## snmptranslate -M /mycustommibfolder -Tz -On -m all | sed -e 's/"//g' > oids.txt -# snmptranslate_file = "/tmp/oids.txt" -# [[inputs.snmp.host]] -# address = "192.168.2.2:161" -# # SNMP community -# community = "public" # default public -# # SNMP version (1, 2 or 3) -# # Version 3 not supported yet -# version = 2 # default 2 -# # SNMP response timeout -# timeout = 2.0 # default 2.0 -# # SNMP request retries -# retries = 2 # default 2 -# # Which get/bulk do you want to collect for this host -# collect = ["mybulk", "sysservices", "sysdescr"] -# # Simple list of OIDs to get, in addition to "collect" -# get_oids = [] -# -# [[inputs.snmp.host]] -# address = "192.168.2.3:161" -# community = "public" -# version = 2 -# timeout = 2.0 -# retries = 2 -# collect = ["mybulk"] -# get_oids = [ -# "ifNumber", -# ".1.3.6.1.2.1.1.3.0", -# ] -# -# [[inputs.snmp.get]] -# name = "ifnumber" -# oid = "ifNumber" -# -# [[inputs.snmp.get]] -# name = "interface_speed" -# oid = "ifSpeed" -# instance = "0" -# -# [[inputs.snmp.get]] -# name = "sysuptime" -# oid = ".1.3.6.1.2.1.1.3.0" -# unit = "second" -# -# [[inputs.snmp.bulk]] -# name = "mybulk" -# max_repetition = 127 -# oid = ".1.3.6.1.2.1.1" -# -# [[inputs.snmp.bulk]] -# name = "ifoutoctets" -# max_repetition = 127 -# oid = "ifOutOctets" -# -# [[inputs.snmp.host]] -# address = "192.168.2.13:161" -# #address = "127.0.0.1:161" -# community = "public" -# version = 2 -# timeout = 2.0 -# retries = 2 -# #collect = ["mybulk", "sysservices", "sysdescr", "systype"] -# collect = ["sysuptime" ] -# [[inputs.snmp.host.table]] -# name = "iftable3" -# include_instances = ["enp5s0", "eth1"] -# -# # SNMP TABLEs -# # table without mapping neither subtables -# [[inputs.snmp.table]] -# name = "iftable1" -# oid = ".1.3.6.1.2.1.31.1.1.1" -# -# # table without mapping but with subtables -# [[inputs.snmp.table]] -# name = "iftable2" -# oid = ".1.3.6.1.2.1.31.1.1.1" -# sub_tables = [".1.3.6.1.2.1.2.2.1.13"] -# -# # table with mapping but without subtables -# [[inputs.snmp.table]] -# name = "iftable3" -# oid = ".1.3.6.1.2.1.31.1.1.1" -# # if empty. get all instances -# mapping_table = ".1.3.6.1.2.1.31.1.1.1.1" -# # if empty, get all subtables -# -# # table with both mapping and subtables -# [[inputs.snmp.table]] -# name = "iftable4" -# oid = ".1.3.6.1.2.1.31.1.1.1" -# # if empty get all instances -# mapping_table = ".1.3.6.1.2.1.31.1.1.1.1" -# # if empty get all subtables -# # sub_tables could be not "real subtables" -# sub_tables=[".1.3.6.1.2.1.2.2.1.13", "bytes_recv", "bytes_send"] - - -# # Read metrics from Microsoft SQL Server -# [[inputs.sqlserver]] -# ## Specify instances to monitor with a list of connection strings. -# ## All connection parameters are optional. -# ## By default, the host is localhost, listening on default port, TCP 1433. -# ## for Windows, the user is the currently running AD user (SSO). -# ## See https://github.com/denisenkom/go-mssqldb for detailed connection -# ## parameters. -# # servers = [ -# # "Server=192.168.1.10;Port=1433;User Id=;Password=;app name=telegraf;log=1;", -# # ] - - -# # Sysstat metrics collector -# [[inputs.sysstat]] -# ## Path to the sadc command. -# # -# ## Common Defaults: -# ## Debian/Ubuntu: /usr/lib/sysstat/sadc -# ## Arch: /usr/lib/sa/sadc -# ## RHEL/CentOS: /usr/lib64/sa/sadc -# sadc_path = "/usr/lib/sa/sadc" # required -# # -# # -# ## Path to the sadf command, if it is not in PATH -# # sadf_path = "/usr/bin/sadf" -# # -# # -# ## Activities is a list of activities, that are passed as argument to the -# ## sadc collector utility (e.g: DISK, SNMP etc...) -# ## The more activities that are added, the more data is collected. -# # activities = ["DISK"] -# # -# # -# ## Group metrics to measurements. -# ## -# ## If group is false each metric will be prefixed with a description -# ## and represents itself a measurement. -# ## -# ## If Group is true, corresponding metrics are grouped to a single measurement. -# # group = true -# # -# # -# ## Options for the sadf command. The values on the left represent the sadf -# ## options and the values on the right their description (wich are used for -# ## grouping and prefixing metrics). -# ## -# ## Run 'sar -h' or 'man sar' to find out the supported options for your -# ## sysstat version. -# [inputs.sysstat.options] -# -C = "cpu" -# -B = "paging" -# -b = "io" -# -d = "disk" # requires DISK activity -# "-n ALL" = "network" -# "-P ALL" = "per_cpu" -# -q = "queue" -# -R = "mem" -# -r = "mem_util" -# -S = "swap_util" -# -u = "cpu_util" -# -v = "inode" -# -W = "swap" -# -w = "task" -# # -H = "hugepages" # only available for newer linux distributions -# # "-I ALL" = "interrupts" # requires INT activity -# # -# # -# ## Device tags can be used to add additional tags for devices. -# ## For example the configuration below adds a tag vg with value rootvg for -# ## all metrics with sda devices. -# # [[inputs.sysstat.device_tags.sda]] -# # vg = "rootvg" - - -# # Inserts sine and cosine waves for demonstration purposes -# [[inputs.trig]] -# ## Set the amplitude -# amplitude = 10.0 - - -# # Read Twemproxy stats data -# [[inputs.twemproxy]] -# ## Twemproxy stats address and port (no scheme) -# addr = "localhost:22222" -# ## Monitor pool name -# pools = ["redis_pool", "mc_pool"] - - -# # Read metrics of ZFS from arcstats, zfetchstats and vdev_cache_stats -# [[inputs.zfs]] -# ## ZFS kstat path -# ## If not specified, then default is: -# kstatPath = "/proc/spl/kstat/zfs" -# -# ## By default, telegraf gather all zfs stats -# ## If not specified, then default is: -# kstatMetrics = ["arcstats", "zfetchstats", "vdev_cache_stats"] -# -# ## By default, don't gather zpool stats -# poolMetrics = false - - -# # Reads 'mntr' stats from one or many zookeeper servers -# [[inputs.zookeeper]] -# ## An array of address to gather stats about. Specify an ip or hostname -# ## with port. ie localhost:2181, 10.0.0.1:2181, etc. -# -# ## If no servers are specified, then localhost is used as the host. -# ## If no port is specified, 2181 is used -# servers = [":2181"] - - - -############################################################################### -# SERVICE INPUT PLUGINS # -############################################################################### - -# # A Github Webhook Event collector -# [[inputs.github_webhooks]] -# ## Address and port to host Webhook listener on -# service_address = ":1618" - - -# # Read metrics from Kafka topic(s) -# [[inputs.kafka_consumer]] -# ## topic(s) to consume -# topics = ["telegraf"] -# ## an array of Zookeeper connection strings -# zookeeper_peers = ["localhost:2181"] -# ## Zookeeper Chroot -# zookeeper_chroot = "/" -# ## the name of the consumer group -# consumer_group = "telegraf_metrics_consumers" -# ## Offset (must be either "oldest" or "newest") -# offset = "oldest" -# -# ## Data format to consume. -# ## Each data format has it's own unique set of configuration options, read -# ## more about them here: -# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md -# data_format = "influx" - - -# # Read metrics from MQTT topic(s) -# [[inputs.mqtt_consumer]] -# servers = ["localhost:1883"] -# ## MQTT QoS, must be 0, 1, or 2 -# qos = 0 -# -# ## Topics to subscribe to -# topics = [ -# "telegraf/host01/cpu", -# "telegraf/+/mem", -# "sensors/#", -# ] -# -# # if true, messages that can't be delivered while the subscriber is offline -# # will be delivered when it comes back (such as on service restart). -# # NOTE: if true, client_id MUST be set -# persistent_session = false -# # If empty, a random client ID will be generated. -# client_id = "" -# -# ## username and password to connect MQTT server. -# # username = "telegraf" -# # password = "metricsmetricsmetricsmetrics" -# -# ## Optional SSL Config -# # ssl_ca = "/etc/telegraf/ca.pem" -# # ssl_cert = "/etc/telegraf/cert.pem" -# # ssl_key = "/etc/telegraf/key.pem" -# ## Use SSL but skip chain & host verification -# # insecure_skip_verify = false -# -# ## Data format to consume. -# ## Each data format has it's own unique set of configuration options, read -# ## more about them here: -# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md -# data_format = "influx" - - -# # Read metrics from NATS subject(s) -# [[inputs.nats_consumer]] -# ## urls of NATS servers -# servers = ["nats://localhost:4222"] -# ## Use Transport Layer Security -# secure = false -# ## subject(s) to consume -# subjects = ["telegraf"] -# ## name a queue group -# queue_group = "telegraf_consumers" -# -# ## Data format to consume. -# ## Each data format has it's own unique set of configuration options, read -# ## more about them here: -# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md -# data_format = "influx" - - -# # Statsd Server -# [[inputs.statsd]] -# ## Address and port to host UDP listener on -# service_address = ":8125" -# ## Delete gauges every interval (default=false) -# delete_gauges = false -# ## Delete counters every interval (default=false) -# delete_counters = false -# ## Delete sets every interval (default=false) -# delete_sets = false -# ## Delete timings & histograms every interval (default=true) -# delete_timings = true -# ## Percentiles to calculate for timing & histogram stats -# percentiles = [90] -# -# ## separator to use between elements of a statsd metric -# metric_separator = "_" -# -# ## Parses tags in the datadog statsd format -# ## http://docs.datadoghq.com/guides/dogstatsd/ -# parse_data_dog_tags = false -# -# ## Statsd data translation templates, more info can be read here: -# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md#graphite -# # templates = [ -# # "cpu.* measurement*" -# # ] -# -# ## Number of UDP messages allowed to queue up, once filled, -# ## the statsd server will start dropping packets -# allowed_pending_messages = 10000 -# -# ## Number of timing/histogram values to track per-measurement in the -# ## calculation of percentiles. Raising this limit increases the accuracy -# ## of percentiles but also increases the memory usage and cpu time. -# percentile_limit = 1000 - - -# # Stream a log file, like the tail -f command -# [[inputs.tail]] -# ## files to tail. -# ## These accept standard unix glob matching rules, but with the addition of -# ## ** as a "super asterisk". ie: -# ## "/var/log/**.log" -> recursively find all .log files in /var/log -# ## "/var/log/*/*.log" -> find all .log files with a parent dir in /var/log -# ## "/var/log/apache.log" -> just tail the apache log file -# ## -# ## See https://github.com/gobwas/glob for more examples -# ## -# files = ["/var/mymetrics.out"] -# ## Read file from beginning. -# from_beginning = false -# -# ## Data format to consume. -# ## Each data format has it's own unique set of configuration options, read -# ## more about them here: -# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md -# data_format = "influx" - - -# # Generic TCP listener -# [[inputs.tcp_listener]] -# ## Address and port to host TCP listener on -# service_address = ":8094" -# -# ## Number of TCP messages allowed to queue up. Once filled, the -# ## TCP listener will start dropping packets. -# allowed_pending_messages = 10000 -# -# ## Maximum number of concurrent TCP connections to allow -# max_tcp_connections = 250 -# -# ## Data format to consume. -# ## Each data format has it's own unique set of configuration options, read -# ## more about them here: -# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md -# data_format = "influx" - - -# # Generic UDP listener -# [[inputs.udp_listener]] -# ## Address and port to host UDP listener on -# service_address = ":8092" -# -# ## Number of UDP messages allowed to queue up. Once filled, the -# ## UDP listener will start dropping packets. -# allowed_pending_messages = 10000 -# -# ## Data format to consume. -# ## Each data format has it's own unique set of configuration options, read -# ## more about them here: -# ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md -# data_format = "influx" -