summaryrefslogtreecommitdiffstats
path: root/extra/docker/elk/tools/EsAutoQuery/timeSince.json
blob: 6ee14933d45d8b5dde2c71b50bde727774a86259 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
{
    "query" : {
        "match_all": {}
    },
    "script_fields" : {
        "timeSince" : {
            "script" : {
                "lang": "painless",
                "source": "
long now = System.currentTimeMillis();
if (doc.get('closedLoopEventStatus.keyword').value == 'ABATED') {
   return now - doc.get('closedLoopAlarmEnd').value;
}
if (doc.get('closedLoopEventStatus.keyword').value == 'ONSET') {
   return now - doc.get('closedLoopAlarmStart').value;
}
if (doc.containsKey('notification.keyword')) {
   return now - doc.get('notificationTime').value;
}

return null
"
            }
        }
        , "closedLoopAlarmStart" : {
            "script" : {
                "lang": "painless",
                "source": "doc['closedLoopAlarmStart']"
            }
        }
        , "closedLoopEventStatus" : {
            "script" : {
                "lang": "painless",
                "source": "doc['closedLoopEventStatus.keyword']"
            }
        }
        , "notification" : {
            "script" : {
                "lang": "painless",
                "source": "doc['notification.keyword']"
            }
        }
        , "notificationTime" : {
            "script" : {
                "lang": "painless",
                "source": "doc['notificationTime'].value"
            }
        }

    }
}