packetbeat не перехватывает большие пакеты HTTP POST

Я использую packagebeat вместе с ELK (Elasticsearch, Logstash, Kibana) для мониторинга http-пакетов моего сервера, и он отлично работает, однако я заметил, что packetbeat не захватывает большие запросы HTTP POST ниже, это мой файл packetbeat.yml

interfaces:
  device: any

############################# Protocols #######################################
protocols:
  dns:
    ports: [53]
    include_authorities: true
    include_additionals: true
  http:
    ports: [80, 8080, 8000, 5000, 8002]
  memcache:
    ports: [11211]
  mysql:
    ports: [3306]
  pgsql:
    ports: [5432]
  redis:
    ports: [6379]
  thrift:
    ports: [9090]
  mongodb:
    ports: [27017]

output:
  ### Logstash as output
  logstash:
    # The Logstash hosts
    hosts: ["localhost:5044"]


############################# Shipper #########################################

shipper:
############################# Logging #########################################
logging:

  files:
    rotateeverybytes: 10485760 # = 10MB

1 ответ

Решение

Если поток HTTP становится больше ~10 МБ, Packetbeat удаляет его.

Максимальный размер определяется в константе TCP_MAX_DATA_IN_STREAM, которую нельзя изменить во время выполнения.

Если вы включите отладку для Packetbeat, вы сможете подтвердить, что поток отбрасывается, посмотрев "Поток данных слишком велик, отбрасывает поток TCP" в ваших журналах. Запустите Packetbeat с -d "http" чтобы включить этот отладочный вывод.

Другие вопросы по тегам