Elasticsearch客户端构建器,包括模式验证
项目描述
https://es-client.readthedocs.io/
您可能会好奇这个项目为何存在,因为乍一看它似乎并没有让使用elasticsearch8 Python模块建立客户端连接变得更简单。我需要能够重用我正在使用的更复杂的模式验证部分,即
仅主检测
Elasticsearch版本检查和验证,以及跳过此操作的选项。
配置值验证,包括SSL证书的文件路径,这意味着
不接受未知密钥或不可接受的参数值
建立可接受的值和范围(如果已知)——并且如果需要,可以轻松修改。
因此,如果您不需要这些功能,那么这个库可能不是您要找的。如果您需要这些功能,那么您来对了地方。
示例用法
from es_client import Builder config = { 'elasticsearch': { 'client': { 'hosts': 'https://10.0.0.123:9200', 'ca_certs': '/etc/elasticsearch/certs/ca.crt', 'request_timeout': 60, }, 'other_settings': { 'master_only': false, 'username': 'joe_user', 'password': 'password', } }, 'logging': { 'loglevel': 'INFO', 'logfile': '/path/to/file.log', 'logformat': 'default', } } builder = Builder(configdict=config) try: builder.connect() except: # Do exception handling here... client = builder.client
此外,您还可以从YAML配置文件中读取
--- elasticsearch: client: hosts: https://10.0.0.123:9200 ca_certs: /etc/elasticsearch/certs/ca.crt request_timeout: 60 other_settings: master_only: false username: joe_user password: password logging: loglevel: INFO logfile: /path/to/file.log logformat: default
from es_client import Builder builder = Builder(configfile='/path/to/es_client.yml') try: builder.connect() except: # Do exception handling here... client = builder.client
这里也适用相同的模式验证。
项目详情
下载文件
下载适合您平台文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分发
es_client-8.15.2.tar.gz (37.2 kB 查看哈希值)
构建分发
es_client-8.15.2-py3-none-any.whl (34.5 kB 查看哈希值)