检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
目标类型。 OBS:通知到OBS服务。 SMN:通知到SMN服务。 DIS:通知到DIS服务。 FunctionGraph: 通知到函数服务。 枚举值: OBS SMN DIS FunctionGraph param String 通知目标服务对应参数,json字符串。 OBS:包含b
下介绍计算资源消耗的方式: 函数计算资源消耗是函数所选内存和函数执行时长的乘积,执行时长是从函数代码开始执行的时间算起到其返回或终止的时间为止,计量的粒度是1毫秒,不足1毫秒按1毫秒计费。例如,函数A执行了0.5毫秒、函数B执行了2.3毫秒,则计算函数资源消耗时,函数A执行时长按
trigger_config OBSTriggerConfig object OBS触发器配置,当trigger_type为OBS时需要设置 表5 OBSTriggerConfig 参数 参数类型 描述 bucket String OBS桶名(trigger_type为OBS时配置) 最小长度:1
是 String 函数的URN,详细解释见FunctionGraph函数模型的描述。 表2 Query参数 参数 是否必选 参数类型 描述 marker 否 String 上一次查询到的最后的记录位置。 最大长度:64 limit 否 String 每页显示的条目数量。 如果不提供
trigger_config 否 OBSTriggerConfig object OBS触发器配置,当trigger_type为OBS时需要设置 表4 OBSTriggerConfig 参数 是否必选 参数类型 描述 bucket 是 String OBS桶名(trigger_type为OBS时配置) 最小长度:1
资源类型 所选服务下对应的资源类型,如触发器、实例、函数等。 操作名称 所选资源类型下对应的操作,如创建、删除触发器等。 单击“确定”,完成CTS触发器的创建。 配置CTS事件触发函数 返回函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。 选择待配置的函数,单击进入函数详情页。
trigger_config 否 OBSTriggerConfig object OBS触发器配置,当trigger_type为OBS时需要设置 表4 OBSTriggerConfig 参数 是否必选 参数类型 描述 bucket 是 String OBS桶名(trigger_type为OBS时配置) 最小长度:1
在线调试函数 完成函数的各项配置后,在函数详情页中的“代码”页签下,可以自定义设置测试事件,验证函数能否成功执行。 有关函数在线调试测试事件的操作,您可以参见使用空白模板创建函数指导视频中调试测试事件的介绍。 约束与限制 每个函数最多可配置10个测试事件。 创建测试事件 事件数据
代码包不超过40MB的场景使用。 从OBS上传函数代码:通过输入OBS桶地址,上传OBS桶中的zip文件或jar文件,适用于代码包不超过300MB的场景使用。 2 配置函数的依赖包 依赖包为函数提供依赖库、运行时环境及函数扩展的执行能力,减少部署或更新函数时的代码包体积。函数支持添加公共依赖包和私有依赖包。
String 当code_type为obs时,该值为函数代码包在OBS上的地址,code_type为其他值时,该字段为空。 code_filename String 函数的文件名,当code_type为jar/zip时必须提供该字段,inline和obs不需要提供。 code_size
根据Java SDK下载提供的SDK地址,下载JavaRuntime SDK到本地开发环境解压,如图2所示。 图2 下载SDK解压 将zip中的Runtime-2.0.5.jar拷贝到本地目录,例如d:\\runtime中,在命令行窗口执行如下命令安装到本地的maven仓库中。 mvn
什么是FunctionGraph FunctionGraph是一项基于事件驱动的函数托管计算服务。使用FunctionGraph函数,只需编写业务函数代码并设置运行的条件,无需配置和管理服务器等基础设施,函数以弹性、免运维、高可靠的方式运行。此外,按函数实际执行资源计费,不执行不产生费用。 函数使用流程如图1所示。
String 当code_type为obs时,该值为函数代码包在OBS上的地址,code_type为其他值时,该字段为空。 code_filename String 函数的文件名,当code_type为jar/zip时必须提供该字段,inline和obs不需要提供。 code_size
入方向规则。 优先级为1,协议端口号为22,源地址选择已创建的ipGroup-clouddeploy的IP地址组,完成后单击“确定”。 图1 添加入方向规则 返回弹性云服务器页面,单击部署主机ECS的名称,将部署主机的安全组切换为functions-deploy安全组。 安装Python库
在目录“/home/fsscsharp/src/MyCsharpPro”下的Program.cs代码文件中创建入口执行函数。其中input为客户端请求的body数据,context为FunctionGraph函数服务提供的运行时上下文对象,具体提供的属性可以参考属性接口。代码如下: 1 2 3
事件发生的主题或对象,用以标识哪个具体对象发生了当前事件 输入过滤表达式 基于上一个流程的json输出参数,可以使用JSONPath格式来选择性的过滤出当前流程的输入参数。 输出过滤表达式 基于当前流程的json输出参数,可以使用JSONPath格式来选择性的过滤出下一流程的输出参数。 父主题: 函数流组件配置说明
20 详解 函数配置在cam.yaml的properties属性下,当前支持的函数配置详解如下: 参数 是否必须 是否更新 描述 region 是 否 调用函数所在region。 codeUri 是 否 函数代码地址。该值为函数代码包在OBS上的地址。 projectID 是 否 租户Project
单击 “监控” “日志” 随后单击蓝色的请求id查看日志。 图3 查看日志 图4 查看请求id详情 可以对程序进行修改,使数据可以用于调用其他系统或进行持久化存储,如存储到obs等。 父主题: 使用FunctionGraph函数对IoTDA中的设备坐标数据进行转换
FunctionGraph的函数是否支持功能扩展? FunctionGraph目前已经集成了一些非标准库如:redis、http、obs_client等,开发函数时可以直接使用,详情请参考开发指南。 用户可以通过维护属于自己的依赖代码库,供所有函数使用,请参考依赖包管理。 父主题:
将工程打成ZIP包,上传到OBS存储桶。 Python 2.7 不支持该方式 假如函数工程文件保存在“~/Code/”文件夹下,在打包的时候务必进入Code文件夹下选中所有工程文件进行打包,这样做的目的是:入口函数是程序执行的入口,确保解压后,入口函数所在的文件位于根目录。 如果函