apache-airflow-providers-elasticsearch

更新日志

6.2.2

错误修复

  • 实例化连接时忽略游标特定参数 (#48865)

杂项

  • 移除多余的 else (#49199)

6.2.1

杂项

  • 在新 UI 中渲染结构化日志而不是显示原始 JSON (#46827)

  • 升级 flit 3.11.0 (#46938)

6.2.0

注意

此版本没有代码更改。发布它是由于先前的版本因打包问题而被撤下。

6.1.0

特性

  • ElasticsearchSQLHook 实现了游标,以便可以通过 SQLExecuteQueryOperator 使用它 (#46439)

  • ESTaskHandler 添加写入功能 (#44973)

杂项

  • 开始将映射任务移植到 SDK (#45627)

  • 更新 index.rst (#45263)

6.0.0

注意

此 Provider 版本仅适用于 Airflow 2.9+,详见 Apache Airflow Providers 支持策略

重大变更

警告

所有已弃用的类、参数和特性已从 ElasticSearch provider 包中移除。引入了以下重大变更

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

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

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

  • 移除 Elasticsearch 中的 Provider 弃用项 (#44629)

杂项

  • 移除对 AIRFLOW_V_2_9_PLUS 的引用 (#44987)

  • Provider 中的最低 Airflow 版本提升到 Airflow 2.9.0 (#44956)

  • Provider 中检查 Airflow 版本的一致方式 (#44686)

  • 更新多个 Provider 文档中的 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

错误修复

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

杂项

  • 通用化 DbApiHook 中的连接缓存以提高性能 (#40751)

  • Provider 文件任务处理程序中 filename_template 参数的向后兼容性支持 (#41633)

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

5.5.0

注意

此 Provider 版本仅适用于 Airflow 2.8+,详见 Apache Airflow Providers 支持策略

错误修复

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

杂项

  • Provider 中的最低 Airflow 版本提升到 Airflow 2.8.0 (#41396)

5.4.2

杂项

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

5.4.1

错误修复

  • 使 elastic search index_pattern 更具可配置性 (#38423)

杂项

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

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

  • Scheduler 处理 try_number 的自增 (#39336)

5.4.0

注意

此 Provider 版本仅适用于 Airflow 2.7+,详见 Apache Airflow Providers 支持策略

杂项

  • Provider 中的最低 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

错误修复

  • 修复 providers warnings.warn stacklevel (#36831)

5.3.1

杂项

  • airflow 最低版本提升到 2.6 时,移除 es task handler 中的 getattr (#36431)

5.3.0

注意

此 Provider 版本仅适用于 Airflow 2.6+,详见 Apache Airflow Providers 支持策略

杂项

  • Provider 中的最低 Airflow 版本提升到 Airflow 2.6.0 (#36017)

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

5.2.0

特性

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

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

错误修复

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

  • 检查父级而非自身的属性,关于 TaskContextLogger set_context (#35780)

杂项

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

5.1.1

杂项

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

5.1.0

注意

此 Provider 版本仅适用于 Airflow 2.5+,详见 Apache Airflow Providers 支持策略

注意

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

杂项

  • 提升 providers 的最低 airflow 版本 (#34728)

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

  • 提高 end_of_log 判断的可理解性 (#34788)

  • ElasticSearch provider 中用 contextlib.suppress 替换 try/except/pass (#34251)

5.0.2

错误修复

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

杂项

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

  • 通过将一些模块放入 type-checking 块中来改进 Airflow providers 中的模块导入 (#33754)

  • providers 中使用字面量 dict 而不是调用 dict() (#33761)

  • 移除不必要的 and 并使用 list 重写它 in providers (#33763)

  • Airflow providers 中使用 f-string 而不是  (#33752)

5.0.1

注意

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

错误修复

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

  • 修复 Python 3.9+ urlparse schemaless-behaviour (#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)

错误修复

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

杂项

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

4.5.1

注意

此版本不再支持 Python 3.7

杂项

  • 移除 Python 3.7 支持 (#30963)

4.5.0

注意

此 Provider 版本仅适用于 Airflow 2.4+,详见 Apache Airflow Providers 支持策略

杂项

  • 提升 Provider 中的最低 Airflow 版本 (#30917)

  • 向上限定 elasticsearch 集成 (#31255)

4.4.0

特性

  • 启用单独的 Trigger 日志记录 (#27758)

4.3.3

错误修复

  • 允许在 elasticsearch host_field 中使用嵌套属性 (#28878)

4.3.2

错误修复

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

4.3.1

错误修复

  • common.sql provider 提升到 1.3.1 (#27888)

4.3.0

注意

此 Provider 版本仅适用于 Airflow 2.3+,详见 Apache Airflow Providers 支持策略

杂项

  • 将所有 providers 的最低 airflow 版本移至 2.3.0 (#27196)

4.2.1

杂项

  • common-sql 添加 lower bound (#25789)

4.2.0

特性

  • 改进 ElasticsearchTaskHandler (#21942)

4.1.0

特性

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

  • 将所有 SQL 类移至 common-sql provider (#24836)

错误修复

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

4.0.0

重大变更

注意

此 Provider 版本仅适用于 Airflow 2.2+,详见 Apache Airflow Providers 支持策略

杂项

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

3.0.3

错误修复

  • 使 ElasticSearch Provider 兼容 Airflow<2.3 (#22814)

3.0.2 (已撤下)

警告

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

错误修复

  • 修复对所有 providers 错误添加的 install_requires (#22382)

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

3.0.1 (已撤下)

警告

此版本已撤下,原因为: Elasticsearch provider Airflow <2.3 不兼容

杂项

  • PyPI 中添加 Trove 分类器 (Framework :: Apache Airflow :: Provider)

3.0.0 (已撤下)

警告

此版本已撤下,原因为: Elasticsearch provider Airflow <2.3 不兼容

重大变更

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

杂项

  • 支持 Python 3.10

2.2.0

特性

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

  • 在日志处理程序中使用 compat 数据间隔 shim (#21289)

杂项

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

2.1.0

特性

  • AIP 39: Timetables 添加文档 (#17552)

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

2.0.3

错误修复

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

杂项

  • 优化 Airflow 2.2.0 的连接导入

  • secrets backend/logging/auth 信息添加到 provider 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 装饰器,此提供程序版本需要 Airflow 2.1.0 或更高版本。如果您的 Airflow 版本低于 2.1.0,并且您想安装此提供程序版本,请先将 Airflow 升级到至少 2.1.0 版本。否则,您的 Airflow 软件包版本将自动升级,并且您将不得不手动运行 airflow upgrade db 来完成迁移。

特性

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

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

错误修复

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

  • 修复 使用 ''json_format'' 时的 Elasticsearch 外部日志 链接 (#16467)

2.0.0 (已撤回)

警告

此版本已**撤回**,原因:错误发布!

1.0.4

错误修复

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

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

1.0.3

错误修复

  • Elasticsearch 提供程序: 修复 任务 日志 下载 (#14686)

1.0.2

错误修复

  • 发布 提供程序 RCs 后的 文档 工具 更正 (#14082)

1.0.1

更新了文档和 readme 文件。

错误修复

  • 在使用 Json 格式的 ES 日志记录 遵守 LogFormat (#13310)

1.0.0

提供程序的初始版本。

此条目有帮助吗?