Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ########################## Metricbeat Configuration ###########################
- # This file is a full configuration example documenting all non-deprecated
- # options in comments. For a shorter configuration example, that contains only
- # the most common options, please see metricbeat.yml in the same directory.
- #
- # You can find the full configuration reference here:
- # https://www.elastic.co/guide/en/beats/metricbeat/index.html
- #========================== Modules configuration ============================
- metricbeat.modules:
- #------------------------------- System Module -------------------------------
- - module: system
- metricsets:
- # CPU stats
- - cpu
- # System Load stats
- - load
- # Per CPU core stats
- #- core
- # IO stats
- #- diskio
- # Per filesystem stats
- - filesystem
- # File system summary stats
- #- fsstat
- # Memory stats
- - memory
- # Network stats
- - network
- # Per process stats
- - process
- enabled: true
- period: 10s
- processes: ['.*']
- # if true, exports the CPU usage in ticks, together with the percentage values
- #cpu_ticks: false
- # EXPERIMENTAL: cgroups can be enabled for the process metricset.
- #cgroups: false
- #------------------------------- Apache Module -------------------------------
- #- module: apache
- #metricsets: ["status"]
- #enabled: true
- #period: 10s
- # Apache hosts
- #hosts: ["http://127.0.0.1"]
- # Path to server status. Default server-status
- #server_status_path: "server-status"
- # Username of hosts. Empty by default
- #username: test
- # Password of hosts. Empty by default
- #password: test123
- #------------------------------- haproxy Module ------------------------------
- #- module: haproxy
- #metricsets: [stat, info]
- #enabled: true
- #period: 10s
- #hosts: ['tcp://127.0.0.1:14567']
- #------------------------------- MongoDB Module ------------------------------
- #- module: mongodb
- #metricsets: ["status"]
- #enabled: true
- #period: 10s
- # The hosts must be passed as MongoDB URLs in the format:
- # [mongodb://][user:pass@]host[:port]
- #hosts: ["localhost:27017"]
- #-------------------------------- MySQL Module -------------------------------
- #- module: mysql
- #metricsets: ["status"]
- #enabled: true
- #period: 10s
- # Host DSN should be defined as "tcp(127.0.0.1:3306)/"
- # The username and password can either be set in the DSN or for all hosts in username and password config option
- #hosts: ["root@tcp(127.0.0.1:3306)/"]
- # Username of hosts. Empty by default
- #username: root
- # Password of hosts. Empty by default
- #password: test
- #-------------------------------- Nginx Module -------------------------------
- #- module: nginx
- #metricsets: ["stubstatus"]
- #enabled: true
- #period: 10s
- # Nginx hosts
- #hosts: ["http://127.0.0.1"]
- # Path to server status. Default server-status
- #server_status_path: "server-status"
- #----------------------------- PostgreSQL Module -----------------------------
- #- module: postgresql
- #metricsets:
- # Stats about every PostgreSQL database
- #- database
- # Stats about the background writer process's activity
- #- bgwriter
- # Stats about every PostgreSQL process
- #- activity
- #enabled: true
- #period: 10s
- # The host must be passed as PostgreSQL DSN. Example:
- # postgres://pqgotest:password@localhost:5432?sslmode=disable
- # The available parameters are documented here:
- # https://godoc.org/github.com/lib/pq#hdr-Connection_String_Parameters
- #hosts: ["postgres://postgres@localhost:5432"]
- #-------------------------------- Redis Module -------------------------------
- #- module: redis
- #metricsets: ["info", "keyspace"]
- #enabled: true
- #period: 10s
- # Redis hosts
- #hosts: ["127.0.0.1:6379"]
- # Enabled defines if the module is enabled. Default: true
- #enabled: true
- # Timeout after which time a metricset should return an error
- # Timeout is by default defined as period, as a fetch of a metricset
- # should never take longer then period, as otherwise calls can pile up.
- #timeout: 1s
- # Optional fields to be added to each event
- #fields:
- # datacenter: west
- # Network type to be used for redis connection. Default: tcp
- #network: tcp
- # Max number of concurrent connections. Default: 10
- #maxconn: 10
- # Filters can be used to reduce the number of fields sent.
- #filters:
- # - include_fields:
- # fields: ["stats"]
- # Redis AUTH password. Empty by default.
- #password: foobared
- #------------------------------ ZooKeeper Module -----------------------------
- #- module: zookeeper
- #metricsets: ["mntr"]
- #enabled: true
- #period: 10s
- #hosts: ["localhost:2181"]
- #================================ General =====================================
- # The name of the shipper that publishes the network data. It can be used to group
- # all the transactions sent by a single shipper in the web interface.
- # If this options is not defined, the hostname is used.
- #name:
- # The tags of the shipper are included in their own field with each
- # transaction published. Tags make it easy to group servers by different
- # logical properties.
- #tags: ["service-X", "web-tier"]
- # Optional fields that you can specify to add additional information to the
- # output. Fields can be scalar values, arrays, dictionaries, or any nested
- # combination of these.
- #fields:
- # env: staging
- # If this option is set to true, the custom fields are stored as top-level
- # fields in the output document instead of being grouped under a fields
- # sub-dictionary. Default is false.
- #fields_under_root: false
- # Internal queue size for single events in processing pipeline
- #queue_size: 1000
- # The internal queue size for bulk events in the processing pipeline.
- # Do not modify this value.
- #bulk_queue_size: 0
- # Sets the maximum number of CPUs that can be executing simultaneously. The
- # default is the number of logical CPUs available in the system.
- #max_procs:
- #================================ Processors =====================================
- # Processors are used to reduce the number of fields in the exported event or to
- # enhance the event with external meta data. This section defines a list of processors
- # that are applied one by one and the first one receives the initial event:
- #
- # event -> filter1 -> event1 -> filter2 ->event2 ...
- #
- # Supported processors: drop_fields, drop_event, include_fields
- #
- # For example, you can use the following processors to keep
- # the fields that contain CPU load percentages, but remove the fields that
- # contain CPU ticks values:
- #
- #processors:
- #- include_fields:
- # fields: ["cpu"]
- #- drop_fields:
- # fields: ["cpu.user", "cpu.system"]
- #
- # The following example drops the events that have the HTTP response code 200:
- #
- #processors:
- #- drop_event:
- # when:
- # equals:
- # http.code: 200
- #
- #================================ Outputs =====================================
- # Configure what outputs to use when sending the data collected by the beat.
- # Multiple outputs may be used.
- #-------------------------- Elasticsearch output ------------------------------
- #output.elasticsearch:
- # Boolean flag to enable or disable the output module.
- #enabled: true
- # Array of hosts to connect to.
- # Scheme and port can be left out and will be set to the default (http and 9200)
- # In case you specify and additional path, the scheme is required: http://localhost:9200/path
- # IPv6 addresses should always be defined as: https://[2001:db8::1]:9200
- #hosts: ["localhost:9200"]
- # Set gzip compression level.
- #compression_level: 0
- # Optional protocol and basic auth credentials.
- #protocol: "https"
- #username: "elastic"
- #password: "changeme"
- # Dictionary of HTTP parameters to pass within the url with index operations.
- #parameters:
- #param1: value1
- #param2: value2
- # Number of workers per Elasticsearch host.
- #worker: 1
- # Optional index name. The default is "metricbeat" plus date
- # and generates [metricbeat-]YYYY.MM.DD keys.
- #index: "metricbeat-%{+yyyy.MM.dd}"
- # Optional ingest node pipeline. By default no pipeline will be used.
- #pipeline: ""
- # Optional HTTP Path
- #path: "/elasticsearch"
- # Proxy server url
- #proxy_url: http://proxy:3128
- # The number of times a particular Elasticsearch index operation is attempted. If
- # the indexing operation doesn't succeed after this many retries, the events are
- # dropped. The default is 3.
- #max_retries: 3
- # The maximum number of events to bulk in a single Elasticsearch bulk API index request.
- # The default is 50.
- #bulk_max_size: 50
- # Configure http request timeout before failing an request to Elasticsearch.
- #timeout: 90
- # The number of seconds to wait for new events between two bulk API index requests.
- # If `bulk_max_size` is reached before this interval expires, addition bulk index
- # requests are made.
- #flush_interval: 1s
- # A template is used to set the mapping in Elasticsearch
- # By default template loading is enabled and the template is loaded.
- # These settings can be adjusted to load your own template or overwrite existing ones.
- # Set to false to disable template loading.
- #template.enabled: true
- # Template name. By default the template name is metricbeat.
- #template.name: "metricbeat"
- # Path to template file
- #template.path: "${path.config}/metricbeat.template.json"
- # Overwrite existing template
- #template.overwrite: false
- # If set to true, metricbeat checks the Elasticsearch version at connect time, and if it
- # is 2.x, it loads the file specified by the template.versions.2x.path setting. The
- # default is true.
- #template.versions.2x.enabled: true
- # Path to the Elasticsearch 2.x version of the template file.
- #template.versions.2x.path: "${path.config}/metricbeat.template-es2x.json"
- # Use SSL settings for HTTPS. Default is true.
- #ssl.enabled: true
- # Configure SSL verification mode. If `none` is configured, all server hosts
- # and certificates will be accepted. In this mode, SSL based connections are
- # susceptible to man-in-the-middle attacks. Use only for testing. Default is
- # `full`.
- #ssl.verification_mode: full
- # List of supported/valid TLS versions. By default all TLS versions 1.0 up to
- # 1.2 are enabled.
- #ssl.supported_protocols: [TLSv1.0, TLSv1.1, TLSv1.2]
- # SSL configuration. By default is off.
- # List of root certificates for HTTPS server verifications
- #ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]
- # Certificate for SSL client authentication
- #ssl.certificate: "/etc/pki/client/cert.pem"
- # Client Certificate Key
- #ssl.key: "/etc/pki/client/cert.key"
- # Optional passphrase for decrypting the Certificate Key.
- #ssl.key_passphrase: ''
- # Configure cipher suites to be used for SSL connections
- #ssl.cipher_suites: []
- # Configure curve types for ECDHE based cipher suites
- #ssl.curve_types: []
- #----------------------------- Logstash output --------------------------------
- #output.logstash:
- # Boolean flag to enable or disable the output module.
- #enabled: true
- # The Logstash hosts
- #hosts: ["localhost:5044"]
- # Number of workers per Logstash host.
- #worker: 1
- # Set gzip compression level.
- #compression_level: 3
- # Optional load balance the events between the Logstash hosts
- #loadbalance: true
- # Number of batches to be send asynchronously to logstash while processing
- # new batches.
- #pipelining: 0
- # Optional index name. The default index name is set to name of the beat
- # in all lowercase.
- #index: 'metricbeat'
- # SOCKS5 proxy server URL
- #proxy_url: socks5://user:password@socks5-server:2233
- # Resolve names locally when using a proxy server. Defaults to false.
- #proxy_use_local_resolver: false
- # Enable SSL support. SSL is automatically enabled, if any SSL setting is set.
- #ssl.enabled: true
- # Configure SSL verification mode. If `none` is configured, all server hosts
- # and certificates will be accepted. In this mode, SSL based connections are
- # susceptible to man-in-the-middle attacks. Use only for testing. Default is
- # `full`.
- #ssl.verification_mode: full
- # List of supported/valid TLS versions. By default all TLS versions 1.0 up to
- # 1.2 are enabled.
- #ssl.supported_protocols: [TLSv1.0, TLSv1.1, TLSv1.2]
- # Optional SSL configuration options. SSL is off by default.
- # List of root certificates for HTTPS server verifications
- #ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]
- # Certificate for SSL client authentication
- #ssl.certificate: "/etc/pki/client/cert.pem"
- # Client Certificate Key
- #ssl.key: "/etc/pki/client/cert.key"
- # Optional passphrase for decrypting the Certificate Key.
- #ssl.key_passphrase: ''
- # Configure cipher suites to be used for SSL connections
- #ssl.cipher_suites: []
- # Configure curve types for ECDHE based cipher suites
- #ssl.curve_types: []
- #------------------------------- Kafka output ---------------------------------
- #output.kafka:
- # Boolean flag to enable or disable the output module.
- #enabled: true
- # The list of Kafka broker addresses from where to fetch the cluster metadata.
- # The cluster metadata contain the actual Kafka brokers events are published
- # to.
- #hosts: ["localhost:9092"]
- # The Kafka topic used for produced events. The setting can be a format string
- # using any event field. To set the topic from document type use `%{[type]}`.
- #topic: beats
- # The Kafka event key setting. Use format string to create unique event key.
- # By default no event key will be generated.
- #key: ''
- # The Kafka event partitioning strategy. Default hashing strategy is `hash`
- # using the `output.kafka.key` setting or randomly distributes events if
- # `output.kafka.key` is not configured.
- #partition.hash:
- # If enabled, events will only be published to partitions with reachable
- # leaders. Default is false.
- #reachable_only: false
- # Configure alternative event field names used to compute the hash value.
- # If empty `output.kafka.key` setting will be used.
- # Default value is empty list.
- #hash: []
- # Authentication details. Password is required if username is set.
- #username: ''
- #password: ''
- # Kafka version metricbeat is assumed to run against. Defaults to the oldest
- # supported stable version (currently version 0.8.2.0)
- #version: 0.8.2
- # Metadata update configuration. Metadata do contain leader information
- # deciding which broker to use when publishing.
- #metadata:
- # Max metadata request retry attempts when cluster is in middle of leader
- # election. Defaults to 3 retries.
- #retry.max: 3
- # Waiting time between retries during leader elections. Default is 250ms.
- #retry.backoff: 250ms
- # Refresh metadata interval. Defaults to every 10 minutes.
- #refresh_frequency: 10m
- # The number of concurrent load-balanced Kafka output workers.
- #worker: 1
- # The number of times to retry publishing an event after a publishing failure.
- # After the specified number of retries, the events are typically dropped.
- # Some Beats, such as Filebeat, ignore the max_retries setting and retry until
- # all events are published. Set max_retries to a value less than 0 to retry
- # until all events are published. The default is 3.
- #max_retries: 3
- # The maximum number of events to bulk in a single Kafka request. The default
- # is 2048.
- #bulk_max_size: 2048
- # The number of seconds to wait for responses from the Kafka brokers before
- # timing out. The default is 30s.
- #timeout: 30s
- # The maximum duration a broker will wait for number of required ACKs. The
- # default is 10s.
- #broker_timeout: 10s
- # The number of messages buffered for each Kafka broker. The default is 256.
- #channel_buffer_size: 256
- # The keep-alive period for an active network connection. If 0s, keep-alives
- # are disabled. The default is 0 seconds.
- #keep_alive: 0
- # Sets the output compression codec. Must be one of none, snappy and gzip. The
- # default is gzip.
- #compression: gzip
- # The maximum permitted size of JSON-encoded messages. Bigger messages will be
- # dropped. The default value is 1000000 (bytes). This value should be equal to
- # or less than the broker's message.max.bytes.
- #max_message_bytes: 1000000
- # The ACK reliability level required from broker. 0=no response, 1=wait for
- # local commit, -1=wait for all replicas to commit. The default is 1. Note:
- # If set to 0, no ACKs are returned by Kafka. Messages might be lost silently
- # on error.
- #required_acks: 1
- # The number of seconds to wait for new events between two producer API calls.
- #flush_interval: 1s
- # The configurable ClientID used for logging, debugging, and auditing
- # purposes. The default is "beats".
- #client_id: beats
- # Enable SSL support. SSL is automatically enabled, if any SSL setting is set.
- #ssl.enabled: true
- # Optional SSL configuration options. SSL is off by default.
- # List of root certificates for HTTPS server verifications
- #ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]
- # Configure SSL verification mode. If `none` is configured, all server ihosts
- # and certificates will be accepted. In this mode, SSL based connections are
- # susceptible to man-in-the-middle attacks. Use only for testing. Default is
- # `full`.
- #ssl.verification_mode: full
- # List of supported/valid TLS versions. By default all TLS versions 1.0 up to
- # 1.2 are enabled.
- #ssl.supported_protocols: [TLSv1.0, TLSv1.1, TLSv1.2]
- # Certificate for SSL client authentication
- #ssl.certificate: "/etc/pki/client/cert.pem"
- # Client Certificate Key
- #ssl.key: "/etc/pki/client/cert.key"
- # Optional passphrase for decrypting the Certificate Key.
- #ssl.key_passphrase: ''
- # Configure cipher suites to be used for SSL connections
- #ssl.cipher_suites: []
- # Configure curve types for ECDHE based cipher suites
- #ssl.curve_types: []
- #------------------------------- Redis output ---------------------------------
- output.redis:
- # Boolean flag to enable or disable the output module.
- enabled: true
- # The list of Redis servers to connect to. If load balancing is enabled, the
- # events are distributed to the servers in the list. If one server becomes
- # unreachable, the events are distributed to the reachable servers only.
- hosts: ["172.27.30.102:6379"]
- # The Redis port to use if hosts does not contain a port number. The default
- # is 6379.
- port: 6379
- # The name of the Redis list or channel the events are published to. The
- # default is metricbeat.
- key: metricbeat
- # The password to authenticate with. The default is no authentication.
- #password:
- # The Redis database number where the events are published. The default is 0.
- #db: 0
- # The Redis data type to use for publishing events. If the data type is list,
- # the Redis RPUSH command is used. If the data type is channel, the Redis
- # PUBLISH command is used. The default value is list.
- #datetype: list
- # The number of workers to use for each host configured to publish events to
- # Redis. Use this setting along with the loadbalance option. For example, if
- # you have 2 hosts and 3 workers, in total 6 workers are started (3 for each
- # host).
- #worker: 1
- # If set to true and multiple hosts or workers are configured, the output
- # plugin load balances published events onto all Redis hosts. If set to false,
- # the output plugin sends all events to only one host (determined at random)
- # and will switch to another host if the currently selected one becomes
- # unreachable. The default value is true.
- #loadbalance: true
- # The Redis connection timeout in seconds. The default is 5 seconds.
- timeout: 60s
- # The number of times to retry publishing an event after a publishing failure.
- # After the specified number of retries, the events are typically dropped.
- # Some Beats, such as Filebeat, ignore the max_retries setting and retry until
- # all events are published. Set max_retries to a value less than 0 to retry
- # until all events are published. The default is 3.
- #max_retries: 3
- # The maximum number of events to bulk in a single Redis request or pipeline.
- # The default is 2048.
- #bulk_max_size: 2048
- # The URL of the SOCKS5 proxy to use when connecting to the Redis servers. The
- # value must be a URL with a scheme of socks5://.
- #proxy_url:
- # This option determines whether Redis hostnames are resolved locally when
- # using a proxy. The default value is false, which means that name resolution
- # occurs on the proxy server.
- #proxy_use_local_resolver: false
- # Enable SSL support. SSL is automatically enabled, if any SSL setting is set.
- #ssl.enabled: true
- # Configure SSL verification mode. If `none` is configured, all server hosts
- # and certificates will be accepted. In this mode, SSL based connections are
- # susceptible to man-in-the-middle attacks. Use only for testing. Default is
- # `full`.
- #ssl.verification_mode: full
- # List of supported/valid TLS versions. By default all TLS versions 1.0 up to
- # 1.2 are enabled.
- #ssl.supported_protocols: [TLSv1.0, TLSv1.1, TLSv1.2]
- # Optional SSL configuration options. SSL is off by default.
- # List of root certificates for HTTPS server verifications
- #ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]
- # Certificate for SSL client authentication
- #ssl.certificate: "/etc/pki/client/cert.pem"
- # Client Certificate Key
- #ssl.key: "/etc/pki/client/cert.key"
- # Optional passphrase for decrypting the Certificate Key.
- #ssl.key_passphrase: ''
- # Configure cipher suites to be used for SSL connections
- #ssl.cipher_suites: []
- # Configure curve types for ECDHE based cipher suites
- #ssl.curve_types: []
- #------------------------------- File output ----------------------------------
- #output.file:
- # Boolean flag to enable or disable the output module.
- #enabled: true
- # Path to the directory where to save the generated files. The option is
- # mandatory.
- #path: "/tmp/metricbeat"
- # Name of the generated files. The default is `metricbeat` and it generates
- # files: `metricbeat`, `metricbeat.1`, `metricbeat.2`, etc.
- #filename: metricbeat
- # Maximum size in kilobytes of each file. When this size is reached, and on
- # every metricbeat restart, the files are rotated. The default value is 10240
- # kB.
- #rotate_every_kb: 10000
- # Maximum number of files under path. When this number of files is reached,
- # the oldest file is deleted and the rest are shifted from last to first. The
- # default is 7 files.
- #number_of_files: 7
- #----------------------------- Console output ---------------------------------
- #output.console:
- # Boolean flag to enable or disable the output module.
- #enabled: true
- # Pretty print json event
- #pretty: false
- #================================= Paths ======================================
- # The home path for the metricbeat installation. This is the default base path
- # for all other path settings and for miscellaneous files that come with the
- # distribution (for example, the sample dashboards).
- # If not set by a CLI flag or in the configuration file, the default for the
- # home path is the location of the binary.
- #path.home:
- # The configuration path for the metricbeat installation. This is the default
- # base path for configuration files, including the main YAML configuration file
- # and the Elasticsearch template file. If not set by a CLI flag or in the
- # configuration file, the default for the configuration path is the home path.
- #path.config: ${path.home}
- # The data path for the metricbeat installation. This is the default base path
- # for all the files in which metricbeat needs to store its data. If not set by a
- # CLI flag or in the configuration file, the default for the data path is a data
- # subdirectory inside the home path.
- #path.data: ${path.home}/data
- # The logs path for a metricbeat installation. This is the default location for
- # the Beat's log files. If not set by a CLI flag or in the configuration file,
- # the default for the logs path is a logs subdirectory inside the home path.
- #path.logs: ${path.home}/logs
- #================================ Logging =====================================
- # There are three options for the log output: syslog, file, stderr.
- # Under Windows systems, the log files are per default sent to the file output,
- # under all other system per default to syslog.
- # Sets log level. The default log level is info.
- # Available log levels are: critical, error, warning, info, debug
- #logging.level: info
- # Enable debug output for selected components. To enable all selectors use ["*"]
- # Other available selectors are "beat", "publish", "service"
- # Multiple selectors can be chained.
- #logging.selectors: [ ]
- # Send all logging output to syslog. The default is false.
- #logging.to_syslog: true
- # If enabled, metricbeat periodically logs its internal metrics that have changed
- # in the last period. For each metric that changed, the delta from the value at
- # the beginning of the period is logged. Also, the total values for
- # all non-zero internal metrics are logged on shutdown. The default is true.
- #logging.metrics.enabled: true
- # The period after which to log the internal metrics. The default is 30s.
- #logging.metrics.period: 30s
- # Logging to rotating files files. Set logging.to_files to false to disable logging to
- # files.
- logging.to_files: true
- logging.files:
- # Configure the path where the logs are written. The default is the logs directory
- # under the home path (the binary location).
- #path: /var/log/metricbeat
- # The name of the files where the logs are written to.
- #name: metricbeat
- # Configure log file size limit. If limit is reached, log file will be
- # automatically rotated
- #rotateeverybytes: 10485760 # = 10MB
- # Number of rotated log files to keep. Oldest files will be deleted first.
- #keepfiles: 7
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement