我正在使用packetbeat和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

最佳答案

如果HTTP流变得大于〜10MB,则Packetbeat drops it

最大大小在TCP_MAX_DATA_IN_STREAM常量中定义,该常量不能在运行时更改。

如果为Packetbeat启用调试,则应该通过在日志中查找“流数据太大,丢弃TCP流”来确认流已被丢弃。使用-d "http"运行Packetbeat以启用此调试输出。

关于elasticsearch - packetbeat没有捕获大的HTTP POST数据包,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37171614/

10-15 21:32