Эластичный поиск поиск по индексу

Доброе утро,

Я хотел бы помочь с FOSElastcaBundle. У меня установлен эластичный поиск с кибаной и logstash. У меня есть индекс с именем openvpn, и есть _type rsyslog-openvpn. Я хотел бы получить некоторую запись для элемента, где fiels common_name равно PLPM0046.

Я установил FOSElasticaBundle, но я не могу заставить его работать.

Вот моя конфигурация: config.yml

fos_elastica:
    clients:
        default: { host: ip.to.server.elastic, port: 9200 }
    indexes:
        openvpn:
            client: default
            types:
                rsyslog-openvpn:
                    mappings:
                        common_name: ~
                        logsource: ~

действие

$finder = $this->container->get('fos_elastica.index.openvpn.rsyslog-openvpn');
$results = $finder->find('PLPM0046');

Я сделал, как указано в документации, но я получаю следующие ошибки:

You have requested a non-existent service "fos_elastica.index.openvpn.rsyslog-openvpn".

Я кто-нибудь знаю, как этот комплект работает, спасибо

1 ответ

Решение

Насколько я могу прочитать мой рабочий код, вы можете получить искатель, как:

$finder = $this->container->get('fos_elastica.finder.openvpn.rsyslog-openvpn');

дополнительно добавить finder: ~ к вашему индексу

    indexes:
        openvpn:
            client: default
            finder: ~
            types:
                rsyslog-openvpn:
                    mappings:
                        ...
                    persistence:
                        finder: ~
Другие вопросы по тегам