Install by .msi Installer v3 (Windows)

The recommended way to install Fluentd on Windows is to use MSI installers of td-agent.

What is td-agent?

td-agent is a packaged distribution of Fluentd.
  • Includes Ruby and other library dependencies (since most Windows machines don't have them installed).
  • Includes a set of commonly-used 3rd-party plugins such as out_es.
  • Originally developed by Treasure Data, Inc (hence the name).
Currently two versions of td-agent are available.
  • td-agent v4 packages Fluentd 1.11.x (or later). This version is recommended.
  • td-agent v3 packages Fluentd 1.10.x (or below).

td-agent v3

Step 1: Install td-agent

Please download and install the .msi file from here:

Step 2: Run td-agent from Command Prompt

First, please prepare your config file located at C:/opt/td-agent/etc/td-agent/td-agent.conf. The config below is the simplest example to output any incoming records to td-agent's log file:
@type forward
<match test.**>
@type stdout
After you have installed the .msi package, you will see the program called Td-agent Command Prompt installed. Please double click this icon in the Windows menu (below is how it looks like on Windows Server 2012).
Td-agent Command Prompt
In the prompt, please execute the command below to launch td-agent process:
> fluentd -c etc\td-agent\td-agent.conf
Then, please launch another Td-agent Command Prompt and type the command below to send a record to td-agent process:
> echo {"message":"hello"} | fluent-cat test.event
It's working properly if td-agent process outputs:
test.event: {"k", "v"}
Td-agent Windows Prompt

Step 3: Register td-agent to Windows Service

Next, register td-agent as a Windows Service to permanently run as a server process. Open Td-agent Command Prompt with administrative privileges, and type these commands:
> fluentd --reg-winsvc i
> fluentd --reg-winsvc-fluentdopt '-c C:/opt/td-agent/etc/td-agent/td-agent.conf -o C:/opt/td-agent/td-agent.log'
NOTE: Making td-agent service start automatically requires additional command-line parameters:
> fluentd --reg-winsvc i --reg-winsvc-auto-start --reg-winsvc-delay-start
> fluentd --reg-winsvc-fluentdopt '-c C:/opt/td-agent/etc/td-agent/td-agent.conf -o C:/opt/td-agent/td-agent.log'

Step 4: Run td-agent as a Windows Service

Using GUI

Go to Control Panel > System and Security > Administrative Tools > Services, and you should see Fluentd Windows Service listed there.
Double click on Fluentd Window Service and click Start to execute it as a Windows Service.

Using net.exe

> net start fluentdwinsvc
The Fluentd Windows Service service is starting..
The Fluentd Windows Service service was started successfully.

Using Powershell Cmdlet

PS> Start-Service fluentdwinsvc
Note that fluentdwinsvc is the Fluentd service name and it should be passed to net.exe or Start-Service Cmdlet to start.
The log file will be located at C:/opt/td-agent/td-agent.log as specified in Step 3 earlier.

Step 4: Install Plugins

Open Td-agent Command Prompt and use fluent-gem command:
> fluent-gem install fluent-plugin-xyz --version=1.2.3


Manage privileges in td-agent 3.8.1 or later/td-agent 4.1.0 or later

You need admin privilege to execute td-agent-gem command. For upgrade users since 3.8.0 or earlier/td-agent 4.0.1 or earlier, explicitly remove privileges for NT AUTHORITY\Authenticated Users from c:\opt\td-agent.
This change is for fixing CVE-2020-28169.

Uninstall td-agent v3 being registered to Windows Service

When you uninstall td-agent v3, you should take care to see if it is registered to Windows Service, since td-agent v3 doesn't automatically unregister itself. If it is registered, you must unregister it manually before uninstalling it.
NOTE: If you uninstall td-agent v3 without unregistering it, the service remains after uninstalling and causes the v4 installation to fail. You need to reinstall td-agent v3 and unregister the service with the following steps.
You can check if it is registered with the following Powershell command:
PS> Get-Service fluentdwinsvc
You can unregister td-agent v3 with the following steps:
  • Stop the service with the following Powershell command:
PS> Stop-Service fluentdwinsvc
  • Open Td-agent Command Prompt with administrative privileges and type the following command:
> fluentd --reg-winsvc u

Next Steps

You are now ready to collect real logs with Fluentd. Refer to the following tutorials on how to collect data from various sources:
For further steps, follow these:
If this article is incorrect or outdated, or omits critical information, please let us know. Fluentd is an open-source project under Cloud Native Computing Foundation (CNCF). All components are available under the Apache 2 License.