Spec-Zone.ru › Ansible

community.mongodb.mongodb поиск – поиск информации из MongoDB

Примечание

Этот плагин поиска входит в коллекцию community.mongodb (версия 1.7.7).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.

Чтобы установить её, используйте: ansible-galaxy collection install community.mongodb. Для использования этого плагина поиска необходимы дополнительные требования, см. Требования для получения подробностей.

Для использования в книге задач укажите: community.mongodb.mongodb.

Новое в community.mongodb 1.0.0

  • Описание
  • Требования
  • Параметры ключевых слов
  • Примечания
  • Примеры
  • Значение возврата

Описание

  • Поиск ``MongoDB`` выполняет команду *find()* для заданной *коллекции* на заданном сервере *MongoDB*.
  • Результат — список jsons, немного отличающийся от того, что возвращает PyMongo. В частности, *временные метки* преобразуются в целочисленные значения эпохи.

Требования

Ниже перечислены требования к локальному контрольному узлу, на котором выполняется этот поиск.

  • pymongo >= 2.4 (библиотека python)

Параметры ключевых слов

Это описание параметров ключевых слов поиска. Это значения key1=value1, key2=value2 и так далее в следующих примерах: lookup('community.mongodb.mongodb', key1=value1, key2=value2, ...) и query('community.mongodb.mongodb', key1=value1, key2=value2, ...)

Параметр

Комментарии

collection

строка / обязательно

Имя коллекции, для которой будет выполнен запрос

connect_string

строка

Может быть любой допустимой строкой подключения к MongoDB, поддерживающей аутентификацию, реплицированные наборы и т. д.

Дополнительная информация по адресу https://docs.mongodb.org/manual/reference/connection-string/

По умолчанию: "mongodb://localhost/"

database

строка / обязательно

Имя базы данных, для которой будет выполнен запрос

extra_connection_parameters

словарь

Дополнительные параметры подключения, которые должны быть отправлены в pymongo.MongoClient

Обратитесь к примеру, чтобы узнать, как подключиться к mongo с помощью сертификата SSL.

Все возможные параметры приведены здесь: https://pymongo.readthedocs.io/en/stable/api/pymongo/mongo_client.html#pymongo.mongo_client.MongoClient

По умолчанию: {}

filter

словарь

Критерии вывода

По умолчанию: {}

limit

целое число

Количество результатов, которые должны быть показаны

projection

словарь

Поля, которые вы хотите получить

По умолчанию: {}

skip

целое число

Количество результатов, которые должны быть пропущены

sort

список / элементы=список

Правила сортировки.

Используйте строки ASCENDING и DESCENDING для задания порядка.

См. пример для получения дополнительной информации.

По умолчанию: []

Примечания

Примечание

  • См. https://pymongo.readthedocs.io/en/stable/api/pymongo/collection.html#pymongo.collection.Collection.find для получения дополнительной информации.

Примеры

- hosts: localhost
  gather_facts: false
  vars:
    mongodb_parameters:
      #mandatory parameters
      database: 'local'
      collection: "startup_log"
      #optional
      connection_string: "mongodb://localhost/"
      # connection_string: "mongodb://username:password@my.server.com:27017/"
      # extra_connection_parameters: { "ssl" : True , "ssl_certfile": /etc/self_signed_certificate.pem" }
      #optional query  parameters, we accept any parameter from the normal mongodb query.
      # filter:  { "hostname": "u18" }
      projection: { "pid": True    , "_id" : False , "hostname" : True }
      skip: 0
      limit: 1
      sort:  [ [ "startTime" , "ASCENDING" ] , [ "age", "DESCENDING" ] ]
  tasks:
    - debug: msg="The PID from MongoDB is {{ lookup('mongodb', mongodb_parameters ).pid }}"

    - debug: msg="The HostName from the MongoDB server is {{ lookup('mongodb', mongodb_parameters ).hostname }}"

    - debug: msg="Mongo DB is stored at {{ lookup('mongodb', mongodb_parameters_inline )}}"
      vars:
        mongodb_parameters_inline:
          database: 'local'
          collection: "startup_log"
          connection_string: "mongodb://localhost/"
          limit: 1
          projection: { "cmdline.storage": True }

      # lookup syntax, does the same as below
    - debug: msg="The hostname is {{ item.hostname }} and the pid is {{ item.pid }}"
      loop: "{{ lookup('mongodb', mongodb_parameters, wantlist=True) }}"

      # query syntax, does the same as above
    - debug: msg="The hostname is {{ item.hostname }} and the pid is {{ item.pid }}"
      loop: "{{ query('mongodb', mongodb_parameters) }}"

    - name: "Raw output from the mongodb lookup (a json with pid and hostname )"
      debug: msg="{{ lookup('mongodb', mongodb_parameters) }}"

    - name: "Yet another mongodb query, now with the parameters on the task itself"
      debug: msg="pid={{item.pid}} hostname={{item.hostname}} version={{ item.buildinfo.version }}"
      with_mongodb:
        - database: 'local'
          collection: "startup_log"
          connection_string: "mongodb://localhost/"
          limit: 1
          projection: { "pid": True    , "hostname": True , "buildinfo.version": True }

    # Please notice this specific query may result more than one result. This is expected
    - name: "Shows the whole output from mongodb"
      debug: msg="{{ item }}"
      with_mongodb:
        - database: 'local'
          collection: "startup_log"
          connection_string: "mongodb://localhost/"

Значение возврата

Ключ

Описание

Значение возврата

список / элементы=строка

список JSON с результатами запроса к MongoDB.

Возвращено: успех

Авторы

  • Marcos Diez (@marcosdiez)

Подсказка

Записи конфигурации для каждого типа записи имеют порядок приоритетов от низкого к высокому. Например, переменная, расположенная ниже в списке, переопределяет переменную, расположенную выше.

Ссылки на коллекции

  • Система отслеживания задач
  • Репозиторий (источники)

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/mongodb/mongodb_lookup.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API