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 查看哈希值)