Fluentd vs Logstash: when each one fits your pipeline
Choose Fluentd when your logs must reach several destinations beyond Elasticsearch and you want an Apache-2.0 collector under the CNCF. Choose Logstash when the Elastic stack is already your system of record and you accept Elastic's license and support terms for the pipeline. Fluentd suits a Kubernetes or VM fleet that forwards to a central aggregator, because its plugin catalog is the main reason to pick it: fluentd.org cites more than 500 plugins. The condition is that every output you need has a maintained plugin, so check each one against the version you will run. Fluentd runs on Ruby and depends on gems, and the Fluent Bit documentation puts its memory use above 60 MB, so size node-level agents with that in mind. On VM hosts, fluent-package is the supported build, with LTS v6.0.5 supported until December 2027.
Logstash fits when Elasticsearch and Kibana already run your operations and you want ingest managed under the same vendor, support contract and upgrade cycle. Its plugin catalog, which the topic brief describes as over 200 plugins, covers the common Elastic destinations, and Elastic Cloud on Kubernetes can deploy Logstash alongside the other Elastic components if your cluster already runs on Kubernetes. The condition is license scope. Elastic offers its Elasticsearch and Kibana source under the Elastic License 2.0, SSPL 1.0 and AGPLv3, and the first two are not OSI-approved. Confirm in writing which terms apply to the Logstash build you deploy, and check whether the features you depend on, such as single sign-on or anomaly-based alerting, sit in a paid tier. Platinum is no longer offered to new customers.
The decision turns on four things. First, license needs: if an OSI-approved license is a procurement requirement, Fluentd's Apache-2.0 license and Elastic's AGPLv3 option both qualify, but confirm the terms for the exact Elastic components you run. Second, destinations: count the non-Elastic outputs you need now and in three years, because each one adds a plugin to test. Third, footprint: measure agent memory on your smallest nodes before you commit. Fourth, the cost of moving pipelines: existing Logstash filters and parsers must be translated into Fluentd configuration, re-tested, and run in parallel during cutover. Ask any implementation partner for that work as a fixed, written scope that lists the test evidence it will produce.
Which scenario favors Fluentd or Logstash
This table maps common logging scenarios to the platform that usually fits better, with the condition under which each fit holds. Read each row as a starting point, then check the condition against your own licensing, destinations and host estate before deciding.
| Scenario | Better fit | Reason and condition |
|---|---|---|
| Elasticsearch-only destination with an existing Elastic subscription | Logstash | Logstash is Elastic's own pipeline product and sits inside the Elastic stack and subscription. The fit holds if you already pay for or plan to keep Elastic subscriptions and want one vendor for pipelines and storage. |
| Multi-destination routing to several backends | Fluentd | Fluentd decouples data sources from backend systems and has a large plugin ecosystem, with more than 500 plugins cited on fluentd.org. The fit holds when you need to send logs to several non-Elastic targets and confirm each required output plugin exists and is maintained. |
| Kubernetes node-level collection | Fluentd | Fluentd and Fluent Bit can each run as a forwarder, and the Fluent Bit documentation positions Fluentd for cases needing its plugin breadth. Fluentd fits when a cluster-level aggregator sits behind a lighter node agent; confirm the chart and plugin set you need. |
| Mixed VM and container estate | Fluentd | Fluent-package provides packaged builds for RHEL, Ubuntu, Debian, Amazon Linux and Windows, so one collector model can cover hosts and containers. The fit holds if your VM operating systems appear in the supported package list and you accept Ruby runtime management. |
| Strict OSI-approved license requirement | Fluentd | Fluentd is Apache-2.0. Elastic's default distribution is under the Elastic License 2.0, which Elastic states is not OSI-approved, so Logstash needs the AGPLv3 option to meet this requirement. Confirm which Logstash build and license your legal team accepts. |
| Edge or small-footprint hosts | Neither by default, test both | The Fluent Bit documentation lists Fluentd at more than 60 MB of memory, so Fluentd is not the lightest option for constrained hosts. The supplied facts do not give a Logstash footprint, so benchmark both on your own workload or consider Fluent Bit. |
How Fluentd and Logstash are built and deployed
Fluentd and Logstash both collect, parse and route events, but they come from different runtimes, ship in different packages and fit different operating models. The cards below cover what you install, how each one protects data in transit, and what the runtime choice means for the team that runs it. Logstash memory and throughput figures are not supplied here, so measure both in your own environment before deciding.
Fluentd as a Ruby gem
Fluentd is written in C and Ruby and is shipped as a Ruby gem that depends on other gems, according to the Fluent Bit comparison table. Plugins are Ruby code, so each one is loaded into the same process as the core. Check which plugins your destinations need, confirm they are maintained for your Fluentd version, and pin gem versions in your build so a dependency change does not alter production routing.
Forwarder and aggregator roles
Fluentd can run on each node as a forwarder or as a central aggregator that receives events from many agents, according to the Fluent Bit documentation. Many teams use a light agent on each host and Fluentd as the aggregation tier where parsing, filtering and fan-out to several backends happen. Decide early which tier owns parsing, because that choice sets how much CPU and memory the aggregators need.
Fluent-package as the supported build
fluent-package is the successor to Treasure Agent (td-agent) and is the packaging that fluentd.org recommends for enterprise services. Its LTS channel receives only security and bug fixes, so it suits production better than tracking new features. Confirm the LTS line and its end-of-support date against your OS list, since fluent-package v6 covers RHEL 8, 9 and 10, Ubuntu 22.04, 24.04 and 26.04 and Windows builds.
Logstash as a JVM pipeline engine
Logstash is a pipeline engine that runs on the Java Virtual Machine and sits inside the Elastic stack, typically beside Elasticsearch and Kibana. Its input, filter and output stages are configured as pipelines, and its plugin catalog is part of the Elastic distribution. Check that your Elastic version, Logstash version and Java runtime are supported together, and confirm the support window for the release line you plan to run.
Packaging and deployment options
Logstash ships as an Elastic package for servers and containers, and Elastic Cloud on Kubernetes (ECK) can manage Logstash alongside Elasticsearch, Kibana and Elastic Agent, according to the ECK documentation. ECK is offered in Basic and Enterprise tiers, so confirm which tier covers the operator features you need. Fluentd has no equivalent first-party operator in these sources, so ask how your team will manage its Kubernetes deployment and upgrades.
Operational effects of each runtime
Fluentd's Ruby gems and Logstash's JVM heap both require runtime tuning, monitoring and patching of the language stack. Plugin upgrades in Fluentd can change behavior across gem boundaries, while Logstash tuning centers on JVM heap size and pipeline worker counts. Ask your operations team which runtime they already patch, since a team fluent in Java and one fluent in Ruby will carry different risks in production.
Fluentd vs Logstash feature by feature
This table sets Fluentd against Logstash on license, governance, plugin counts, destinations, OpenTelemetry, memory, Kubernetes, destination access and support windows. Plugin counts come from different sources and are not directly comparable, and cells marked confirm are gaps to close with each vendor before you decide. Use it as a checklist for vendor questions, not as a verdict.
| Capability | Fluentd | Logstash |
|---|---|---|
| License | Apache-2.0, per the fluent/fluentd repository | Confirm the Logstash license and whether a -oss build exists for your version. Elastic's ELv2 and SSPL terms cover Elasticsearch and Kibana. |
| Governance | Cloud Native Computing Foundation project, graduated | Developed and maintained by Elastic. Confirm its release and contribution policy directly with Elastic. |
| Published plugin count | More than 500 per fluentd.org; the Fluent Bit docs cite more than 1,000 external plugins. Counts differ by source. | Over 200 plugins. Confirm the current count and how it is counted before comparing it with Fluentd. |
| Destinations beyond Elasticsearch | Plugin-based outputs for many backends. Confirm each destination you need in the plugin list and its maintenance status. | Multiple output plugins. Confirm non-Elastic destinations and their support status for your version. |
| OpenTelemetry support | Available through plugins, per the Fluent Bit comparison. Confirm plugin versions for your OTLP needs. | Confirm OpenTelemetry input and output support in the Logstash version you plan to run. |
| Memory footprint | More than 60 MB, per the Fluent Bit documentation comparison table. | Not covered here. Logstash runs on the JVM, so measure memory under your own pipeline load. |
| Kubernetes deployment | Shipped as a Ruby gem. Confirm your packaging choice, such as a chart or operator, and its support status. | Managed through Elastic Cloud on Kubernetes, which lists Logstash among its components. Confirm tier coverage. |
| Identity and access on the destination side | Depends on each output plugin. Confirm authentication and TLS options per destination. | Depends on the Elasticsearch security tier. Elastic's 2019 announcement placed SSO and LDAP in paid tiers, so confirm current tiers. |
| Support windows | fluent-package LTS v6.0.5 is supported until December 2027. fluent-package v5 reached end of life in December 2025. | Elastic 9.x core stack maintenance ends October 15, 2027. Confirm Logstash-specific end-of-life dates. |
Licensing: default builds, -oss builds and paid tiers
Fluentd is licensed under Apache-2.0 and sits under the Cloud Native Computing Foundation. Most enterprise teams install it through fluent-package, the successor to Treasure Agent (td-agent), because the packages bundle a supported Ruby runtime and a defined release channel. The LTS channel adds no new features and receives only security and bug fixes, which suits services that change slowly.
- License: Fluentd itself is Apache-2.0, according to the project's GitHub repository.
- LTS line: fluent-package LTS v6.0.5 is supported until December 2027, and fluentd.org recommends LTS for enterprise services.
- End-of-life versions: fluent-package v5 reached end of life in December 2025 and td-agent v4 in December 2023, with no further releases or security updates.
- Platform coverage: fluent-package v6 targets RHEL 8, 9 and 10, Ubuntu 22.04, 24.04 and 26.04, Debian 12 and 13, Amazon Linux 2023 and supported Windows versions.
- Commercial support: the download page says several companies offer commercial support, including help upgrading from end-of-life versions. Support is a separate contract, so confirm scope, response commitments and upgrade help in writing with the company you select.
Confirm which package channel your hosts pin and check the end-of-life dates on the fluent-package download page before you select a version.
Elasticsearch and Kibana source code is available under three licenses: Elastic License 2.0, SSPL 1.0 and AGPLv3. According to Elastic's licensing FAQ, the default distribution has used the Elastic License 2.0 since 2021. Elastic added AGPLv3 in September 2024, before the 8.16 release, to offer an option that the Open Source Initiative approves. The FAQ also notes that ELv2 and SSPL are not OSI-approved open source licenses.
- Elastic License 2.0: this is the default distribution's license, in place since 2021 according to Elastic.
- SSPL 1.0: a second license offered for the same source code, and it is not OSI-approved.
- AGPLv3: added in September 2024 so that users can choose an OSI-approved open source option.
- Artifact check: the default download carries ELv2 terms, so confirm the license file shipped with each artifact, plugin and agent you pull into your environment.
- Legal review: whether internal use, hosting for other parties or bundling into your own product changes the analysis is a question for your counsel, based on the current text of the FAQ.
Ask your legal team to review the current licensing FAQ against your use case before you standardize on a specific Elastic artifact.
Elastic's self-managed subscriptions page lists Free and open (Basic), Platinum and Enterprise tiers. The page states that Platinum is no longer available to new customers, who are pointed to Elastic Cloud instead. Security features are split across these tiers, so the tier you buy determines which controls you can turn on in your own infrastructure. Elastic's announcement blog post also describes a 2019 change that moved several security features into the free Basic tier.
- Free and open (Basic): according to Elastic's announcement, TLS, the file and native user realms and role-based access control became free with Elasticsearch 6.8.0 and 7.1.0 on May 20, 2019.
- Platinum: the subscriptions page says this tier is closed to new customers, so existing buyers should confirm renewal and support terms directly with Elastic.
- Enterprise: the subscriptions page lists this as a self-managed tier, and it is the tier that the page names for features beyond Basic. Confirm the feature matrix for your version.
- Security features listed on the page: single sign-on (SAML, OpenID Connect, Kerberos, JWT), attribute-based access control, field- and document-level security, encryption at rest support and FIPS 140-3 mode.
- Anomaly alerting: the page says alerting rules based on anomaly detection are only on Platinum and Enterprise.
Get the current feature-by-tier matrix from Elastic in writing before you design authentication and access controls, since the subscriptions page can change.
The supplied facts do not establish Logstash's license for each build, so this tab cannot state it. Logstash is a separate Elastic product from the Elasticsearch and Kibana source described above, so do not assume it follows the same three-license arrangement or the same tier rules. Before you plan a pipeline around Logstash, confirm the license of the exact artifact you intend to run, including whether an -oss build exists for the version you choose.
- Default artifact: confirm the license text shipped in the default package for your target version.
- -oss artifact: confirm whether an -oss build exists for that version and which features it excludes.
- Plugins: check the license of each input, filter and output plugin you rely on, since plugin terms can differ from the core product.
- Version alignment: match Logstash with the Elastic release line you run, and check the Elastic product end of life dates for both products.
- Written confirmation: request the license notice for the specific artifact from Elastic and record it in your software inventory.
Record the artifact name, version and license in your change record before you deploy any Logstash pipeline.
Memory footprint and Kubernetes fit
The runtime decides how each collector behaves at different points in a log pipeline. A node-level agent runs as one pod per Kubernetes node, so its baseline memory is multiplied by every node in the cluster. A sidecar multiplies it by every pod it is attached to. An aggregator runs as a small set of replicas that receive forwarded logs, so its memory and buffer behavior depends on throughput and buffer settings more than on node count. Fluentd is a Ruby gem with its own gem dependencies, and Logstash runs on the JVM, which adds heap sizing and garbage collection to the picture. Fluentd's per-process footprint is the figure to test first when you plan a DaemonSet. The Fluent Bit documentation's comparison table puts Fluentd at more than 60 MB of memory, but that is Fluent Bit's vendor comparison, not an independent benchmark. Logstash footprint must be measured with your own pipeline, parsers, filters and output volume, because JVM heap size and throughput interact in ways a generic figure cannot show.
On Kubernetes, the two products are usually run in one of two layouts. Fluentd commonly runs as a DaemonSet that tails container logs on each node and forwards them, sometimes through an aggregator Deployment that buffers and enriches events before they reach a backend. Logstash is more often deployed as a central pipeline Deployment or StatefulSet that receives from Beats or other shippers, though node-level use is possible. Before you pick one, confirm with the platform team which of these shapes they will operate, and whether they expect a maintained operator or a Helm chart. Ask for the chart version, the image tag, the default resources requests and limits for each component, and how buffer volumes are sized and persisted. Also confirm how each deployment behaves when a node is drained, when a backend is unavailable and when log volume spikes, because these conditions expose memory limits faster than steady-state tests do. Those answers belong in the written scope, since they determine node counts and the effort to tune the cluster.
Plan the memory check as a short test in your own cluster. Run each candidate at your real log volume on a representative node pool, record steady-state and peak memory per pod, and rerun it with the backend disabled to see how buffers grow. Compare the results with the resource limits the chart sets by default, and decide whether an out-of-memory restart would drop logs or only delay them. For Fluentd, check which Ruby gem versions and plugins your pipeline loads, because each plugin adds to the process footprint. For Logstash, record the JVM heap settings and garbage collection pauses under load. The numbers from this test, not the vendor table, should decide the node sizing for the logging layer.
What drives running cost on each side
Running Fluentd or Logstash costs less in licenses than in the infrastructure, people and destination storage around them. The cards below separate one-time migration work from recurring spend, and list what to request in a written quote so both options are priced on the same scope.
Aggregator and buffer infrastructure
Both pipelines usually need aggregator nodes and disk buffers, and their size follows event volume, retention needs and the number of destinations, not the license. Fluentd's buffer and retry settings and Logstash's queue settings each tie disk and memory to how long a destination may be down. Ask the vendor or your own tests to show peak throughput, buffer size per destination and the hardware or VM sizes used for that load. This is a recurring cost that grows with log volume.
Ruby plugin maintenance versus JVM tuning
Fluentd's cost often shows up as maintaining Ruby gems and plugin versions, since its plugin ecosystem is large but varies in maintenance. Logstash shifts effort toward JVM heap sizing, pipeline worker tuning and plugin upgrades within the Logstash release line. Both are recurring staff time. Ask who on your team owns plugin patching, which plugins you depend on, and whether those plugins are actively maintained for the versions you will run.
Elastic subscription tier and feature needs
If Logstash feeds Elasticsearch or Kibana, the subscription tier determines which security features you pay for. Elastic lists single sign-on, field- and document-level security and anomaly-based alerting as features outside the free tier, and the Platinum tier is no longer offered to new customers. A recurring subscription is therefore tied to the features you need, not to the pipeline itself. Ask Elastic which tier covers each feature in your requirements, and price each option separately.
fluent-package LTS upgrade planning
Teams on td-agent or older fluent-package releases face a one-time upgrade to a supported line. The download page states that td-agent v4 and fluent-package v5 no longer receive releases or security updates, while fluent-package LTS v6.0.5 is supported until December 2027. Plan the upgrade as a recurring LTS cycle, and ask the quote to cover the plugin versions tested against each LTS upgrade window.
Commercial support from each side
Fluentd has no single licensor, so commercial support comes from several vendors that offer help, including upgrades from end-of-life versions. Logstash support comes with an Elastic subscription, where the support level is part of the tier. Both are recurring contracts. Compare the response terms, the versions covered and whether the vendor will work on your plugins, and ask for those terms in writing.
Storage and licensing at the destination
Most of the recurring bill often sits at the destination, not in the collector. Elasticsearch storage, retention tiers and replicas drive cost, and so do S3 or other object storage bills for any archive. A collector that is cheaper to run can still send data to an expensive store, so model the destination with your retention policy. Ask the quote to state which destinations are in scope and what each one costs to keep for your retention period.
Moving pipelines from Logstash to Fluentd or back
This sequence moves log collection and parsing from one pipeline engine to the other without a gap in coverage, so each source is verified at the destination before the old path is removed. The output is a retired Logstash pipeline with documented parsers, outputs and alerts that the team can operate.
Inventory inputs, filters, outputs and plugins
Your engineers list every Logstash pipeline file, each input, each filter chain, each output and every plugin version in use, noting the Logstash and plugin versions the pipelines run on. Include Beats or Elastic Agent sources, grok patterns, conditionals, Ruby filters and any custom plugins, because these are the parts most likely to need rewriting. The check that closes this step is a signed-off inventory that names an owner for each source group.
Map each pipeline to its Fluentd equivalent
For every inventoried component, identify the Fluentd input, parser, filter and output that does the same job, typically using the fluent-package build and its plugin set. Mark every component with no direct equivalent as a plugin gap and decide whether to replace it with a different plugin, write a custom one, or keep that source on Logstash for now. The output is a mapping sheet reviewed by the platform and security owners, with each gap assigned a decision.
Build the Fluentd pipelines beside the existing ones
Deploy the Fluentd configuration to a staging or parallel environment and point a copy of each source group at it, while Logstash keeps writing to production. Where a destination must receive both streams during the overlap, configure dual writes to separate indices or prefixes so the two outputs can be compared without mixing them. The check is that both pipelines receive the same events and that Fluentd starts without errors for the agreed plugin versions.
Validate parsed fields and destination mappings
Compare field names, data types, timestamps and tag values produced by each pipeline for the same sample events, and check that the Fluentd output lands in indices whose mappings accept those fields. Look for parsing differences in grok-equivalent patterns, multiline events and timestamp handling, since these often change search results and alert conditions silently. The step closes when a reviewer has signed off a field comparison for each source group.
Cut over one source group at a time
Move sources to Fluentd in small groups, starting with low-risk sources, and stop sending each group's events through Logstash only after its validation has passed. Keep the Logstash configuration for that group available so you can route it back if a parsing or delivery issue appears. The check is a stable period for each group in which event counts, error logs and dropped-message metrics match expectations before the next group moves.
Retire the old Logstash pipeline
After every source group has run on Fluentd and the rollback path is no longer needed, remove the Logstash pipeline definitions, stop the service and archive the configuration in version control. Update runbooks, on-call documentation and alert routes so they reference the Fluentd tags and outputs. The output is a decommissioning record that lists what was removed, when, and who approved it.
Implementation: what each one involves and where projects run long
A Fluentd rollout starts with packaging. The fluent-package build is the supported path from Treasure Agent (td-agent) and ships as a bundled runtime, so the team can pin the Fluentd version and its plugin set instead of assembling a Ruby gem environment by hand. Next comes topology: decide which nodes act as forwarders on each host and which act as aggregators that receive, buffer and route to destinations. Plugin selection is the work most teams underestimate. Every plugin you add is a dependency to review, pin and retest on each upgrade, so record the exact versions in configuration management. Buffer sizing, TLS settings and credentials for each destination belong in the same design review, because a buffer sized for normal traffic can fill during a destination outage. Confirm the current fluent-package release channel and its end-of-life date on the Fluentd download page before you choose a channel.
A Logstash rollout is built around pipeline design. Each pipeline defines inputs, filters and outputs in its own configuration, and the team must decide how many pipelines run, how they are isolated and how events move between them. The JVM heap setting and the persistent queue settings control memory use and how much data survives a restart, so size them against measured event rates in a test environment rather than against defaults. Security configuration is a separate workstream. Confirm which Elastic subscription tier your environment requires for the single sign-on, role-based and field-level controls you plan to use, because the self-managed subscriptions page lists those features by tier. Plan the Elasticsearch cluster as well, since a highly available cluster needs at least three master-eligible nodes.
Across both tools, projects run long in the same four places. Unmapped fields are the most common: a new application emits a field that does not match the schema or parser, and the fix needs a review with the application team. Buffer and backpressure tuning takes repeated load tests, because the first sizing rarely survives a real destination outage. Multi-tenant routing, where each team or customer must reach only its own indexes or streams, requires access rules agreed before the pipeline is built. End-of-life upgrades add work when old configuration, plugins or stack versions must move together. Ask any implementation partner to write these four areas into the scope with named owners and acceptance tests. DeployOpen plans and scopes these items in writing before work starts, and timelines come from the agreed scope, not from this page.
Questions buyers ask before choosing Fluentd or Logstash
Is moving from Logstash to Fluentd cheaper than staying put?
It depends on the shape of your estate, not on a single figure. The main cost drivers are the number of pipelines, how many Logstash plugins each pipeline relies on, and how many destinations each pipeline writes to. Fewer, simpler pipelines with mainstream outputs cost less to convert than many pipelines with custom Ruby filters. Ongoing costs also differ: Fluentd runs under Apache-2.0 with no paid edition in the open-source path, while Logstash licensing depends on the build you run. Ask a partner to price the migration from a written inventory of pipelines, plugins and destinations, and to separate one-time conversion work from recurring support.
How long does a Fluentd migration take?
The duration is set by the agreed scope, so there is no standard number to quote. The work depends on how many pipelines exist, how much parsing logic must be rebuilt, how many destinations need new configuration and how much parallel running you want before cutover. A fixed-scope engagement typically records the pipeline inventory, the target design, the test plan and the cutover criteria in writing before work starts. Ask for a timeline tied to those deliverables and for a plan to run both pipelines side by side for comparison.
What does our team need to provide during a log pipeline migration?
Three things block most migrations when they are missing. First, access to the current Logstash configurations, the hosts that run them, and the destinations they write to. Second, a named owner for each destination, such as the SIEM, the search cluster or the archive bucket, who can confirm index names, retention and field expectations. Third, sign-off on parsed fields, because a renamed or dropped field can break dashboards, alerts and compliance searches without any error in the pipeline. Agree on who signs off each field set before the parsing rules are rebuilt.
Can our own engineers migrate from Logstash to Fluentd without a partner?
A small estate with a handful of pipelines, standard inputs and outputs, and good documentation can often be moved by an experienced team in-house. The work becomes harder with many pipelines, heavy custom filtering, several destinations with different retention rules, or strict audit requirements that need evidence of each change. In those cases, the main risks are silent field changes and gaps in the record of what changed and who approved it. Be honest about your team's capacity for testing and parallel running before deciding.
Is Logstash still open source under an OSI-approved license?
Logstash is part of Elastic's stack, and Elastic's licensing FAQ says the source is available under three options: the Elastic License 2.0 (the default distribution), SSPL 1.0 and AGPLv3. Elastic states that ELv2 and SSPL are not OSI-approved open source licenses, while AGPLv3 is. Elastic says it added AGPLv3 in September 2024 before the 8.16 release. Because the build you deploy determines which terms apply, confirm with Elastic which distribution and license cover the Logstash version you run, and record that decision in your compliance file.
What should we ask a partner to include in a migration quote?
Ask for a written scope that lists every pipeline, input, filter, output and destination in the migration, along with the systems each one touches. Request the deliverables and their order, including the parsing rules, test cases, parallel-run plan, cutover and rollback steps, and documentation. Ask who is responsible for each destination change, what access the partner needs, and how field sign-off is recorded. Confirm which items are one-time, which are recurring support, and what triggers a change order. Fixed-scope quotes are easier to compare when every assumption is written down.
Does Fluentd reach the destinations we need beyond Elasticsearch?
Fluentd is built to decouple data sources from backend systems, and its Ruby plugin ecosystem is one reason teams choose it. Its website cites more than 500 plugins, while the Fluent Bit documentation describes Fluentd as suited to cases that need its large plugin ecosystem. Check each destination on your list against the plugin you would use, confirm its maintenance status, and test throughput and error handling with your own data. Do not assume a plugin exists for every target until you have verified it.
How DeployOpen helps you choose and move your log pipeline
DeployOpen plans, implements, integrates, hardens, documents and supports self-hosted open-source platforms inside your own cloud accounts, data centers or air-gapped networks. For Fluentd vs Logstash, we start by mapping your sources, destinations and licensing constraints so the choice of collector rests on your environment rather than on a general ranking.
How we scope
- Inventory log sources, destinations, parsing rules and retention needs before any pipeline design begins.
- Confirm which Fluentd or Logstash distribution and license your compliance team has approved for production.
- Agree a fixed scope in writing covering deliverables, timelines and the Kubernetes or VM targets involved.
How we build
- Build collector configurations for agreed sources, with forwarder and aggregator roles defined and tested.
- Validate plugin choices against your destinations, and confirm each required plugin is maintained before adoption.
- Test throughput, memory use and failure behavior in your own environment, not a generic lab.
How we hand over
- Document pipeline architecture, configuration files, plugin versions and the runbook for upgrades.
- Provide a migration plan for moving existing Logstash pipelines, including a parallel-run and cutover checklist.
- Walk your operations and security teams through monitoring, alerting and recovery procedures before handover.
How we support
- Offer ongoing support, upgrades and testing as a retainer, sized to the written scope.
- Track vendor release and end-of-life dates so your collector versions stay within supported windows.
- Prepare configuration, access and logging evidence that your internal or external auditors can review.

