Reference YAML
editReference YAML
editThe Elastic Agent installation includes an elastic-agent.reference.yml
file that
describes all the settings available in a standalone configuration.
This file is included here for your convenience.
###################### Agent Configuration Example ######################### # This file is an example configuration file highlighting only the most common # options. The elastic-agent.reference.yml file from the same directory contains all the # supported options with more comments. You can use it as a reference. ###################################### # Fleet configuration ###################################### outputs: default: type: elasticsearch hosts: [127.0.0.1:9200] api-key: "example-key" # username: "elastic" # password: "changeme" inputs: # Each input in a policy must have a unique value for the id key. - id: unique-system-metrics-id type: system/metrics # Namespace name must conform to the naming conventions for Elasticsearch indices, cannot contain dashes (-), and cannot exceed 100 bytes # For index naming restrictions, see https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-create-index.html#indices-create-api-path-params data_stream.namespace: default use_output: default streams: - metricset: cpu # Dataset name must conform to the naming conventions for Elasticsearch indices, cannot contain dashes (-), and cannot exceed 100 bytes data_stream.dataset: system.cpu - metricset: memory data_stream.dataset: system.memory - metricset: network data_stream.dataset: system.network - metricset: filesystem data_stream.dataset: system.filesystem # management: # # Mode of management, the Elastic Agent support two modes of operation: # # # # local: The Elastic Agent will expect to find the inputs configuration in the local file. # # # # Default is local. # mode: "local" # fleet: # access_api_key: "" # kibana: # # kibana minimal configuration # hosts: ["localhost:5601"] # ssl.certificate_authorities: ["/etc/pki/root/ca.pem"] # # optional values # #protocol: "https" # #service_token: "example-token" # #path: "" # #ssl.verification_mode: full # #ssl.supported_protocols: [TLSv1.0, TLSv1.1, TLSv1.2] # #ssl.cipher_suites: [] # #ssl.curve_types: [] # reporting: # # Reporting threshold indicates how many events should be kept in-memory before reporting them to fleet. # #reporting_threshold: 10000 # # Frequency used to check the queue of events to be sent out to fleet. # #reporting_check_frequency_sec: 30 # agent.download: # # source of the artifacts, requires elastic like structure and naming of the binaries # # e.g /windows-x86.zip # sourceURI: "https://artifacts.elastic.co/downloads/beats/" # # path to the directory containing downloaded packages # target_directory: "${path.data}/downloads" # # timeout for downloading package # timeout: 120s # # file path to a public key used for verifying downloaded artifacts # # if not file is present agent will try to load public key from elastic.co website. # pgpfile: "${path.data}/elastic.pgp" # # install_path describes the location of installed packages/programs. It is also used # # for reading program specifications. # install_path: "${path.data}/install" # agent.process: # # timeout for creating new processes. when process is not successfully created by this timeout # # start operation is considered a failure # spawn_timeout: 30s # # timeout for stopping processes. when process is not stopped by this timeout then the process. # # is force killed # stop_timeout: 30s # agent.grpc: # # listen address for the GRPC server that spawned processes connect back to. # address: localhost # # port for the GRPC server that spawned processes connect back to. # port: 6789 # agent.retry: # # Enabled determines whether retry is possible. Default is false. # enabled: true # # RetriesCount specifies number of retries. Default is 3. # # Retry count of 1 means it will be retried one time after one failure. # retriesCount: 3 # # Delay specifies delay in ms between retries. Default is 30s # delay: 30s # # MaxDelay specifies maximum delay in ms between retries. Default is 300s # maxDelay: 5m # # Exponential determines whether delay is treated as exponential. # # With 30s delay and 3 retries: 30, 60, 120s # # Default is false # exponential: false # agent.monitoring: # # enabled turns on monitoring of running processes # enabled: false # # enables log monitoring # logs: false # # enables metrics monitoring # metrics: false # # exposes /debug/pprof/ endpoints # # recommended that these endpoints are only enabled if the monitoring endpoint is set to localhost # pprof.enabled: false # # exposes agent metrics using http, by default sockets and named pipes are used # http: # # enables http endpoint # enabled: false # # The HTTP endpoint will bind to this hostname, IP address, unix socket or named pipe. # # When using IP addresses, it is recommended to only use localhost. # host: localhost # # Port on which the HTTP endpoint will bind. Default is 0 meaning feature is disabled. # port: 6791 # # Metrics buffer endpoint # buffer.enabled: false # # Allow fleet to reload its configuration locally on disk. # # Notes: Only specific process configuration and external input configurations will be reloaded. # agent.reload: # # enabled configure the Elastic Agent to reload or not the local configuration. # # # # Default is true # enabled: true # # period define how frequent we should look for changes in the configuration. # period: 10s # Logging # There are four options for the log output: file, stderr, syslog, eventlog # The file output is the default. # Sets log level. The default log level is info. # Available log levels are: error, warning, info, debug #agent.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. #agent.logging.selectors: [ ] # Send all logging output to stderr. The default is false. agent.logging.to_stderr: true # Send all logging output to syslog. The default is false. #agent.logging.to_syslog: false # Send all logging output to Windows Event Logs. The default is false. #agent.logging.to_eventlog: false # If enabled, Elastic-Agent 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. This setting is also passed # to beats running under the agent. The default is true. #agent.logging.metrics.enabled: true # The period after which to log the internal metrics. The default is 30s. #agent.logging.metrics.period: 30s # Logging to rotating files. Set logging.to_files to false to disable logging to # files. #agent.logging.to_files: true #agent.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/elastic-agent # The name of the files where the logs are written to. #name: elastic-agent # 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 # The permissions mask to apply when rotating log files. The default value is 0600. # Must be a valid Unix-style file permissions mask expressed in octal notation. #permissions: 0600 # Enable log file rotation on time intervals in addition to size-based rotation. # Intervals must be at least 1s. Values of 1m, 1h, 24h, 7*24h, 30*24h, and 365*24h # are boundary-aligned with minutes, hours, days, weeks, months, and years as # reported by the local system clock. All other intervals are calculated from the # Unix epoch. Defaults to disabled. #interval: 0 # Rotate existing logs on startup rather than appending to the existing # file. Defaults to true. # rotateonstartup: true # Set to true to log messages in JSON format. #agent.logging.json: false # Providers # Providers supply the key/values pairs that are used for variable substitution # and conditionals. Each provider's keys are automatically prefixed with the name # of the provider. #providers: # Agent provides information about the running agent. # agent: # enabled: true # Docker provides inventory information from Docker. # docker: # enabled: true # host: "unix:///var/run/docker.sock" # cleanup_timeout: 60 # Env providers information about the running environment. # env: # enabled: true # Host provides information about the current host. # host: # enabled: true # Local provides custom keys to use as variable. # local: # enabled: true # vars: # foo: bar # Local dynamic allows you to define multiple key/values to generate multiple configurations. # local_dynamic: # enabled: true # items: # - vars: # my_var: key1 # - vars: # my_var: key2 # - vars: # my_var: key3