Funkcja, którą próbuję dopasować, polega na utworzeniu metryki w kibanie, która wyświetla liczbę użytkowników "bez ważenia". Wysyłam dziennik wysłany po zarejestrowaniu użytkownika, a następnie dziennik po sprawdzeniu poprawności użytkownika.Pole [] użyte w wyrażeniu nie istnieje w odwzorowaniach
Tak więc liczba, którą chcę, to różnica między liczbą zarejestrowanych i zweryfikowanych.
W Kibana nie mogę zrobić taką operację matematyczną, więc znalazłem rozwiązania: I dodał „pole skryptów” o nazwie „nie- zwalidowane”, które jest równe 1, gdy rejestry użytkowników i -1, gdy użytkownik potwierdza swoje konto . Suma pola "bez ważenia" powinna być liczbą niezatwierdzonych użytkowników.
To jest skrypt I zdefiniowane w moim skryptem polu: doc['ctxt_code'].value == 1 ? 1 : doc['ctxt_code'].value == 2 ? -1 : 0
z:
ctxt_code 1 jako dzienniku rejestru
ctxt_code 2 jako zweryfikowanym dzienniku
To se tup działa dobrze, gdy wszystkie moje dzienniki mają „ctxt_code”, ale kiedy dziennik bez tej dziedzinie jest popychany Kibana wyrzuca następujący błąd:
Field [ctxt_code] used in expression does not exist in mappings
Nie mogę zrozumieć ten błąd, ponieważ Kibana mówi:
If a field is sparse (only some documents contain a value), documents missing the field will have a value of 0
który jest.
Ktoś ma jakąś wskazówkę?
Jeśli francuski, możesz nam pomóc na francuskim forum Elasticsearch: https://discuss.elastic.co/t/kibana-probleme-de-scripted-field-qui-nexiste-soit-disant-pas-dans-le-mapping/50618 – lenybernard
Czy jesteś pewien, że pole 'kod_tekstu' istnieje w odwzorowaniach wszystkich indeksów logstash? Widzę w prawym górnym rogu ekranu, nad którym pracujesz przez ostatnie siedem dni, czy możesz upewnić się, że indeksy logstash z ostatnich siedmiu dni mają to pole 'ctxt_code' w utworzonym odwzorowaniu? – Val
Brak wiadomości dobre wieści? – Val