我有文件,如下所示:
{
dateTime: /* My time field */,
message: {
users: ['1', '2']
},
messageType: 'test'
}
我想构建一个 timelion 系列图表,显示数组计数的累积总和message.users
。我的第一个想法是创建一个脚本:
if(doc.containsKey('message.users')) {
return doc['message.users'].length;
} else {
return 0;
}
据我所知,doc.containsKey('message.users')
总是错误的,这告诉我它可能没有被正确索引。我试过无数次Timelion,都无济于事:
.es(index=logstash-*,timefield='dateTime',q='messageType:UserList').label('Users Online')
我通过 c# NEST api 像这样索引我的文档:
elasticClient.Index(
new
{
DateTime = DateTime.Now,
Message = evt.EventArgs.Message,
},
idx => idx.Index($"logstash-{evt.MessageCode}"));