# Nested json output to csv by using conditional statements in logstash

**URL:** <https://discuss.elastic.co/t/nested-json-output-to-csv-by-using-conditional-statements-in-logstash/165719>\
**Category:** Logstash\
**Created:** [January 25, 2019, 8:21am UTC](https://discuss.elastic.co/t/nested-json-output-to-csv-by-using-conditional-statements-in-logstash/165719 "2019-01-25T08:21:57Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![manasapp](https://avatars.discourse-cdn.com/v4/letter/m/7cd45c/32.png) [@manasapp](https://discuss.elastic.co/u/manasapp)\
**Post date:** [January 25, 2019, 8:21am UTC](https://discuss.elastic.co/t/nested-json-output-to-csv-by-using-conditional-statements-in-logstash/165719/1 "2019-01-25T08:21:57Z")

</div>

hello guys,  
iam using metric beat as input to log stash and i got output as shown below

{"metricset":{"module":"system","name":"memory","rtt":822},"@timestamp":"2019-01-22T18:45:38.755Z","beat":{"version":"6.5.4","name":"[elastic.tdc.com](http://elastic.tdc.com)","hostname":"[elastic.tdc.com](http://elastic.tdc.com)"},"system":{"memory":{"free":13763461120,"total":16559796224,"actual":{"free":14366027776,"used":{"bytes":2193768448,"pct":0.1325}},"used":{"bytes":2796335104,"pct":0.1689},"hugepages":{"free":0,"reserved":0,"total":0,"default\_size":2097152,"surplus":0,"used":{"bytes":0,"pct":0}},"swap":{"free":34603003904,"used":{"bytes":0,"pct":0},"total":34603003904}}},"host":{"name":"[elastic.tdc.com](http://elastic.tdc.com)","architecture":"x86\_64","containerized":true,"os":{"version":"6.5 ()","family":"","platform":"oracle"}},"@version":"1","tags":["beats\_input\_raw\_event"]}

> how can i send this output to csv and also i need to filter output by fields.here is the config file

input {  
beats {  
port =\> 5045  
}  
}  
filter{  
kv {  
field\_split =\> ":"  
}  
}  
output{  
stdout{}  
if [[metricset][name]] == "memory" {  
csv {

```
	fields=>["[metricset][module]","[metricset][name]","[metricset][rtt]","@timestamp","[beat][version]","[beat][name]","[beat][hostname]","[system][memory][free]","[system][memory][total]","[system][memory][actual][free]","[system][memory][actual][used][bytes]","[system][memory][actual][used][pct]","[system][memory][used][bytes]","[system][memory][used][pct]","[system][memory][hugepages][free]","[system][memory][hugepages][reserved]","[system][memory][hugepages][total]","[system][memory][hugepages][default_size]","[system][memory][hugepages][surplus]","[system][memory][hugepages][used][bytes]","[system][memory][hugepages][used][pct]","[system][memory][swap][free]","[system][memory][swap][used][bytes]","[system][memory][swap][used][pct]","[system][memory][swap][total]","[host][name]","[host][architecture]","[host][containerized]","[host][os][version]","[host][os][family]","[host][os][platform]","[@version]","[tags]"]

        	path => "/elk/logstash-6.5.1/bin/memory.csv"
	}
}
}

```

> iam getting error which is shown below.

Failed to execute action {:action=\>LogStash::PipelineAction::Create/pipeline\_id:main, :exception=\>"LogStash::ConfigurationError", :message=\>"Expected one of [, #, in, not , ==, !=, \<=, \>=, \<, \>, =~, !~, and, or, xor, nand, { at line 13, column 23 (byte 125) after output{\n\tstdout{}\n\tif [[metricset][name]", :backtrace=\>["/elk/logstash-6.5.1/logstash-core/lib/logstash/compiler.rb:41:in `compile_imperative'", "/elk/logstash-6.5.1/logstash-core/lib/logstash/compiler.rb:49:in `compile\_graph'", "/elk/logstash-6.5.1/logstash-core/lib/logstash/compiler.rb:11:in `block in compile_sources'", "org/jruby/RubyArray.java:2486:in `map'", "/elk/logstash-6.5.1/logstash-core/lib/logstash/compiler.rb:10:in `compile_sources'", "org/logstash/execution/AbstractPipelineExt.java:149:in `initialize'", "/elk/logstash-6.5.1/logstash-core/lib/logstash/pipeline.rb:22:in `initialize'", "/elk/logstash-6.5.1/logstash-core/lib/logstash/pipeline.rb:90:in `initialize'", "/elk/logstash-6.5.1/logstash-core/lib/logstash/pipeline\_action/create.rb:42:in `block in execute'", "/elk/logstash-6.5.1/logstash-core/lib/logstash/agent.rb:92:in `block in exclusive'", "org/jruby/ext/thread/Mutex.java:148:in `synchronize'", "/elk/logstash-6.5.1/logstash-core/lib/logstash/agent.rb:92:in `exclusive'", "/elk/logstash-6.5.1/logstash-core/lib/logstash/pipeline\_action/create.rb:38:in `execute'", "/elk/logstash-6.5.1/logstash-core/lib/logstash/agent.rb:317:in `block in converge\_state'"]}

> can anybody help me

---

<div class="post-metadata">

**Author:** ![manasapp](https://avatars.discourse-cdn.com/v4/letter/m/7cd45c/32.png) [@manasapp](https://discuss.elastic.co/u/manasapp)\
**Post date:** [January 25, 2019, 8:23am UTC](https://discuss.elastic.co/t/nested-json-output-to-csv-by-using-conditional-statements-in-logstash/165719/2 "2019-01-25T08:23:29Z")

</div>

> can anyone help me to get rid of this issue

---

<div class="post-metadata">

**Author:** ![Badger](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/badger/32/25190_2.png) [@Badger](https://discuss.elastic.co/u/Badger)\
**Post date:** [January 25, 2019, 12:50pm UTC](https://discuss.elastic.co/t/nested-json-output-to-csv-by-using-conditional-statements-in-logstash/165719/3 "2019-01-25T12:50:17Z")

</div>

> [@manasapp](#):
>
> Expected one of [, #, in, not , ==, !=, \<=, \>=, \<, \>, =~, !~, and, or, xor, nand, { at line 13, column 23 (byte 125) after output{\n\tstdout{}\n\tif [[metricset][name]",

I think you want

```
if [metricset][name]

```

instead of

```
if [[metricset][name]

```

---

<div class="post-metadata">

**Author:** ![manasapp](https://avatars.discourse-cdn.com/v4/letter/m/7cd45c/32.png) [@manasapp](https://discuss.elastic.co/u/manasapp)\
**Post date:** [January 25, 2019, 2:38pm UTC](https://discuss.elastic.co/t/nested-json-output-to-csv-by-using-conditional-statements-in-logstash/165719/4 "2019-01-25T14:38:43Z")

</div>

Thank u

---

<div class="post-metadata">

**Author:** ![manasapp](https://avatars.discourse-cdn.com/v4/letter/m/7cd45c/32.png) [@manasapp](https://discuss.elastic.co/u/manasapp)\
**Post date:** [January 30, 2019, 9:39am UTC](https://discuss.elastic.co/t/nested-json-output-to-csv-by-using-conditional-statements-in-logstash/165719/5 "2019-01-30T09:39:42Z")

</div>

> Thank u Mr.Badger

---

<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 27, 2019, 9:39am UTC](https://discuss.elastic.co/t/nested-json-output-to-csv-by-using-conditional-statements-in-logstash/165719/6 "2019-02-27T09:39:43Z")

</div>

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