跳转到主要内容

Elastic 1.x插件用于mongo-connector

项目描述

View build status

注意:这是Elasticsearch 1.x的文档管理器。如果您想使用Elasticsearch >= 2.0,请安装elastic2-doc-manager。

入门

此软件包是针对Elasticsearch版本1.x的文档管理器,用于mongo-connector。有关使用Elasticsearch运行mongo-connector的信息,请参阅MongoConnector与Elasticsearch的使用维基页面。

安装

elastic-doc-manager的安装取决于您针对哪个版本的Elasticsearch。

Elasticsearch 1.x

对于与Elasticsearch 1.x服务器一起使用,请使用pip进行安装

pip install 'elastic-doc-manager'

Amazon Elasticsearch 1.x服务

要用于Amazon Elasticsearch服务,您必须安装所需的AWS依赖项以及Elasticsearch版本

pip install 'elastic-doc-manager[aws]'

Elasticsearch >= 2.0

这是仅适用于 Elasticsearch 1.x 的文档管理器。如果您想针对 2.0 或更高版本,请安装 elastic2-doc-manager

开发

您还可以手动安装 elastic-doc-manager 的开发版本。

git clone https://github.com/mongodb-labs/elastic-doc-manager.git
pip install -e './elastic-doc-manager'

您可能需要以 sudo 的方式运行 pip,具体取决于您安装的位置和您的权限。

注意:在 mongo-connector 版本 2.2.2 之前,弹性文档管理器是打包在 mongo-connector 中的,并且仅支持 Elasticsearch 1.x。

运行测试

要求

  1. Elastic 1.x 文档管理器 Github 仓库的副本

    测试不包括在 PyPI 的包中,只能通过在 Github 上克隆此仓库来获取

    git clone https://github.com/mongodb-labs/elastic-doc-manager
  2. 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。

  3. 环境变量

    有几个影响测试的环境变量。这些是

    • DB_USER 是启用身份验证时运行测试所使用的用户名。

    • DB_PASSWORD 是上面的密码。

    • MONGO_PORT 是运行 MongoDB 的起始端口。未来的节点将在依次增加的端口上启动。

    • ES_HOST 是 Elasticsearch 运行的主机名。

    • ES_PORT 是 Elasticsearch 运行的端口。

    • MO_ADDRESS 是用于 Mongo Orchestration 的地址(即主机名:端口)

所有测试都位于 tests 目录中。

在命令行上运行测试

虽然测试会自动设置和拆除 MongoDB 集群,但请确保在完整测试运行之前启动 Elastic!

您可以使用一个命令运行所有测试(这适用于所有支持的 Python 版本)

python setup.py test

此外,您可以对要运行的测试更加选择性地进行选择(仅适用于 Python > 2.6)!例如,如果您只想运行弹性文档管理器测试

python -m unittest tests.test_elastic_doc_manager

错误消息

一些测试旨在生成大量的 ERROR 级别日志消息,特别是回滚测试。mongo-connector 记录它在 oplog 中迭代游标时遇到的异常,因此在测试中拆分 MongoDB 集群时,我们在控制台输出中看到这些消息。只要所有测试都以 OK 消息通过,就没有问题。

支持

AWSAWS云计算和安全赞助商DatadogDatadog监控FastlyFastlyCDNGoogleGoogle下载分析MicrosoftMicrosoftPSF赞助商PingdomPingdom监控SentrySentry错误日志StatusPageStatusPage状态页面