文档

开发部署扩展程序:函数计算方式

更新时间:

在DataWorks扩展程序中,您可以自定义逻辑以监管用户的操作行为,例如拦截和阻断不当行为,通过扩展程序对特定事件进行消息通知与流程管控。本文为您介绍如何通过函数计算方式开发部署扩展程序。

权限说明

  • 开放平台管理员租户管理员拥有开发者后台的读写权限,其他租户级角色、空间级角色仅拥有开发者后台的只读权限。详情请参见全局级模块权限控制

  • 仅支持阿里云主账号或者拥有AliyunDataWorksFullAccess权限的RAM用户进行界面相关配置,权限详情请参见产品及控制台权限控制详情:RAM Policy

使用限制

  • 仅DataWorks企业版及以上版本支持扩展程序功能。

    说明

    如果使用的企业版DataWorks版本到期后,所有扩展程序均会失效,无法再触发事件检查。已触发且未到终态的检查会自动通过。

  • 多个扩展程序可关联同一个扩展点事件,即同一个事件支持触发多个扩展程序。

  • 通过函数计算方式部署的扩展程序目前仅支持处理数据下载前置事件

  • 包含内部节点的组合类节点(例如机器学习(PAI)节点do-while节点for-each节点)触发检查时,需内部节点均检查通过才可继续进行后续操作。

计费说明

该方式会产生相应函数计算费用,计费详情请参见计费概述

步骤一:在本地开发扩展程序

通过函数计算部署扩展程序前,您需先在本地完成扩展程序的开发。使用fc-java-core库运行请求处理程序,示例代码为fc_test.zip,操作详情请参见事件请求处理程序(Event Handler)

  • DataWorks发送的事件消息格式,请参见附录:消息格式。您可指定messageId参数来获取事件详情。

    说明

    通过函数计算方式部署的扩展程序目前仅支持处理数据下载前置事件

  • 处理扩展程序返回结果前,您需先校验本次扩展程序运行是否通过。扩展程序返回状态的取值如下:

    • OK:扩展程序对本次扩展点事件检查通过。

    • FAIL:扩展程序对本次扩展点事件检查不通过。您需要查看并及时处理报错,以免影响后续程序的正常执行。

    • WARN:扩展程序对本次扩展点事件检查通过,但存在警告。

  • 开发扩展程序代码时,您可使用参数来提高开发和应用效率。例如,使用内置扩展程序参数extension.project.disabled,使扩展程序对某个工作空间不生效。更多扩展程序参数的使用配置,请参见高级应用:扩展程序参数配置

步骤二:在函数计算部署扩展程序

  1. 进入函数计算控制台

  2. 创建函数计算服务及所需函数,部署扩展程序。开发的扩展程序后续会将特定事件消息直接下发至该服务。操作请参见创建服务创建函数

    函数配置示例如下。

    image

    • 运行环境需根据您的代码选择,步骤一提供的示例包(fc_test.zip)对应Java8环境。您需将fc_test.zip下载至本地并上传至代码包中。实际使用时,请根据需要配置。

    • 更多函数的相关操作,请参见管理函数

步骤三:在DataWorks注册扩展程序

扩展程序部署完成后,您需在DataWorks注册扩展程序,操作步骤如下。

  1. 进入开放平台

  2. 在左侧导航栏单击扩展程序,进入扩展程序页面。

  3. 注册扩展程序。

    单击扩展程序列表 > 注册扩展程序,选择通过函数计算部署并配置扩展程序信息。

    image

    您可根据需要配置所需参数,参数说明如下。

    参数

    如何配置

    扩展程序名称

    自定义扩展程序的名称,用于标识扩展程序。

    函数计算服务及函数

    选择扩展程序需部署在函数计算的哪个服务及函数上。后续开发的扩展程序会将特定事件消息直接下发至该服务。

    处理的扩展点

    目前仅支持处理数据下载前置事件触发的消息。

    说明

    选择完成后,配置界面会自动根据选择结果匹配所属事件适用模块,无需手动配置。

    负责人

    扩展程序的负责人,方便扩展程序使用者遇到问题时能及时联系到负责人。

    测试用工作空间

    选择测试扩展程序的工作空间。扩展程序无需进行上线操作,即可在测试工作空间中生效。

    扩展程序上线前,开发人员可在测试空间进行完整链路的测试验证,通过触发事件,测试DataWorks通过EventBridge发送消息、扩展程序接收消息并进行消息审核与回调。

    说明

    处理的扩展点选择租户级扩展点事件,无需配置测试用工作空间

    扩展程序详情地址

    输入介绍扩展程序详情的地址,帮助扩展程序使用者更好的理解和使用此扩展程序。

    您可在开发部署扩展程序时,开发一个扩展程序的详情展示页面,将页面地址配置在此处,以便使用者在触发扩展程序校验时,可通过链接查看完整的校验过程。例如,此次扩展程序检查链路和阻塞的原因。

    扩展程序文档地址

    输入扩展程序的帮助文档地址,供扩展程序的使用者阅读。

    您可在开发部署扩展程序时,开发一个扩展程序的帮助文档页面,将页面地址配置在此处,以便使用者学习了解扩展程序的校验逻辑与属性。

    扩展程序参数配置

    DataWorks支持在扩展程序开发过程中使用参数来提高扩展程序开发和应用效率,在扩展程序代码开发时,将需要应用的参数添加至此处即可。

    您可直接使用DataWorks提供的典型应用场景的内置参数,也可自定义参数。

    支持添加多个参数,一行一个参数,参数格式为key=value。更多参数的使用,请参见高级应用:扩展程序参数配置

    扩展程序选项配置

    输入提供给扩展程序使用者使用的功能配置项,可实现该扩展程序在不同工作空间进行个性化管控。扩展程序开发者需在此界面通过JSON字符串定义选项。

    例如,可通过选项配置让扩展程序使用者自行管控SQL长度。JSON格式可参考高级应用:扩展程序选项配置

  4. 单击确定,完成扩展程序注册。

    注册完成后,在扩展程序列表,您可执行以下操作:

    • 查看扩展程序:查看扩展程序的扩展点、适用模块、Extension Code、状态等信息。

    • 操作扩展程序:对扩展程序执行提交上线编辑等操作。

扩展程序示例

了解上述扩展程序开发注意事项后,您可根据业务需求开发自己的扩展程序代码,以下也提供了一些典型场景下,扩展程序注册、开发、应用的示例。

相关文档

  • 本页导读 (1)
文档反馈