我正在尝试为变量名称标识ElasticSearch URL的各个“部分”。例如,使用以下网址:
https://elastic:[email protected]:9243/proexc.write/_settings
下面是URL各个部分的准确分解吗?
ES_FULL_URL = f'{ES_PROTOCOL}://{ES_USER}:{ES_PASS}@{ES_ROOT_URI}:{ES_PORT}/{ES_INDEX}/{ES_PATH}'
您提供的URL的大部分分解都是正确的,除了最后一个因为_setting
不是ES_PATH
及其settings
API的端点,它也可以用于群集或用于索引) ,有关official ES doc的更多信息。
由于您没有解释从何处获得此URL以及这样做的目的,因此很难给出具体的答案,而我的答案是通用的,并且基于看到了几个ES链接和API。
您还可以解析索引名称,看看它是否有效,并代表this帖子中提到的索引名称。
我建议您看一下Elastic Common Schema指定的URL字段:https://www.elastic.co/guide/en/ecs/current/ecs-url.html。我建议采用该建议,因为该建议已由大量领域专家和工程师进行了全面验证。
这里是URL字段映射的链接:https://github.com/elastic/ecs/blob/master/schemas/url.yml