apache-airflow-providers-elasticsearch

更新日志

6.0.0

注意

此提供程序版本仅适用于 Airflow 2.9+,如Apache Airflow 提供程序支持策略中所述。

重大更改

警告

所有已弃用的类、参数和功能都已从 ElasticSearch 提供程序包中删除。引入了以下重大更改

  • 钩子
    • 移除 airflow.providers.elasticsearch.hooks.elasticsearch.ElasticsearchHook。请改用 airflow.providers.elasticsearch.hooks.elasticsearch.ElasticsearchSQLHook

  • 日志
    • ElasticsearchTaskHandler 中删除了 log_id_template 参数。

    • ElasticsearchTaskHandler 中删除了 retry_timeout 参数。请改用 retry_on_timeout

  • 移除 Elasticsearch 中的 提供程序 弃用 (#44629)

其他

  • 移除 AIRFLOW_V_2_9_PLUS 引用 (#44987)

  • 提供程序 中的 最低 Airflow 版本 提升至 Airflow 2.9.0 (#44956)

  • 提供程序 一致地 检查 Airflow 版本 (#44686)

  • 更新 多个 提供程序 文档 中的 DAG 示例 链接 (#44034)

  • 整个 代码库中 execution_date 重命名为 logical_date (#43902)

5.5.3

其他

  • DbApiHook、 PrestoHook TrinoHook 添加 分号 剥离 的支持 (#41916)

5.5.2

其他

  • airflow 2.8.0 更高版本中 删除了 任务 上下文 日志记录 条件检查 (#42764)

5.5.1

Bug 修复

  • 修复 ElasticSearch SQLClient 弃用 警告 (#41871)

其他

  • DbApiHook 泛化 连接 缓存 提高 性能 (#40751)

  • 提供程序 文件 任务 处理程序 中的 filename 模板 参数 向后 兼容性 支持 (#41633)

  • 删除 已弃用的 日志 处理程序 参数 filename_template (#41552)

5.5.0

注意

此提供程序版本仅适用于 Airflow 2.8+,如Apache Airflow 提供程序支持策略中所述。

Bug 修复

  • 修复 'ElasticsearchSQLHook' 'AttributeError: __enter__' 而失败 (#41537)

其他

  • 提供程序 中的 最低 Airflow 版本 提升至 Airflow 2.8.0 (#41396)

5.4.2

其他

  • 清理 剩余的 getattr 连接 DbApiHook (#40665)

5.4.1

Bug 修复

  • 使 弹性 搜索 index_pattern 可配置 (#38423)

其他

  • 更快 'airflow_version' 导入 (#39552)

  • 简化 'airflow_version' 导入 (#39497)

  • 调度程序 处理 try_number 递增 (#39336)

5.4.0

注意

此提供程序版本仅适用于 Airflow 2.7+,如Apache Airflow 提供程序支持策略中所述。

其他

  • 提供程序 中的 最低 Airflow 版本 提升至 Airflow 2.7.0 (#39240)

5.3.4

其他

  • TaskInstance 上为 'task' 添加 默认值 / 修复 TaskInstancePydantic 上的 attrs (#37854)

5.3.3

其他

  • 避免 使用 'pendulum.from_timestamp' (#37160)

  • feat: 所有 类、 函数、 方法 弃用 切换为 装饰器 (#36876)

5.3.2

Bug 修复

  • 修复 提供程序 warnings.warn stacklevel (#36831)

5.3.1

其他

  • airflow 最低 版本 提升至 2.6 时,删除 es 任务 处理程序 中的 getattr (#36431)

5.3.0

注意

此提供程序版本仅适用于 Airflow 2.6+,如Apache Airflow 提供程序支持策略中所述。

其他

  • 提供程序 中的 最低 Airflow 版本 提升至 Airflow 2.6.0 (#36017)

  • 清理 elasticsearch<8 的代码 (#35707)

5.2.0

功能

  • 添加 任务 上下文 日志记录 功能 以允许将 消息 转发到 任务 日志 (#32646)

  • 扩展 任务 上下文 日志记录 支持 ,以便使用 Elasticsearch 进行远程 日志记录 (#32977)

Bug 修复

  • 更新 es 读取 查询 以不使用 body (#34792)

  • 在父级而非自身上检查 attr ,关于 TaskContextLogger set_context (#35780)

其他

  • 移除 DbApiHook 的向后兼容 继承 (#35754)

5.1.1

其他

  • 当没有 ElasticSearch 日志时,使用 None 而不是空数据 结构 (#34793)

5.1.0

注意

Apache Airflow 提供程序支持策略 中所述,此版本的提供程序仅适用于 Airflow 2.5+。

注意

在 PR #34790 中,我们从 es_read 方法中移除了未使用的参数 metadata。我们确定 es_read 是一个内部方法,因此不受向后兼容的约束,所以我们没有为此提供程序升级主版本。为了更清楚地表明这是一个内部方法,我们将其重命名为带有下划线前缀的 _es_read

其他

  • 提升 提供程序的 最低 Airflow 版本 (#34728)

  • es_read 中移除未使用的参数 metadata 并使其明确为私有 (#34790)

  • 提高 日志结束判断的清晰度 (#34788)

  • ElasticSearch 提供程序中用 contextlib.suppress 替换 try/except/pass (#34251)

5.0.2

Bug 修复

  • 确保只有有效的 elasticsearch 键被传递给 handler (#34119)

其他

  • Airflow 提供程序中用 解包替换 序列 连接 (#33933)

  • 通过将一些模块放入类型检查块中,改进 Airflow 提供程序中的模块导入 (#33754)

  • 在提供程序中使用字面 dict 而不是调用 dict() (#33761)

  • 删除不必要的并使用 list 在提供程序中重写它 (#33763)

  • Airflow 提供程序中使用 f-string 而不是 (#33752)

5.0.1

注意

此版本增加了对 elasticsearch 8 的支持

Bug 修复

  • elasticsearch<8 添加向后兼容性 (#33281)

  • 修复 Python 3.9+ 上的 urlparse 无模式行为 (#33289)

其他

  • Elasticsearch 升级到 8 (#33135)

5.0.0

注意

升级到 Elasticsearch 8。ElasticsearchTaskHandler 和 ElasticsearchSQLHook 现在将使用 Elasticsearch 8 软件包。正如 https://elasticsearch-py.elastic.ac.cn/en/stable 中所述,Elasticsearch 语言客户端仅向后兼容默认发行版,并且不作任何保证,我们建议将 Elasticsearch 数据库的版本升级到 8,以确保与语言客户端的兼容性。

重大更改

注意

弃用非官方的 elasticsearch 库。只使用官方的 elasticsearch 库

  • 弃用 2 个非官方的 elasticsearch (#31920)

Bug 修复

  • 修复 ElasticsearchTaskHandler.es_read 中不健全的类型提示 (#32509)

其他

  • 修复 失败的 ES 远程日志记录 (#32438)

4.5.1

注意

此版本放弃了对 Python 3.7 的支持

其他

  • 移除 Python 3.7 支持 (#30963)

4.5.0

注意

Apache Airflow 提供程序支持策略 中所述,此版本的提供程序仅适用于 Airflow 2.4+。

其他

  • 提升 提供程序中 最低 Airflow 版本 (#30917)

  • 绑定 elasticearch 集成 上限 (#31255)

4.4.0

功能

  • 启用 单独的 触发器 日志记录 (#27758)

4.3.3

Bug 修复

  • 允许 elasticsearch host_field 中的嵌套 attr (#28878)

4.3.2

Bug 修复

  • Elasticsearch 日志 处理程序中支持受限制的索引模式 (#23888)

4.3.1

Bug 修复

  • common.sql 提供程序提升到 1.3.1 (#27888)

4.3.0

注意

Apache Airflow 提供程序支持策略 中所述,此版本的提供程序仅适用于 Airflow 2.3+。

其他

  • 将所有提供程序的最低 airflow 版本移动到 2.3.0 (#27196)

4.2.1

其他

  • common-sql 添加 common-sql 的下限 (#25789)

4.2.0

功能

  • 改进 ElasticsearchTaskHandler (#21942)

4.1.0

功能

  • 添加 ElasticserachPythonHook - 带有 Python 客户端的 ES Hook (#24895)

  • 将所有 SQL 类移动到 common-sql 提供程序 (#24836)

Bug 修复

  • 将易错的 ti.task.dag 赋值移回 try/except 块内 (#24533) (#24592)

4.0.0

重大更改

注意

Apache Airflow 提供程序支持策略 中所述,此版本的提供程序仅适用于 Airflow 2.2+。

其他

  • 将每个运行的日志模板应用于日志处理程序 (#24153)

3.0.3

Bug 修复

  • 使 ElasticSearch 提供程序 兼容 Airflow<2.3 (#22814)

3.0.2 (已撤回)

警告

此版本已撤回,原因如下:Elasticsearch 3.0.2 Airflow >2.3 不兼容

Bug 修复

  • 修复为所有提供程序错误添加的 install_requires (#22382)

  • 修复 "run_id" k8s elasticsearch Airflow 2.1 的兼容性 (#22385)

3.0.1 (已撤回)

警告

此版本已因以下原因被撤回Elasticsearch provider Airflow <2.3 不兼容

其他

  • PyPI 中添加 Trove 分类符 (框架 :: Apache Airflow :: Provider)

3.0.0 (已撤回)

警告

此版本已因以下原因被撤回Elasticsearch provider Airflow <2.3 不兼容

重大更改

  • 更改默认的日志文件名模板以包含 map_index (#21495)

其他

  • 支持 Python 3.10

2.2.0

新功能

  • ES 日志似乎丢失时,发出 “未找到日志” 消息 (#21261)

  • 在日志处理程序中使用兼容的数据间隔填充 (#21289)

其他

  • 澄清 ElasticsearchTaskHandler 文档字符串 (#21255)

2.1.0

新功能

  • 添加 AIP 39:时间表 的文档 (#17552)

  • 添加显示 ES_hook 的示例 (#17944)

2.0.3

错误修复

  • 修复 ElasticsearchTaskHandler 中无效的日志顺序 (#17551)

其他

  • 优化 Airflow 2.2.0 的连接导入

  • 将密钥后端/日志/身份验证信息添加到提供程序 yaml (#17625)

2.0.2

错误修复

  • 更新了依赖项以允许支持 Python 3.9

2.0.1

重大更改

  • 自动应用 apply_default 装饰器 (#15667)

  • 删除在 Elasticsearch 中支持 Jinja 模板的 log_id (#16465)

    虽然没有文档记录,但以前 [elasticsearch] log_id 支持 Jinja 模板字符串。现在已删除对 Jinja 模板的支持。log_id 应该是一个模板字符串,例如:{dag_id}-{task_id}-{execution_date}-{try_number}

    如果您之前使用了 Jinja 模板,则需要将 Elasticsearch 文档上的 execution_date 更新为新格式。

警告

由于删除了 apply_default 装饰器,此版本的 provider 需要 Airflow 2.1.0+。如果您的 Airflow 版本低于 2.1.0,并且您想安装此 provider 版本,请首先将 Airflow 升级到至少 2.1.0 版本。否则,您的 Airflow 包版本将自动升级,您必须手动运行 airflow upgrade db 完成迁移。

新功能

  • 支持使用 filebeat 7 elasticsearch 中进行远程日志记录 (#14625)

  • 支持非 https elasticsearch 外部链接 (#16489)

错误修复

  • 修复外部 elasticsearch 日志链接 (#16357)

  • 修复 Elasticsearch 外部日志链接,使用 “json_format” (#16467)

2.0.0 (已撤回)

警告

此版本已因以下原因被撤回错误发布!

1.0.4

错误修复

  • 修复 'logging.exception' 冗余 (#14823)

  • 修复 ElasticSearch 记录中缺少键导致的异常 (#15163)

1.0.3

错误修复

  • Elasticsearch Provider:修复任务日志下载 (#14686)

1.0.2

错误修复

  • 在发布 provider RC 后,对文档和工具进行更正 (#14082)

1.0.1

更新了文档和自述文件。

错误修复

  • 使用 Json Format 时,在使用 ES 日志记录时遵循 LogFormat (#13310)

1.0.0

提供程序的初始版本。

此条目是否有帮助?