TypeError: __init__() got an unexpected keyword argument ‘transport_options‘

在较新版本的 Elasticsearch Python 客户端中,确实没有名为 transport_options 的参数。要设置传输选项,需要使用 transport_class 参数来创建自定义传输类,并在传输类中设置选项。

以下是一个示例,展示如何创建自定义传输类以设置传输选项:

python 复制代码
from elasticsearch import Elasticsearch, Transport
from elasticsearch.connection import RequestsHttpConnection

# 创建自定义传输类
class CustomTransport(Transport):
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        # 设置传输选项
        self.max_retries = 3  # 例如,设置最大重试次数
        self.retry_on_timeout = True  # 设置超时时是否重试

# 创建 Elasticsearch 客户端并使用自定义传输类
es = Elasticsearch(
    hosts=['http://localhost:9200'],  # 替换为您的 Elasticsearch 主机地址和端口
    transport_class=CustomTransport
)

# 使用 create 方法创建索引
try:
    result = es.indices.create(index='news', ignore=400)
    print(result)
except Exception as e:
    print(f"An error occurred: {e}")

在这个示例中,我们创建了一个名为 CustomTransport 的自定义传输类,并在其中设置了传输选项。然后,我们在初始化 Elasticsearch 客户端时,通过 transport_class 参数传递了这个自定义传输类。

请根据您的需求来调整传输选项的设置,并确保在自定义传输类中进行适当的配置。这样,您可以自定义传输行为以满足您的要求。

相关推荐
Elasticsearch16 小时前
使用 NVIDIA cuVS 在 Elasticsearch 中实现 GPU 加速的向量索引:在 10 分钟内处理 1.38 亿个向量
elasticsearch
Flynt16 小时前
"MySQL搜不动就上ES"?我先在50万行数据上测了它自带的ngram全文索引
mysql·elasticsearch·搜索引擎
柒和远方17 小时前
混合检索 RAG 全链路:查询增强、双路召回与重排——向量库和搜索引擎联手补齐召回
elasticsearch·langchain·llm
Elasticsearch17 小时前
用自然语言分析跟踪数据,询问 Elastic Agent Builder 为什么运行缓慢
elasticsearch
Elasticsearch17 小时前
Elastic 中的 Temporal Cloud 可观测性:50+ 个指标,无需采集器
elasticsearch
阿里云大数据AI技术17 小时前
云栖2026|从“找到答案”到“完成任务”:阿里云以 Agentic Search 重塑 AI 搜索
大数据·人工智能·elasticsearch
Elasticsearch17 小时前
遥测策略:在运行时更改 OpenTelemetry 采样率和日志级别,无需重启
elasticsearch
Elasticsearch17 小时前
Elastic 宣布 Serverless 上的跨项目搜索正式发布,让团队无需移动任何数据即可跨所有关联项目进行查询
elasticsearch
Elasticsearch17 小时前
并非每条日志都值得保留 90 天:Elastic Streams 中按数据流设置保留期限
elasticsearch
Elasticsearch6 天前
Elastic Observability 的跨项目搜索:通过一个查询搜索所有关联项目
elasticsearch