Существует ряд причин, по которым поисковый запрос может быть отклонен кластером.
Как правило, эти причины делятся на 2 основные группы:
- Проблемы, связанные с производительностью / рабочей нагрузкой
- Проблемы, связанные с отображением или синтаксисом
Проблемы, связанные с производительностью / рабочей нагрузкой
Вот некоторые из проблем, из-за которых поисковые запросы могут быть отклонены:
- 403 Запрос отклонен из-за слишком большого количества запросов
- 400 Ошибки автоматического выключателя
- 400 Ошибки заполнения очереди
Как правило, следует просмотреть данные мониторинга, чтобы выяснить, почему кластер OpenSearch не справляется с текущей нагрузкой. Имейте в виду, что первопричиной этих ошибок может быть нечто совершенно иное, чем конкретный отправленный запрос.
В этом случае можно просто повторить команду в более позднее время, когда кластер не так загружен.
Как исправить
- Ошибки, связанные с дросселированием запроса, см. на сайте: https://g-soft.info/opensearch/12062/opensearch-vysokaya-zagruzka-protsessora/
- Об ошибках автоматического выключателя см.: https://g-soft.info/opensearch/12996/opensearch-avtomaticheskiy-vyklyuchatel-ispolzovanie-primery-rasprostranennye-problemy/
- Об ошибках отклонения очереди см: https://g-soft.info/elasticsearch/12998/ochered-otklonennyh-zaprosov-elasticsearch-prichiny-i-kak-ih-reshit/
Проблемы, связанные с отображением или синтаксисом
Одна из проблем, из-за которой поисковые запросы могут быть отклонены, - это: 400 Parsing Exception
Эта проблема возникает из-за специфики отправляемого запроса и не подлежит восстановлению.
Как исправить
Обычно это результат неправильной структуры или терминологии в запросе. В частности, вам следует проверить, какую версию OpenSearch вы используете, и убедиться, что синтаксис запроса корректен для этой версии.