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.8.3:

INSTALLERS SHA256 CHECKSUMS
td-agent-bit-1.8.3-win32.exe 9ffcd0190bb283a977d1cbba5999ef0549be1170e81e3e8b9017a55b7ef62e5f
td-agent-bit-1.8.3-win32.zip d791ab752af3e98cc97bf0a2fa5c10bf855417243c8597a3393d596690919196
td-agent-bit-1.8.3-win64.exe 89b31eb1642c4526a8b41cf3846d7659df1df1bf45ce24437139a291a1a8da59
td-agent-bit-1.8.3-win64.zip 2ae6dc186f716215e81b834b1acf852f38fd7cb6788b89fe8300dcff9c19b9f6

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

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

Installing from ZIP archive

Download a ZIP archive from above. 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.8.3-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.8.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