http.port: {{ .Port }}

output.logstash:
  hosts: ["{{ .LogstashHost }}"]

output.console:
  enabled: false

logging:
  to_files: false
  metrics.enabled: false
  level: warning

timestamp.precision: nanosecond

# https://www.elastic.co/guide/en/beats/metricbeat/current/configuration-path.html#_system_hostfs
system.hostfs: "/hostfs"

metricbeat.modules:
  {{ if .CollectSystemMetrics }}
  - module: system
    enabled: true
    metricsets:
      - cpu             # CPU usage
      - load            # CPU load averages
      - memory          # Memory usage
      - network         # Network IO
      - process         # Per process metrics
      - process_summary # Process summary
      #- uptime          # System Uptime
      #- socket_summary  # Socket summary
      #- core           # Per CPU core usage
      - diskio         # Disk IO
      - filesystem     # File system usage for each mountpoint
      - fsstat         # File system summary metrics
      #- raid           # Raid
      #- socket         # Sockets and connection info (linux only)
      #- service        # systemd service information
    cpu.metrics:  ["percentages","normalized_percentages"]
    period: 60s
    processes: ['.*']
    # To monitor host metrics from within a container. As per:
    # https://www.elastic.co/guide/en/beats/metricbeat/current/metricbeat-module-system.html#_example_configuration_59
    hostfs: "/hostfs"
  {{ end }}
  {{ if .CollectEtcdMetrics }}
  - module: etcd
    enabled: true
    metricsets: ["metrics"]
    period: 60s
    hosts: ["https://localhost:2379"]
    ssl:
      certificate_authorities: ["/etc/kubernetes/pki/etcd/ca.crt"]
      certificate: "/etc/kubernetes/pki/etcd/peer.crt"
      key: "/etc/kubernetes/pki/etcd/peer.key"
      verification_mode: "full"
  {{ end }}


processors:
  {{ if .AddCloudMetadata }}
  - add_cloud_metadata: ~
  {{ end }}
