Graylog: Przyczyna problemu

Ta dokumentacja jest częścią przewodnika Problemy z mapowaniem danych. Pełny przewodnik znajdziesz tutaj: Jak rozwiązywać problemy z mapowaniem danych indeksu w Graylog.

👋 Witamy w dokumentacji Stackhero!

Stackhero oferuje gotowe do użycia rozwiązanie Graylog cloud, które zapewnia wiele korzyści, w tym:

  • Nieograniczony i dedykowany serwer e-mail SMTP w zestawie.
  • Bezproblemowe aktualizacje za pomocą jednego kliknięcia.
  • Dostosowywalna nazwa domeny zabezpieczona za pomocą HTTPS (na przykład, https://logs.twoja-firma.com).
  • Optymalna wydajność i solidne zabezpieczenia dzięki prywatnej i dedykowanej VM.

Oszczędzaj czas i upraszczaj swoje życie: wystarczy 5 minut, aby wypróbować rozwiązanie Graylog cloud hosting Stackhero!

Problem ten wynika z funkcji dynamicznego mapowania w OpenSearch. Dynamic mapping automatycznie określa typ danych każdego pola na podstawie pierwszego dokumentu zapisanego w indeksie. Po ustaleniu typ danych jest "zablokowany" i każde kolejne dokumenty, w których to pole ma inny typ danych, są odrzucane, co skutkuje błędem mapper parsing exception.

Gdy tworzony jest nowy indeks, pierwszy dokument definiuje mapowanie indeksu. Na przykład, jeśli dokument zawiera pole "level" z wartością 3 (wartość numeryczna), OpenSearch ustawia typ danych pola "level" na "long" (typ liczbowy). Jeśli późniejszy dokument wysłany do Graylog zawiera pole "level" ustawione na "error" (typ tekstowy), zostanie on odrzucony, ponieważ typ danych nie zgadza się z pierwotnie ustalonym typem. Powoduje to błąd mapper_parsing_exception z powodem failed to parse field [level] of type [long] in document with id 'xxx'.

Problem ten może wystąpić dla dowolnego pola, jeśli typy danych są niespójne pomiędzy dokumentami.