Windows

Fluent Bit is distributed as td-agent-bit package for Windows. Fluent Bit has two flavours of Windows installers: a ZIP archive (for quick testing) and an EXE installer (for system installation).

Installation Packages

The latest stable version is 1.7.9:

INSTALLERS SHA256 CHECKSUMS
td-agent-bit-1.7.9-win32.exe cc6606ac4f8f32a8c466e0fe11cea60792365568625f462938f72dc14e03ee9d
td-agent-bit-1.7.9-win32.zip bf7f514ac3b0e02148661486dfaa895230920d2b44edafe27eb782518e3d469b
td-agent-bit-1.7.9-win64.exe 45d304809638d5baab2b2689b942fc4d7361a8faabf137b28dec5274547ee11e
td-agent-bit-1.7.9-win64.zip 20d53bc5092164378d8b31fa431f7c88c8d33d49641d2e7a9238f2d95c1fc027

To check the integrity, use Get-FileHash cmdlet on PowerShell.

  1. PS> Get-FileHash td-agent-bit-1.7.9-win32.exe

Installing from ZIP archive

Download a ZIP archive from the download page. There are installers for 32-bit and 64-bit environments, so choose one suitable for your environment.

Then you need to expand the ZIP archive. You can do this by clicking “Extract All” on Explorer, or if you’re using PowerShell, you can use Expand-Archive cmdlet.

  1. PS> Expand-Archive td-agent-bit-1.7.9-win64.zip

The ZIP package contains the following set of files.

  1. td-agent-bit
  2. ├── bin
  3. ├── fluent-bit.dll
  4. └── fluent-bit.exe
  5. ├── conf
  6. ├── fluent-bit.conf
  7. ├── parsers.conf
  8. └── plugins.conf
  9. └── include
  10. ├── flb_api.h
  11. ├── ...
  12. └── flb_worker.h
  13. └── fluent-bit.h

Now, launch cmd.exe or PowerShell on your machine, and execute fluent-bit.exe as follows.

  1. PS> .\bin\fluent-bit.exe -i dummy -o stdout

If you see the following output, it’s working fine!

  1. PS> .\bin\fluent-bit.exe -i dummy -o stdout
  2. Fluent Bit v1.6.x
  3. * Copyright (C) 2019-2020 The Fluent Bit Authors
  4. * Copyright (C) 2015-2018 Treasure Data
  5. * Fluent Bit is a CNCF sub-project under the umbrella of Fluentd
  6. * https://fluentbit.io
  7. [2019/06/28 10:13:04] [ info] [storage] initializing...
  8. [2019/06/28 10:13:04] [ info] [storage] in-memory
  9. [2019/06/28 10:13:04] [ info] [storage] normal synchronization mode, checksum disabled, max_chunks_up=128
  10. [2019/06/28 10:13:04] [ info] [engine] started (pid=10324)
  11. [2019/06/28 10:13:04] [ info] [sp] stream processor started
  12. [0] dummy.0: [1561684385.443823800, {"message"=>"dummy"}]
  13. [1] dummy.0: [1561684386.428399000, {"message"=>"dummy"}]
  14. [2] dummy.0: [1561684387.443641900, {"message"=>"dummy"}]
  15. [3] dummy.0: [1561684388.441405800, {"message"=>"dummy"}]

To halt the process, press CTRL-C in the terminal.

Installing from EXE installer

Download an EXE installer from the download page. It has both 32-bit and 64-bit builds. Choose one which is suitable for you.

Then, double-click the EXE installer you’ve downloaded. Installation wizard will automatically start.

Windows - 图1

Click Next and proceed. By default, Fluent Bit is installed into C:\Program Files\td-agent-bit\, so you should be able to launch fluent-bit as follow after installation.

  1. PS> C:\Program Files\td-agent-bit\bin\fluent-bit.exe -i dummy -o stdout

Windows Service Support

Windows services are equivalent to “daemons” in UNIX (i.e. long-running background processes). Since v1.5.0, Fluent Bit has the native support for Windows Service.

Suppose you have the following installation layout:

  1. C:\fluent-bit\
  2. ├── conf
  3. ├── fluent-bit.conf
  4. └── parsers.conf
  5. └── bin
  6. ├── fluent-bit.dll
  7. └── fluent-bit.exe

To register Fluent Bit as a Windows service, you need to execute the following command on Command Prompt. Please be careful that a single space is required after binpath=.

  1. % sc.exe create fluent-bit binpath= "\fluent-bit\bin\fluent-bit.exe -c \fluent-bit\conf\fluent-bit.conf"

Now Fluent Bit can be started and managed as a normal Windows service.

  1. % sc.exe start fluent-bit
  2. % sc.exe query fluent-bit
  3. SERVICE_NAME: fluent-bit
  4. TYPE : 10 WIN32_OWN_PROCESS
  5. STATE : 4 Running
  6. ...

To halt the Fluent Bit service, just execute the “stop” command.

  1. % sc.exe stop fluent-bit

Compile from Source

If you need to create a custom executable, you can use the following procedure to compile Fluent Bit by yourself.

Preparation

First, you need Microsoft Visual C++ to compile Fluent Bit. You can install the minimum toolkit by the following command:

  1. PS> wget -o vs.exe https://aka.ms/vs/16/release/vs_buildtools.exe
  2. PS> start vs.exe

When asked which packages to install, choose “C++ Build Tools” (make sure that “C++ CMake tools for Windows” is selected too) and wait until the process finishes.

Also you need to install flex and bison. One way to install them on Windows is to use winflexbison.

  1. PS> wget -o winflexbison.zip https://github.com/lexxmark/winflexbison/releases/download/v2.5.22/win_flex_bison-2.5.22.zip
  2. PS> Expand-Archive winflexbison.zip -Destination C:\WinFlexBison
  3. PS> cp -Path C:\WinFlexBison\win_bison.exe C:\WinFlexBison\bison.exe
  4. PS> cp -Path C:\WinFlexBison\win_flex.exe C:\WinFlexBison\flex.exe
  5. PS> setx /M PATH "%PATH%;C:\WinFlexBison"

Also you need to install git to pull the source code from the repository.

  1. PS> wget -o git.exe https://github.com/git-for-windows/git/releases/download/v2.28.0.windows.1/Git-2.28.0-64-bit.exe
  2. PS> start git.exe

Compilation

Open the start menu on Windows and type “Developer Command Prompt”.

Clone the source code of Fluent Bit.

  1. % git clone https://github.com/fluent/fluent-bit
  2. % cd fluent-bit/build

Compile the source code.

  1. % cmake .. -G "NMake Makefiles"
  2. % cmake --build .

Now you should be able to run Fluent Bit:

  1. % .\bin\debug\fluent-bit.exe -i dummy -o stdout

Packaging

To create a ZIP package, call cpack as follows:

  1. % cpack -G ZIP