# Requirement to build a Multiple Input system in Logstash as given below, Can I build something like this?

**URL:** <https://discuss.elastic.co/t/requirement-to-build-a-multiple-input-system-in-logstash-as-given-below-can-i-build-something-like-this/318584>\
**Category:** Logstash\
**Created:** [November 9, 2022, 6:57pm UTC](https://discuss.elastic.co/t/requirement-to-build-a-multiple-input-system-in-logstash-as-given-below-can-i-build-something-like-this/318584 "2022-11-09T18:57:59Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![rravitech](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/rravitech/32/108994_2.png) [@rravitech](https://discuss.elastic.co/u/rravitech)\
**Post date:** [November 9, 2022, 6:57pm UTC](https://discuss.elastic.co/t/requirement-to-build-a-multiple-input-system-in-logstash-as-given-below-can-i-build-something-like-this/318584/1 "2022-11-09T18:57:59Z")

</div>

I need to implement a UDP system in between the input and output patterns as mentioned below.

inputs : beats, tcp  
output: elastic-search

meanwhile i need to send all the data from the inputs like beats, tcp to an UDPOutput.  
and receive the same from UDPOutput to UDPInput. and finally from UDPInput to elasticsearch.

```auto
input -- pipeline output
                        \
                         pipeline input -- udp output
                                                     \
                                                      udp input -- output that stop [SE]

```

And the main purpose of bringing in UDP system in between is to ensure outputs are not blocked.

```auto
 logstash.conf1: |
    input {
      beats {
        port => 5044
      }
     tcp {
        id => "json_txt"
        port => 5025
        codec => json
        type => "json-tcp"
      }
    }
    output {
      udp {
        id => "my_plugin_id"
        port => 5014
        type => syslog
      }
    }    

  logstash.conf2: |
   input {
     udp {
       id => "my_plugin_id"
     }
   }
  output {
    elasticsearch {
      hosts => ["localhost:9200"]
      index => "logs-%{+yyyy.MM.dd}"
    }
  }

```

How can i achieve this in one logstash system?

---

<div class="post-metadata">

**Author:** ![warkolm](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/warkolm/32/39224_2.png) [@warkolm](https://discuss.elastic.co/u/warkolm)\
**Post date:** [November 9, 2022, 11:21pm UTC](https://discuss.elastic.co/t/requirement-to-build-a-multiple-input-system-in-logstash-as-given-below-can-i-build-something-like-this/318584/2 "2022-11-09T23:21:24Z")

</div>

Yes, look at using [Pipeline-to-pipeline communication | Logstash Reference [8.11] | Elastic](https://www.elastic.co/guide/en/logstash/current/pipeline-to-pipeline.html)

> [@rravitech](#):
>
> And the main purpose of bringing in UDP system in between is to ensure outputs are not blocked.

You're happy with data loss then?

---

<div class="post-metadata">

**Author:** ![rravitech](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/rravitech/32/108994_2.png) [@rravitech](https://discuss.elastic.co/u/rravitech)\
**Post date:** [November 10, 2022, 6:56am UTC](https://discuss.elastic.co/t/requirement-to-build-a-multiple-input-system-in-logstash-as-given-below-can-i-build-something-like-this/318584/3 "2022-11-10T06:56:39Z")

</div>

Yes Warkolm, i am good few gets lost.

---

<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:** [December 8, 2022, 6:57am UTC](https://discuss.elastic.co/t/requirement-to-build-a-multiple-input-system-in-logstash-as-given-below-can-i-build-something-like-this/318584/4 "2022-12-08T06:57:34Z")

</div>

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