【发布时间】:2021-12-17 14:31:38
【问题描述】:
我在 IBM DB2 数据库中有一组数据,需要用作度量所需的数据。为了完成这项工作,我正在尝试从 SQL 中使用 python 的导出普罗米修斯指标 - 参考这里:https://pypi.org/project/query-exporter/
为此,我尝试使用 pip3 install ibm_db 安装 ibm_db 模块
当我在 cmdline 中列出我拥有的模块时,我看到它可用:
下面是我的 config.yaml,它将建立连接以轮询数据库中的数据,以便将指标导出到 Prometheus。
在上面对于dsn,我也试过了:
db2://user:pass@host[:port]/database , db2+ibm_db://user:pass@host[:port]/database
但最终得到了相同的结果,如下所示。
现在我正在尝试使用以下命令执行查询导出器模块:
query-exporter ~/py-query-exporter/config.yaml
但最终出现以下错误:
有人可以帮忙看看为什么 ibm_db 模块没有被识别吗? - 我不知道这个问题在不同的数据库模块中是否更广泛另外,我的python版本是:
vijayleom@Vijays-MacBook-Pro ~ % python -V
Python 3.8.11
【问题讨论】:
-
您使用的是哪个 dbms?
-
尝试连接到 IBM DB2
-
(请编辑您的问题,不要使用 cmets 添加应该在问题中的事实)。 MacOS 的版本是多少?您是否可以使用普通 python
import ibm_db后跟一个带有有效连接字符串的连接(只是为了定位问题区域)? -
按建议添加到问题本身。 Mac 版本为 11.5.2(BigSur OS)。不,即使在那里它也失败了。
>>> import ibm_db Traceback (most recent call last): File "<stdin>", line 1, in <module> ModuleNotFoundError: No module named 'ibm_db' -
感谢对这个问题投了反对票的人,请注意这是一个有效的场景,任何人都可能发生这种情况。当有人进来进行类似搜索以找到答案时,这可能会产生误导。谢谢!
标签: python python-3.x pip db2 prometheus