当前位置: 首页 > 面试题库 >

无法运行mongo-connector

楮庆
2023-03-14
问题内容

我已经在mongodb服务器中安装了mongo-connector。

我通过发出命令来执行

mongo-connector -m [remote mongo server IP]:[remote mongo server port] -t [elastic search server IP]:[elastic search server Port]  -d elastic_doc_manager.py

我还尝试了此操作,因为mongo在具有默认端口的同一服务器上运行。

mongo-connector -t [elastic search server IP]:[elastic search server Port]  -d elastic_doc_manager.py

我遇到错误

Traceback (most recent call last):
  File "/usr/local/bin/mongo-connector", line 9, in <module>
    load_entry_point('mongo-connector==2.3.dev0', 'console_scripts', 'mongo-connector')()

  File "/usr/local/lib/python2.7/dist-packages/mongo_connector-2.3.dev0-py2.7.egg/mongo_connector/util.py", line 85, in wrapped
    func(*args, **kwargs)

  File "/usr/local/lib/python2.7/dist-packages/mongo_connector-2.3.dev0-py2.7.egg/mongo_connector/connector.py", line 1037, in main
    conf.parse_args()

  File "/usr/local/lib/python2.7/dist-packages/mongo_connector-2.3.dev0-py2.7.egg/mongo_connector/config.py", line 118, in parse_args
    option, dict((k, values.get(k)) for k in option.cli_names))

  File "/usr/local/lib/python2.7/dist-packages/mongo_connector-2.3.dev0-py2.7.egg/mongo_connector/connector.py", line 820, in apply_doc_managers
    module = import_dm_by_name(dm['docManager'])

  File "/usr/local/lib/python2.7/dist-packages/mongo_connector-2.3.dev0-py2.7.egg/mongo_connector/connector.py", line 810, in import_dm_by_name
    "Could not import %s." % full_name)

**mongo_connector.errors.InvalidConfiguration: Could not import mongo_connector.doc_managers.elastic_doc_manager.py.**

注意:我正在使用python2.7和mongo-connector 2.3

elasticsearch服务器是2.2

有什么建议 ?

[edit] 应用Val的建议后:

2016-02-29 19:56:59,519 [CRITICAL] mongo_connector.oplog_manager:549 - Exception during collection dump

Traceback (most recent call last):

File “/usr/local/lib/python2.7/dist-packages/mongo_connector-2.3.dev0-py2.7.egg/mongo_connector/oplog_manager.py”, line 501, in do_dump

upsert_all(dm)

File “/usr/local/lib/python2.7/dist-packages/mongo_connector-2.3.dev0-py2.7.egg/mongo_connector/oplog_manager.py”, line 485, in upsert_all dm.bulk_upsert(docs_to_dump(namespace), mapped_ns, long_ts)

File “/usr/local/lib/python2.7/dist-packages/mongo_connector-2.3.dev0-py2.7.egg/mongo_connector/util.py”, line 32, in wrapped

return f(args, *kwargs)

File “/usr/local/lib/python2.7/dist-packages/mongo_connector-2.3.dev0-py2.7.egg/mongo_connector/doc_managers/elastic_doc_manager.py”, line 190, in bulk_upsert

for ok, resp in responses:

File “/usr/local/lib/python2.7/dist-packages/elasticsearch-1.9.0-py2.7.egg/elasticsearch/helpers/init.py”, line 160, in streaming_bulk

for result in _process_bulk_chunk(client, bulk_actions, raise_on_exception, raise_on_error, **kwargs):

File “/usr/local/lib/python2.7/dist-packages/elasticsearch-1.9.0-py2.7.egg/elasticsearch/helpers/init.py”, line 132, in _process_bulk_chunk

raise BulkIndexError(‘%i document(s) failed to index.’ % len(errors), errors)

BulkIndexError: (u‘2 document(s) failed to index.’,..document_class=dict, tz_aware=False, connect=True, replicaset=u’mss’), u’local’), u’oplog.rs’)

2016-02-29 19:56:59,835 [ERROR] mongo_connector.connector:302 - MongoConnector: OplogThread unexpectedly stopped! Shutting down

嗨,瓦尔,

我连接了另一个mongodb实例,该实例只有一个数据库,并且具有一个包含30,000+条记录的集合,并且能够成功执行它。先前的mongodb集合有多​​个数据库(大约7个),内部有多个集合(每个数据库大约5到15个),并且所有集合中都有大量文档(范围从500到50,000)。

Mongo连接器是否由于mongo数据库中存在大量数据而发生故障?

我还有其他疑问

一个。是否可以仅对位于不同数据库中的mongodb中的特定集合进行索引编制?我只想索引特定的集合(而不是整个数据库)。我怎样才能做到这一点?

b。在elasticsearch中,我可以看到一个集合的重复索引。第一个是数据库名称(如预期的那样),另一个是数据库名称mongodb_meta,它们都具有相同的数据,如果我要更改集合,则两个集合中都将进行更新。

C。是否可以配置输出索引名称或任何其他参数?


问题答案:

我认为唯一的问题是您.py在文档管理器上具有扩展名(在mongo-connector 2.0之前需要它),您只需要删除它即可:

mongo-connector -m [remote mongo server IP]:[remote mongo server port] -t [elastic search server IP]:[elastic search server Port]  -d elastic_doc_manager


 类似资料:
  • 我有一个推送到GitHub的SpringBoot项目,其中我有一些半集成测试,其中我使用嵌入式mongo作为数据库。我的构建在本地是成功的,测试正在通过,但是在运行“MavenJava”GitHub操作时,它会失败,原因如下:

  • 我在Windows上安装了Spark,我无法启动。当我输入时,我得到以下错误: Python 3.6.0 | Anaconda custom(64位)|(默认值,2016年12月23日,11:57:41)[MSC v.1900 64位(AMD64)]在win32上键入“帮助”、“版权”、“信用”或“许可证”以了解更多信息。回溯(最近一次调用):文件“c:\Spark\bin..\python\py

  • 问题内容: 这是我的docker-compose文件: 这是我的entrypoint_mongo.sh 我面临的问题是:mongo容器正在成功执行所有步骤,但是退出时的状态为0。 问题答案: 您的启动脚本不应初始化或监视副本集。这些应该是手动任务。 您应该记住: 严格来说,启动副本集是一次性的工作;一旦启动,MongoDB服务在重新启动后将继续成为同一副本集的一部分。 副本集通常包含多个应可互换的

  • 我知道这个问题已经张贴,但我没有找到任何可以帮助我解决我的问题。我想用AnimeJS在我的网站上创建一些动画,但我无法运行最简单的动画,即使是anime.js文档和示例中的动画。 我找到了有相同问题的人,并通过在文档加载后运行代码解决了这个问题,但在我的例子中,这似乎不是解决方案n。我使用npm安装了anime.js,在我的页面上使用的无非是这个和Jquery。下面是文档示例的代码: null n

  • 系统环境: JVM 11.0.6-打开 Ubuntu 18.04 SDKMAN 5.8.1+484 等级6.1 Chrome版本81.0.4044.138 Chrome驱动程序3.141.59 要运行的代码: 下午4:52:09:正在执行任务“Runner.Main()”... 任务:CompileJava任务:ProcessResources无源任务:类 任务:runner.main()错误:未

  • 运行start.jar时,出现以下错误: 谢谢,山姆