metricbeat.config.modules:
  path: ${path.config}/modules.d/*.yml
  reload.enabled: false

setup.kibana.host: "http://kibana:5601"
setup.kibana.username: elastic
setup.kibana.password: ${ELASTIC_PASSWORD}
setup.dashboards.enabled: true

output.elasticsearch:
  hosts: ["http://elasticsearch:9200"]
  username: elastic
  password: ${ELASTIC_PASSWORD}

metricbeat.modules:
  # System metrics (container-level when running in Docker Desktop)
  - module: system
    period: 10s
    metricsets:
      - cpu
      - load
      - memory
      - network
      - process
      - process_summary
      - filesystem
      - fsstat
      - uptime
    processes: ['.*']

  # Docker metrics (containers CPU/mem/network, etc.)
  - module: docker
    hosts: ["unix:///var/run/docker.sock"]
    period: 10s
    enabled: true
    # Common metricsets: container,cpu,diskio,event,healthcheck,info,memory,network
    # Use defaults to keep noise reasonable

  # Nginx metrics from stub_status (enabled in nginx.dev.conf on port 8080)
  - module: nginx
    metricsets: ["stubstatus"]
    period: 10s
    hosts: ["http://nginx:8080/stub_status"]
    enabled: true

processors:
  - add_host_metadata: ~
  - add_docker_metadata: ~
