# How to stop logstash send data to mongo if data incorrect

**URL:** <https://discuss.elastic.co/t/how-to-stop-logstash-send-data-to-mongo-if-data-incorrect/32242>\
**Category:** Logstash\
**Created:** [October 15, 2015, 7:47am UTC](https://discuss.elastic.co/t/how-to-stop-logstash-send-data-to-mongo-if-data-incorrect/32242 "2015-10-15T07:47:10Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Jason\_Zheng](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/jason_zheng/32/4041_2.png) [@Jason\_Zheng](https://discuss.elastic.co/u/Jason_Zheng)\
**Post date:** [October 15, 2015, 7:47am UTC](https://discuss.elastic.co/t/how-to-stop-logstash-send-data-to-mongo-if-data-incorrect/32242/1 "2015-10-15T07:47:11Z")

</div>

Hi All,

It seems to a loop which cannot stop when logstash would like to write incorrect data to mongo, even I did 'service logstash restart', the logstash started and then start to try send the incorrect data

My data process. logstash \> kafka \> logstash \> elasticsearch, mongo

grep logstash process, cannot kill 18528 and et al

> logstash 18258 2.0 4.0 4081932 325384 pts/0 SNl 15:12 0:46 /usr/bin/java -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -Djava.awt.headless=true -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -Djava.io.tmpdir=/var/lib/logstash -Xmx500m -Xss2048k -Djffi.boot.library.path=/opt/logstash/vendor/jruby/lib/jni -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -Djava.awt.headless=true -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -Djava.io.tmpdir=/var/lib/logstash -Xbootclasspath/a:/opt/logstash/vendor/jruby/lib/jruby.jar -classpath : -Djruby.home=/opt/logstash/vendor/jruby -Djruby.lib=/opt/logstash/vendor/jruby/lib -Djruby.script=jruby -Djruby.shell=/bin/sh org.jruby.Main --1.9 /opt/logstash/lib/bootstrap/environment.rb logstash/runner.rb agent -f /etc/logstash/conf.d -l /var/log/logstash/logstash.log  
> logstash 18365 2.6 3.8 4081948 311148 pts/0 SNl 15:23 0:43 /usr/bin/java -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -Djava.awt.headless=true -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -Djava.io.tmpdir=/var/lib/logstash -Xmx500m -Xss2048k -...

logstash setting

```
input {
        kafka {
                topic_id => "neptunus"
                zk_connect => "zookeeper4kafka:2181"
                type => "test"
        }
}

output {
        stdout { codec => rubydebug }
        elasticsearch {
                host => "140.92.25.59"
                codec => "json"
                protocol => "http"
                index => "logstash-%{+YYYY.MM.dd}"
        }

        mongodb {
                uri => "mongodb://mongo4kafka"
                database => kafkatest
                collection => hellomongo
                codec => "json"
        }

        mongodb {
                uri => "mongodb://mongo264kafka"
                database => kafkatest
                collection => hellomongo
                codec => "json"
        }
}

```

Following message print continuously

> {:timestamp=\>"2015-10-15T15:38:26.293000+0800", :message=\>"Failed to send event to MongoDB", :event=\>#\<LogStash::Event:0x24f2ce5c @metadata\_accessors=#\<LogStash::Util::Accessors:0x4e4fecf4 @store={"retry\_count"=\>0}, @lut={}\>, @cancelled=false, @data={"message"=\>"{a:22,"name":"franky"}", "@version"=\>"1", "@timestamp"=\>"2015-10-15T07:32:04.468Z", "host"=\>"logstashpubkafka", "path"=\>"/var/log/kafka/test", "type"=\>"test", "tags"=\>\<Java::JavaUtil::ArrayList:89942749 ["\_jsonparsefailure"]\>}, @metadata={"retry\_count"=\>0}, @accessors=#\<LogStash::Util::Accessors:0x23f04235 @store={"message"=\>"{a:22,"name":"franky"}", "@version"=\>"1", "@timestamp"=\>"2015-10-15T07:32:04.468Z", "host"=\>"logstashpubkafka", "path"=\>"/var/log/kafka/test", "type"=\>"test", "tags"=\>\<Java::JavaUtil::ArrayList:89942749 ["\_jsonparsefailure"]\>}, @lut={"type"=\>[{"message"=\>"{a:22,"name":"franky"}", "@version"=\>"1", "@timestamp"=\>"2015-10-15T07:32:04.468Z", "host"=\>"logstashpubkafka", "path"=\>"/var/log/kafka/test", "type"=\>"test", "tags"=\>\<Java::JavaUtil::ArrayList:89942749 ["\_jsonparsefailure"]\>}, "type"], "@timestamp"=\>[{"message"=\>"{a:22,"name":"franky"}", "@version"=\>"1", "@timestamp"=\>"2015-10-15T07:32:04.468Z", "host"=\>"logstashpubkafka", "path"=\>"/var/log/kafka/test", "type"=\>"test", "tags"=\>\<Java::JavaUtil::ArrayList:89942749 ["\_jsonparsefailure"]\>}, "@timestamp"]}\>\>, :exception=\>#\<NoMethodError: undefined method `bson_type' for <Java::JavaUtil::ArrayList:89942749 ["_jsonparsefailure"]>:Java::JavaUtil::ArrayList>, :backtrace=>["/opt/logstash/vendor/bundle/jruby/1.9/gems/bson-3.2.6-java/lib/bson/hash.rb:44:in `to\_bson'", "org/jruby/RubyHash.java:1341:in `each'", "/opt/logstash/vendor/bundle/jruby/1.9/gems/bson-3.2.6-java/lib/bson/hash.rb:43:in `to\_bson'", "/opt/logstash/vendor/bundle/jruby/1.9/gems/bson-3.2.6-java/lib/bson/encodable.rb:57:in `encode_with_placeholder_and_null'", "/opt/logstash/vendor/bundle/jruby/1.9/gems/bson-3.2.6-java/lib/bson/hash.rb:42:in `to\_bson'", "/opt/logstash/vendor/bundle/jruby/1.9/gems/bson-3.2.6-java/lib/bson/array.rb:49:in `to_bson'", "org/jruby/RubyArray.java:1613:in `each'", "org/jruby/RubyEnumerable.java:978:in `each_with_index'", "/opt/logstash/vendor/bundle/jruby/1.9/gems/bson-3.2.6-java/lib/bson/array.rb:46:in `to\_bson'", "/opt/logstash/vendor/bundle/jruby/1.9/gems/bson-3.2.6-java/lib/bson/encodable.rb:57:in `encode\_with\_placeholder\_and\_null'",

---

<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:** [October 16, 2015, 6:12am UTC](https://discuss.elastic.co/t/how-to-stop-logstash-send-data-to-mongo-if-data-incorrect/32242/2 "2015-10-16T06:12:09Z")

</div>

What do your mongo logs say about this?

---

<div class="post-metadata">

**Author:** ![Jason\_Zheng](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/jason_zheng/32/4041_2.png) [@Jason\_Zheng](https://discuss.elastic.co/u/Jason_Zheng)\
**Post date:** [October 16, 2015, 6:28am UTC](https://discuss.elastic.co/t/how-to-stop-logstash-send-data-to-mongo-if-data-incorrect/32242/3 "2015-10-16T06:28:17Z")

</div>

Hi Mark,

seems to if the log data parse to json failure, and the sent data include "["\_jsonparsefailure"]"

then I don't know why logstash always run not only one proecess, and I cannot kill the process id btw

```
logstash 1606 0.3 4.3 4084448 351232 ? SNl Oct15 5:11 /usr/bin/java -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -Djava.awt.headless=true -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -Djava.io.tmpdir=/var/lib/logstash -Xmx500m -Xss2048k -Djffi.boot.library.path=/opt/logstash/vendor/jruby/lib/jni -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -Djava.awt.headless=true -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -Djava.io.tmpdir=/var/lib/logstash -Xbootclasspath/a:/opt/logstash/vendor/jruby/lib/jruby.jar -classpath : -Djruby.home=/opt/logstash/vendor/jruby -Djruby.lib=/opt/logstash/vendor/jruby/lib -Djruby.script=jruby -Djruby.shell=/bin/sh org.jruby.Main --1.9 /opt/logstash/lib/bootstrap/environment.rb logstash/runner.rb agent -f /etc/logstash/conf.d -l /var/log/logstash/logstash.log
logstash 6747 4.4 3.9 4081488 319656 pts/0 SNl 14:07 0:40 /usr/bin/java -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -Djava.awt.headless=true -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -Djava.io.tmpdir=/var/lib/logstash -Xmx500m -Xss2048k -Djffi.boot.library.path=/opt/logstash/vendor/jruby/lib/jni -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -Djava.awt.headless=true -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -Djava.io.tmpdir=/var/lib/logstash -Xbootclasspath/a:/opt/logstash/vendor/jruby/lib/jruby.jar -classpath : -Djruby.home=/opt/logstash/vendor/jruby -Djruby.lib=/opt/logstash/vendor/jruby/lib -Djruby.script=jruby -Djruby.shell=/bin/sh org.jruby.Main --1.9 /opt/logstash/lib/bootstrap/environment.rb logstash/runner.rb agent -f /etc/logstash/conf.d -l /var/log/logstash/logstash.log
logstash 6851 11.1 3.8 4079440 310936 pts/0 SNl 14:17 0:31 /usr/bin/java -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -Djava.awt.headless=true -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -Djava.io.tmpdir=/var/lib/logstash -Xmx500m -Xss2048k -Djffi.boot.library.path=/opt/logstash/vendor/jruby/lib/jni -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -Djava.awt.headless=true -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -Djava.io.tmpdir=/var/lib/logstash -Xbootclasspath/a:/opt/logstash/vendor/jruby/lib/jruby.jar -classpath : -Djruby.home=/opt/logstash/vendor/jruby -Djruby.lib=/opt/logstash/vendor/jruby/lib -Djruby.script=jruby -Djruby.shell=/bin/sh org.jruby.Main --1.9 /opt/logstash/lib/bootstrap/environment.rb logstash/runner.rb agent -f /etc/logstash/conf.d -l /var/log/logstash/logstash.log
```

---

<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:** [October 16, 2015, 6:47am UTC](https://discuss.elastic.co/t/how-to-stop-logstash-send-data-to-mongo-if-data-incorrect/32242/4 "2015-10-16T06:47:35Z")

</div>

What Logstash version?

---

<div class="post-metadata">

**Author:** ![Jason\_Zheng](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/jason_zheng/32/4041_2.png) [@Jason\_Zheng](https://discuss.elastic.co/u/Jason_Zheng)\
**Post date:** [October 16, 2015, 6:48am UTC](https://discuss.elastic.co/t/how-to-stop-logstash-send-data-to-mongo-if-data-incorrect/32242/5 "2015-10-16T06:48:09Z")

</div>

Hi Mark,

logstash-1.5.2-1.noarch.rpm

---

<div class="post-metadata">

**Author:** ![Jason\_Zheng](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/jason_zheng/32/4041_2.png) [@Jason\_Zheng](https://discuss.elastic.co/u/Jason_Zheng)\
**Post date:** [October 19, 2015, 2:36am UTC](https://discuss.elastic.co/t/how-to-stop-logstash-send-data-to-mongo-if-data-incorrect/32242/6 "2015-10-19T02:36:09Z")

</div>

The logstash process seems to open another process by itself if there are some errors occurs (e. g. like cannot send the message to the destination) ?

Anyone have idea?

Jason

---

<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:** [July 6, 2017, 5:26am UTC](https://discuss.elastic.co/t/how-to-stop-logstash-send-data-to-mongo-if-data-incorrect/32242/7 "2017-07-06T05:26:15Z")

</div>


