Ich bin 3.Wie Bindestrich-Zeichen in Python zu entkommen Elasticsearch
Ich habe eine Abfrage, um die grundlegende Elasticsearch Bibliothek in Python mit:
query = {
"query": {
"bool": {
"must": [{ "term": {"hostname": '"hal-pc"' } }]
}
}
}
Das nenne ich mit: page = es.search(index = index_name, body=query, search_type='scan', scroll='2m')
Aber ich bekomme keine Ergebnisse. Ich kann andere Felder abfragen, so dass ich weiß, dass meine Abfrage funktioniert, aber wenn ich die Suche nach einem Feld mit einem Bindestrich im Wert hinzufüge, kann ich nichts finden. Wie kann ich diesem Charakter entkommen? Ich weiß, dass Sie mit normalen ES-Abfragen eine Nachricht senden können, um Ihr ES so zu konfigurieren, dass es auf bestimmte Arten auf bestimmte Zeichen reagiert, aber ich weiß nicht, wie ich das in Python machen soll.
Wird das Feld 'hostname' in elasticsearch mapping analysiert? –
Ich weiß nicht, was das bedeutet - ich pflege das ES nicht. Ich habe Zugang zu einem Kibana und es erscheint als ein Textfeld, wenn das hilft. –