# How to setup multiple input and output in Filebeat config?

**URL:** https://discuss.elastic.co/t/how-to-setup-multiple-input-and-output-in-filebeat-config/163325
**Category:** Beats
**Created:** [January 8, 2019, 9:15am UTC](https://discuss.elastic.co/t/how-to-setup-multiple-input-and-output-in-filebeat-config/163325 "2019-01-08T09:15:20Z")
**Posts on this page:** 13
**Page:** 1

<div class="post-metadata">

### Author: ![ronald8192](https://avatars.discourse-cdn.com/v4/letter/r/977dab/32.png) [@ronald8192](https://discuss.elastic.co/u/ronald8192)
#### Post date: [January 8, 2019, 9:15am UTC](https://discuss.elastic.co/t/how-to-setup-multiple-input-and-output-in-filebeat-config/163325/1 "2019-01-08T09:15:20Z")

</div>

I need to have 2 set of input files and output target in Filebeat config.

My current `filebeat.yml` config looks like this:

```
filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /path/to/log-1.log
filebeat.config.modules:
  path: ${path.config}/modules.d/*.yml
  reload.enabled: false
output.logstash:
  hosts: ["myLogstashServer1:5044"]

```

I want to add another log path and target to the config. Filebeat listen both `log-1.log` and `log-2.log`, but `log-1.log` only output to `myLogstashServer1:5044` , `log-2.log` only output to `myLogstashServer2:5044` :

- `/path/to/log-1.log` --\> `myLogstashServer1:5044`
- `/path/to/log-2.log` --\> `myLogstashServer2:5044`

Is it possible? If yes, how to do that?

---

<div class="post-metadata">

### Author: ![Christian\_Dahlqvist](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/christian_dahlqvist/32/4617_2.png) [@Christian\_Dahlqvist](https://discuss.elastic.co/u/Christian_Dahlqvist)
#### Post date: [January 8, 2019, 9:50am UTC](https://discuss.elastic.co/t/how-to-setup-multiple-input-and-output-in-filebeat-config/163325/2 "2019-01-08T09:50:02Z")

</div>

I believe Filebeat only supports a single output. Why can you not send the data to a single Logstash instance?

---

<div class="post-metadata">

### Author: ![ronald8192](https://avatars.discourse-cdn.com/v4/letter/r/977dab/32.png) [@ronald8192](https://discuss.elastic.co/u/ronald8192)
#### Post date: [January 9, 2019, 7:02am UTC](https://discuss.elastic.co/t/how-to-setup-multiple-input-and-output-in-filebeat-config/163325/3 "2019-01-09T07:02:19Z")

</div>

Because the new logstash server is for vendor to monitor their application log.

In this case, what is the best approach? Can I use [Grok filter plugin](https://www.elastic.co/guide/en/logstash/current/plugins-filters-grok.html) to whitelist logs that I want?

---

<div class="post-metadata">

### Author: ![Christian\_Dahlqvist](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/christian_dahlqvist/32/4617_2.png) [@Christian\_Dahlqvist](https://discuss.elastic.co/u/Christian_Dahlqvist)
#### Post date: [January 9, 2019, 7:11am UTC](https://discuss.elastic.co/t/how-to-setup-multiple-input-and-output-in-filebeat-config/163325/4 "2019-01-09T07:11:23Z")

</div>

A Logstash instance can use conditionals and multiple outputs. What are the requirements around this solution?

---

<div class="post-metadata">

### Author: ![ronald8192](https://avatars.discourse-cdn.com/v4/letter/r/977dab/32.png) [@ronald8192](https://discuss.elastic.co/u/ronald8192)
#### Post date: [January 9, 2019, 7:36am UTC](https://discuss.elastic.co/t/how-to-setup-multiple-input-and-output-in-filebeat-config/163325/5 "2019-01-09T07:36:33Z")

</div>

I want to filter logs by their path.  
For example, logstash server 1 only process logs from `/var/log/app-1/*.log`

---

<div class="post-metadata">

### Author: ![Christian\_Dahlqvist](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/christian_dahlqvist/32/4617_2.png) [@Christian\_Dahlqvist](https://discuss.elastic.co/u/Christian_Dahlqvist)
#### Post date: [January 9, 2019, 7:41am UTC](https://discuss.elastic.co/t/how-to-setup-multiple-input-and-output-in-filebeat-config/163325/6 "2019-01-09T07:41:14Z")

</div>

Is the requirement that the vendor should be able to provide their own config file for processing their data? Is the vendor running their own Logstash instance?

---

<div class="post-metadata">

### Author: ![ronald8192](https://avatars.discourse-cdn.com/v4/letter/r/977dab/32.png) [@ronald8192](https://discuss.elastic.co/u/ronald8192)
#### Post date: [January 9, 2019, 8:28am UTC](https://discuss.elastic.co/t/how-to-setup-multiple-input-and-output-in-filebeat-config/163325/7 "2019-01-09T08:28:08Z")

</div>

Correct, so I want to set the filtering in the existing Logstash instance.

---

<div class="post-metadata">

### Author: ![Christian\_Dahlqvist](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/christian_dahlqvist/32/4617_2.png) [@Christian\_Dahlqvist](https://discuss.elastic.co/u/Christian_Dahlqvist)
#### Post date: [January 9, 2019, 8:39am UTC](https://discuss.elastic.co/t/how-to-setup-multiple-input-and-output-in-filebeat-config/163325/8 "2019-01-09T08:39:38Z")

</div>

Have you looked into using [multiple pipelines within a single Logstash instance](https://www.elastic.co/guide/en/logstash/6.5/multiple-pipelines.html)? You could have one pipeline receiving all data from Beats and then use conditionals and [pipeline to pipeline communication](https://www.elastic.co/guide/en/logstash/6.5/pipeline-to-pipeline.html) to send data to specific processing pipelines depending on the origin.

You can also have one Logstash instance receive all events and then based on conditionals forward data via [Lumberjack](https://www.elastic.co/guide/en/logstash/6.5/plugins-outputs-lumberjack.html) to another Logstash instance.

---

<div class="post-metadata">

### Author: ![ronald8192](https://avatars.discourse-cdn.com/v4/letter/r/977dab/32.png) [@ronald8192](https://discuss.elastic.co/u/ronald8192)
#### Post date: [January 9, 2019, 10:04am UTC](https://discuss.elastic.co/t/how-to-setup-multiple-input-and-output-in-filebeat-config/163325/9 "2019-01-09T10:04:14Z")

</div>

Thanks for your suggestion, but for some reason, we are not allowed to share the Logstash instance..

---

<div class="post-metadata">

### Author: ![Christian\_Dahlqvist](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/christian_dahlqvist/32/4617_2.png) [@Christian\_Dahlqvist](https://discuss.elastic.co/u/Christian_Dahlqvist)
#### Post date: [January 9, 2019, 10:08am UTC](https://discuss.elastic.co/t/how-to-setup-multiple-input-and-output-in-filebeat-config/163325/10 "2019-01-09T10:08:38Z")

</div>

Then use a Lumberjack output plugin combined with a beats input plugin to send data from one instance to another.

---

<div class="post-metadata">

### Author: ![ronald8192](https://avatars.discourse-cdn.com/v4/letter/r/977dab/32.png) [@ronald8192](https://discuss.elastic.co/u/ronald8192)
#### Post date: [January 10, 2019, 8:06am UTC](https://discuss.elastic.co/t/how-to-setup-multiple-input-and-output-in-filebeat-config/163325/11 "2019-01-10T08:06:35Z")

</div>

Sorry, I don't get it. I am new to elastic products, can you show the data flow between the servers of your solution? Thanks a lot!

---

<div class="post-metadata">

### Author: ![Christian\_Dahlqvist](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/christian_dahlqvist/32/4617_2.png) [@Christian\_Dahlqvist](https://discuss.elastic.co/u/Christian_Dahlqvist)
#### Post date: [January 10, 2019, 8:25am UTC](https://discuss.elastic.co/t/how-to-setup-multiple-input-and-output-in-filebeat-config/163325/12 "2019-01-10T08:25:26Z")

</div>

Filebeat ---\> [Beats input] Logstash [Lumberjack output] ---\> [Beats input] Logstash [Elasticsearch output] ---\> Elasticsearch

---

<div class="post-metadata">

### Author: ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)
#### Post date: [February 7, 2019, 10:25am UTC](https://discuss.elastic.co/t/how-to-setup-multiple-input-and-output-in-filebeat-config/163325/13 "2019-02-07T10:25:29Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
