# Input json file into elasticsearch via logstash

**URL:** <https://discuss.elastic.co/t/input-json-file-into-elasticsearch-via-logstash/92766>\
**Category:** Logstash\
**Created:** [July 12, 2017, 7:20am UTC](https://discuss.elastic.co/t/input-json-file-into-elasticsearch-via-logstash/92766 "2017-07-12T07:20:32Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![bhavna\_jha](https://avatars.discourse-cdn.com/v4/letter/b/c77e96/32.png) [@bhavna\_jha](https://discuss.elastic.co/u/bhavna_jha)\
**Post date:** [July 12, 2017, 7:20am UTC](https://discuss.elastic.co/t/input-json-file-into-elasticsearch-via-logstash/92766/1 "2017-07-12T07:20:32Z")

</div>

HI,  
I am trying to input json file into elasticsearch but I get this error:

Could not find log4j2 configuration at path /logstash-5.4.0/config/log4j2.properties. Using default config which logs to console  
12:27:10.702 [main] FATAL logstash.runner - An unexpected error occurred! {:error=\>#\<ArgumentError: Setting "xpack.monitoring.elasticsearch.username" hasn't been registered\>, :backtrace=\>["C:/logstash-5.4.0/logstash-core/lib/logstash/settings.rb:29:in `get_setting'", "C:/logstash-5.4.0/logstash-core/lib/logstash/settings.rb:61:in`set\_value'", "C:/logstash-5.4.0/logstash-core/lib/logstash/settings.rb:80:in `merge'", "org/jruby/RubyHash.java:1342:in`each'", "C:/logstash-5.4.0/logstash-core/lib/logstash/settings.rb:80:in `merge'", "C:/logstash-5.4.0/logstash-core/lib/logstash/settings.rb:129:in`validate\_all'", "C:/logstash-5.4.0/logstash-core/lib/logstash/runner.rb:217:in `execute'", "C:/logstash-5.4.0/vendor/bundle/jruby/1.9/gems/clamp-0.6.5/lib/clamp/command.rb:67:in`run'", "C:/logstash-5.4.0/logstash-core/lib/logstash/runner.rb:185:in `run'", "C:/logstash-5.4.0/vendor/bundle/jruby/1.9/gems/clamp-0.6.5/lib/clamp/command.rb:132:in`run'", "C:\logstash-5.4.0\lib\bootstrap\environment.rb:71:in `(root)'"]}

I have removed x-pack plugin.

my logstash.conf file is:  
input  
{  
file  
{  
path =\> ["file:///C:/Users/EEBS/Desktop/json/shakespeare.json"]  
start\_position =\> "beginning"  
sincedb\_path =\> "/dev/null"  
exclude =\> "\*.gz"  
}  
}

filter  
{  
mutate  
{  
replace =\> ["message", "%{message}"]  
gsub =\> ['message','\n','']  
}  
if [message] =~ /^{.\*}$/  
{  
json { source =\> message }  
}

}

output  
{  
elasticsearch {  
protocol =\> "http"  
codec =\> json  
host =\> "localhost"  
index =\> "json"  
embedded =\> true  
}

```
stdout { codec => rubydebug }

```

}

---

<div class="post-metadata">

**Author:** ![magnusbaeck](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/magnusbaeck/32/44943_2.png) [@magnusbaeck](https://discuss.elastic.co/u/magnusbaeck)\
**Post date:** [July 12, 2017, 7:12pm UTC](https://discuss.elastic.co/t/input-json-file-into-elasticsearch-via-logstash/92766/2 "2017-07-12T19:12:46Z")

</div>

What does /logstash-5.4.0/config/logstash.yml look like? Please always post configuration files as preformatted text.

The second line of the log has been damaged when you posted. What actually comes after ":error=\>#"? You can just repost the log as preformatted text.

---

<div class="post-metadata">

**Author:** ![bhavna\_jha](https://avatars.discourse-cdn.com/v4/letter/b/c77e96/32.png) [@bhavna\_jha](https://discuss.elastic.co/u/bhavna_jha)\
**Post date:** [July 13, 2017, 6:05am UTC](https://discuss.elastic.co/t/input-json-file-into-elasticsearch-via-logstash/92766/3 "2017-07-13T06:05:05Z")

</div>

```
indent preformatted text by 4 spaces

```

@magnusbaeck  
My .conf file:

input  
{  
file  
{  
path =\> ["file:///C:/Users/EEBS/Desktop/json/shakespeare.json"]  
start\_position =\> "beginning"  
sincedb\_path =\> "/dev/null"  
exclude =\> "\*.gz"  
}  
}

filter  
{  
mutate  
{  
replace =\> ["message", "%{message}"]  
gsub =\> ['message','\n','']  
}  
if [message] =~ /^{.\*}$/  
{  
json { source =\> message }  
}

}

output  
{  
elasticsearch {  
protocol =\> "http"  
codec =\> json  
host =\> "localhost"  
index =\> "json"  
embedded =\> true  
}

stdout { codec =\> rubydebug }  
}

and error log is:

12:27:10.702 [main] FATAL logstash.runner - An unexpected error occurred! {:error=\>#, :backtrace=\>["C:/logstash-5.4.0/logstash-core/lib/logstash/settings.rb:29:in get\_setting'", "C:/logstash-5.4.0/logstash-core/lib/logstash/settings.rb:61:inset\_value'", "C:/logstash-5.4.0/logstash-core/lib/logstash/settings.rb:80:in merge'", "org/jruby/RubyHash.java:1342:ineach'", "C:/logstash-5.4.0/logstash-core/lib/logstash/settings.rb:80:in merge'", "C:/logstash-5.4.0/logstash-core/lib/logstash/settings.rb:129:invalidate\_all'", "C:/logstash-5.4.0/logstash-core/lib/logstash/runner.rb:217:in execute'", "C:/logstash-5.4.0/vendor/bundle/jruby/1.9/gems/clamp-0.6.5/lib/clamp/command.rb:67:inrun'", "C:/logstash-5.4.0/logstash-core/lib/logstash/runner.rb:185:in run'", "C:/logstash-5.4.0/vendor/bundle/jruby/1.9/gems/clamp-0.6.5/lib/clamp/command.rb:132:inrun'", "C:\logstash-5.4.0\lib\bootstrap\environment.rb:71:in `(root)'"]}

---

<div class="post-metadata">

**Author:** ![magnusbaeck](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/magnusbaeck/32/44943_2.png) [@magnusbaeck](https://discuss.elastic.co/u/magnusbaeck)\
**Post date:** [July 13, 2017, 6:23am UTC](https://discuss.elastic.co/t/input-json-file-into-elasticsearch-via-logstash/92766/4 "2017-07-13T06:23:56Z")

</div>

Still damaged. What comes after ":error=\>#"?!

---

<div class="post-metadata">

**Author:** ![bhavna\_jha](https://avatars.discourse-cdn.com/v4/letter/b/c77e96/32.png) [@bhavna\_jha](https://discuss.elastic.co/u/bhavna_jha)\
**Post date:** [July 13, 2017, 11:48am UTC](https://discuss.elastic.co/t/input-json-file-into-elasticsearch-via-logstash/92766/5 "2017-07-13T11:48:08Z")

</div>

I am getting this error log :  
indent preformatted text by 4 spaces  
Could not find log4j2 configuration at path /logstash-5.4.0/config/log4j2.properties. Using default config which logs to console  
17:15:41.137 [LogStash::Runner] ERROR logstash.outputs.elasticsearch - Unknown setting 'protocol' for elasticsearch  
17:15:41.140 [LogStash::Runner] ERROR logstash.outputs.elasticsearch - Unknown setting 'host' for elasticsearch  
17:15:41.141 [LogStash::Runner] ERROR logstash.outputs.elasticsearch - Unknown setting 'embedded' for elasticsearch  
17:15:41.149 [LogStash::Runner] ERROR logstash.agent - Cannot create pipeline {:reason=\>"Something is wrong with your configuration."}

---

<div class="post-metadata">

**Author:** ![magnusbaeck](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/magnusbaeck/32/44943_2.png) [@magnusbaeck](https://discuss.elastic.co/u/magnusbaeck)\
**Post date:** [July 13, 2017, 2:17pm UTC](https://discuss.elastic.co/t/input-json-file-into-elasticsearch-via-logstash/92766/6 "2017-07-13T14:17:36Z")

</div>

The three mentioned settings for the elasticsearch output were deprecated as of Logstash 2.0. See the documentation for your version of Logstash for a list of available settings.

---

<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:** [August 10, 2017, 2:17pm UTC](https://discuss.elastic.co/t/input-json-file-into-elasticsearch-via-logstash/92766/7 "2017-08-10T14:17:46Z")

</div>

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