检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
通过KooCLI管理函数 KooCLI工具支持FunctionGraph服务,用户可以通过CLI工具执行函数管理,别名管理,触发器管理函数调用等操作。 约束与限制 当通过API访问公有云系统时,需要使用访问密钥(AK/SK)进行身份认证并对请求进行加密,确保请求的机密性、完整性和
如果创建的函数类型是HTTP函数,请参考配置HTTP函数的代码包。 约束与限制 选择上传的代码包文件大小限制为40MB以内,如文件大小超过该限制,请使用从OBS上传函数代码方式上传代码包。 请参考表1查看所使用的运行时支持的直接上传代码文件类型。 表1 直接上传代码支持的文件类型 运行时 上传zip文件
参数“事件负载内容”的内容格式。(目前只支持application/json格式。) 事件负载内容 事件内容。 事件发生主题 事件发生的主题或对象,用以标识哪个具体对象发生了当前事件 输入过滤表达式 通过JSONPath表达式对节点的输入信息进行过滤。 输出过滤表达式 通过JSONPath表达式对节点的输出信息进行过滤。
随后单击蓝色的请求id查看日志。 图3 查看日志 图4 查看请求id详情 可以对程序进行修改,使数据可以用于调用其他系统或进行持久化存储,如存储到obs等。 父主题: 使用FunctionGraph函数对IoTDA中的设备坐标数据进行转换
FunctionGraph的函数是否支持功能扩展? FunctionGraph目前已经集成了一些非标准库如:redis、http、obs_client等,开发函数时可以直接使用,详情请参考开发指南。 用户可以通过维护属于自己的依赖代码库,供所有函数使用,请参考依赖包管理。 父主题:
配置函数流的异常处理控制器组件 异常处理控制器组件用于控制函数执行失败后的下一步流程,当函数流里面的函数执行异常时,可以通过“异常处理”来处理执行失败的函数并可添加重试。函数执行失败可分为多种情况:函数执行异常;函数内部业务失败并在返回内容中添加了错误码,例如status,200代表成功,500和404等代表失败。
权限及授权项说明 如果您需要对您所拥有的FunctionGraph进行精细的权限管理,您可以使用统一身份认证服务(Identity and Access Management,简称IAM),如果公有云账号已经能满足您的要求,不需要创建独立的IAM用户,您可以跳过本章节,不影响您使
SYS.FunctionGraph 函数监控指标 表1 FunctionGraph支持的监控指标 指标ID 指标名称 指标含义 取值范围 测量对象 监控周期(原始指标) count 调用次数 该指标用于统计函数调用次数。 单位:次 ≥ 0 counts 函数 5分钟 failcount
准备工作 购买Redis实例,如果已有Redis实例可以跳过。 查看Redis实例的连接信息,获取待连接Redis实例的IP地址。具体步骤请参见查看实例信息。 创建一个有“VPC Administrator”权限的FunctionGraph云服务委托,配置委托权限请参见配置委托权限。
srcObjName = getObsObjInfo4OBSTrigger(event) obs_address = context.getUserData('obs_address') outputBucket = context.getUserData('obs_output_bucket')
图1 执行shell命令 上传函数压缩包到OBS 图2 上传函数压缩包到OBS 步骤显示名称:上传函数压缩包到OBS 构建产物路径:输入helloworld/code/helloworld.zip 桶名:选择一个私有桶存储函数代码zip包 OBS存储目录:function 上传部署包到软件发布库
入口函数名(handler):入口函数名称, 需和函数执行入口处用户自定义的入口函数名称一致。 执行事件(event):函数执行界面由用户输入的执行事件参数, 格式为JSON对象。 上下文环境(context):Runtime提供的函数执行上下文,其接口定义在SDK接口说明。 回调函数(callback):call
若容器回收,文件的读写就会失效。 函数目前不支持持久化。 典型场景 需要对OBS上的文件进行处理,可以先把文件下载到/tmp目录。 函数运行过程中产生了一些数据想保存到OBS,可以先在/tmp目录下创建新文件,然后把这些数据写到里面,接下来上传该文件到OBS。 获取上传的文件 以Python语言为例,如果用户用os
准备 案例实现的功能是将DIS数据格式转换,存储到表格存储服务中,所以需要先在表格存储服务创建集群,在创建集群时需要使用虚拟私有云。 创建函数之前,需要创建委托,给FunctionGraph函数赋权,确保FunctionGraph函数能够访问到DIS和CloudTable资源。 创建虚拟私有云
上传的文件大小限制为40M,如超过40M,请通过OBS上传。 depend_link 否 String depend_type为obs类型时,依赖包在obs的存储地址。 depend_type 是 String 导入类型,目前支持obs和zip。 runtime 是 String
Code Type True String 函数代码类型 codeUrl False String 当CodeType为obs时,该值为函数代码包在OBS上的地址,CodeType为其他值时,该字段为空。 environmentVariables False Struct 环境
03:15 使用空白模板创建函数 函数工作流 介绍如何使用APIG触发器 02:10 使用APIG触发器 函数工作流 介绍如何使用OBS触发器 03:10 使用OBS触发器 函数工作流 介绍如何使用SMN触发器 02:33 使用SMN触发器 函数工作流 使用DIS触发器 02:42 使用DIS触发器
继续使用这些函数打印日志会导致Request ID错乱。此时应该使用context.getLogger(),获取一个日志输出对象,通过这个日志输出对象打印日志。例如Python: log = context.getLogger() log.info("test") 共享变量 不涉及。
Long 返回所有满足条件的对象个数 最小值:0 最大值:1000000 size Integer 返回对象的大小 最小值:0 最大值:200 workflows Array of WorkflowSimpleInfo objects 返回的实体对象 数组长度:0 - 200 表4
使用APIG共享版触发器 本节介绍如何使用函数工作流控制台创建APIG触发器,使用API调用函数运行。 关于APIG触发器事件源的具体介绍,请参见支持的事件源。 约束与限制 APIG共享版触发器当前支持“华北-北京一”、“华北-北京四”、“华东-上海一”、“华东-上海二”、“华南