官方Filebeat泊坞窗在Windows上运行,不允许应用程序旋转日志

我正在使用filebeat镜像 – docker.elastic.co/beats/filebeat:5.4.1在Windows上本地设置filebeat容器,以便从应用程序读取日志并将数据发送到logstash。 生成日志的应用程序将在“1MB”大小后进行旋转。

  • 我已经设置close_inactive = 2M。 所以filebeat在2分钟后释放句柄。
  • 当应用程序停止写入数据并从文件读取所有数据时,文件句柄被释放。 这是预期的。

我担心的是, – 当filebeat容器正在读取文件时,应用程序无法在1MB大小后旋转日志文件。

如果我运行filebeat作为服务(不在泊坞内)它的工作原理,即日志1MB后旋转。

我怎样才能避免这一点?

编辑:只是为了帮助信息,我没有看到这个问题在Linux中。 Docker filebeat容器允许应用程序旋转文件。

基于我与弹性团队成员的讨论,我来到这个答案 – https://discuss.elastic.co/t/filebeat-docker-running-on-windows-not-allowing-application-to-rotate-the -log /一十一分之八万九千六百十六

这是响应 – “VBoxHeadless.exe有RW-打开的日志文件,我想说的是VirtualBox使用的共享文件系统,是不是用FILE_SHARE_DELETE打开文件,所以其他应用程序不能删除或重命名文件“。

所以它的VirtualBox是持有文件的文件处理程序,而不是持有句柄的filebeat。

我得到的一个build议是在Windows上创buildDocker虚拟机时尝试使用Hyper-V驱动程序而不是VirtualBox驱动程序。

正如我在我的查询中提到的,它不会发生在Linux泊坞窗,因为那里没有虚拟机。

Interesting Posts