I have documents, that look similar to below:
{
dateTime: /* My time field */,
message: {
users: ['1', '2']
},
messageType: 'test'
}
I'd like to construct a timelion series chart that shows me a cumulative sum of the count of the array message.users
. My first inkling was to create a script:
if(doc.containsKey('message.users')) {
return doc['message.users'].length;
} else {
return 0;
}
From what I could tell, doc.containsKey('message.users')
always was false, which tells me that it may not have been indexed correctly. I've tried numerous Timelion, all to no avail:
.es(index=logstash-*,timefield='dateTime',q='messageType:UserList').label('Users Online')
I index my document through the c# NEST api like so:
elasticClient.Index(
new
{
DateTime = DateTime.Now,
Message = evt.EventArgs.Message,
},
idx => idx.Index($"logstash-{evt.MessageCode}"));