mongo-connector的Solr插件
项目描述
入门
安装
本包是mongo-connector的文档管理器。
开始使用最简单的方法是同时安装solr-doc-manager和mongo-connector,使用pip
pip install mongo-connector[solr]
如果您已经安装了mongo-connector,可以通过以下方式安装solr-doc-manager
pip install solr-doc-manager
您还可以手动安装solr-doc-manager的开发版本
git clone https://github.com/mongodb-labs/solr-doc-manager cd solr-doc-manager python setup.py install
您可能需要使用sudo运行python setup.py install,具体取决于您安装mongo-connector的位置以及您拥有的权限。
有关使用Solr运行mongo-connector的信息,请参阅https://github.com/mongodb-labs/mongo-connector/wiki/Usage%20with%20Solr
运行测试
要求
solr-doc-manager 的 Github 仓库副本
测试不包括在 PyPI 的包中,只能通过在 Github 上克隆此仓库来获取
git clone https://github.com/mongodb-labs/solr-doc-manager
Solr
集成测试需要 Solr 运行。为了设置和运行 Solr
curl -O http://archive.apache.org/dist/lucene/solr/4.9.1/solr-4.9.1.tgz tar -zxf solr-4.9.1.tgz cp mongo_connector/doc_managers/schema.xml solr-4.9.1/example/solr/collection1/conf/ cd solr-4.9.1/example/ && java -Djetty.port=8983 -Dsolr.solr.home=solr -jar start.jar > /dev/null 2>&1 &Solr 将在 http://localhost:8983/solr 运行
Mongo Orchestration
Mongo Connector 使用名为 Mongo Orchestration 的另一个工具在其自身上运行 MongoDB。如果您运行 python setup.py test,则此包应自动安装,但在运行测试之前,仍需要手动启动 Mongo Orchestration 服务器
mongo-orchestration --bind 127.0.0.1 --config orchestration.config start将启动服务器。要停止它
mongo-orchestration --bind 127.0.0.1 --config orchestration.config stop应在 orchestration.config 中设置 MongoDB 服务器的位置。有关如何使用 Mongo Orchestration 的更多信息,或如何使用不同的参数使用它,请参阅 Mongo-Orchestration README。
环境变量
有一些影响测试的环境变量。这些是
DB_USER 是启用身份验证时运行测试时使用的用户名。
DB_PASSWORD 是上面的密码。
MONGO_PORT 是运行 MongoDB 的起始端口。后续节点将在递增的端口上启动。
SOLR_URL 是 Solr 运行的地址。
MO_ADDRESS 是用于 Mongo Orchestration 的地址(即主机名:端口)
所有测试都位于 tests 目录中。
在命令行上运行测试
虽然测试会自动设置和拆除 MongoDB 集群,但请确保在完整测试运行之前启动 Solr!
您可以使用一条命令运行所有测试(这在所有支持的 Python 版本中都有效)
python setup.py test
此外,您可以选择运行哪些测试(仅在 Python > 2.6 时有效)!例如,如果您只想运行 Solr 文档管理器测试
python -m unittest tests.test_solr_doc_manager
错误消息
一些测试旨在生成大量的 ERROR-级别日志消息,特别是回滚测试。mongo-connector 记录它在 oplog 中迭代游标时遇到的异常,因此我们在测试中拆分 MongoDB 集群时会在控制台输出中看到这些消息。只要所有测试都通过一个 OK 消息,就一切正常。