# Csv output date with mm/dd/yyyy hh:mm AM format

**URL:** <https://discuss.elastic.co/t/csv-output-date-with-mm-dd-yyyy-hh-mm-am-format/97308>\
**Category:** Logstash\
**Created:** [August 16, 2017, 6:42pm UTC](https://discuss.elastic.co/t/csv-output-date-with-mm-dd-yyyy-hh-mm-am-format/97308 "2017-08-16T18:42:35Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![chetan\_vartak](https://avatars.discourse-cdn.com/v4/letter/c/fbc32d/32.png) [@chetan\_vartak](https://discuss.elastic.co/u/chetan_vartak)\
**Post date:** [August 16, 2017, 6:42pm UTC](https://discuss.elastic.co/t/csv-output-date-with-mm-dd-yyyy-hh-mm-am-format/97308/1 "2017-08-16T18:42:35Z")

</div>

Hi,

My input is elasticsearch and I want to output to csv.  
A date field by default is outputted as - 2017-08-11T18:50:42.000-07:100.  
I want it to output as 08/11/2017 06:50 PM

My current conf file -  
input {  
elasticsearch {  
hosts =\> "localhost:9200"  
index =\> "perfectorder"  
query =\> '  
{  
"query": {  
"bool": { "must": [{ "term": {"\_type": "Order"} }]  
}  
}  
}'  
}  
}  
}  
output {  
csv {  
fields =\> ["[Order][EID]","[Order][Status]","[Order][ShipmentMethod]","[Order][ReleaseDate]","[Order][ShipDate]","[Order][DeliveryDate]","[Order][CycleTime]"]  
path =\> "E:\ES\logstash-5.5.0\config\perfectorder.search.gci.sla.order\_export.csv"  
}  
}

---

<div class="post-metadata">

**Author:** ![chetan\_vartak](https://avatars.discourse-cdn.com/v4/letter/c/fbc32d/32.png) [@chetan\_vartak](https://discuss.elastic.co/u/chetan_vartak)\
**Post date:** [August 18, 2017, 8:09pm UTC](https://discuss.elastic.co/t/csv-output-date-with-mm-dd-yyyy-hh-mm-am-format/97308/2 "2017-08-18T20:09:11Z")

</div>

I was able to get the desired result using ruby filter...  
code sample -

```
filter {
  ruby { 
	code => "
	event.set('OrderTime', '')
	event.set('OrderDate', '')
	if event.get('[Order][OrderDate]') != nil
		splitOrderDate = event.get('[Order][OrderDate]').split('T')
		event.set('OrderTime',Time.parse(splitOrderDate[1][0..5]).strftime('%I:%M %p'))
		event.set('OrderDate',Date.parse(splitOrderDate[0]).strftime('%m/%d/%y'))
	end
		"	
} 
  mutate {
	add_field => { 
		"[Order][OrderDateTime]" => "%{OrderDate} %{OrderTime}" 
	}
	}
}
```

---

<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:** [September 15, 2017, 8:09pm UTC](https://discuss.elastic.co/t/csv-output-date-with-mm-dd-yyyy-hh-mm-am-format/97308/3 "2017-09-15T20:09:15Z")

</div>

Closed on September 15, 2017, 8:09pm UTC

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