检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
用户访问FunctionGraph的方式有多种,包括FunctionGraph控制台、API、SDK,无论访问方式封装成何种形式,其本质都是通过FunctionGraph提供的REST风格的API接口进行请求。FunctionGraph支持Token认证和AK/SK认证。 访问控制 F
String 桶名称(OBS触发器参数),用作事件源的OBS存储桶,不能和本用户已有桶重名;不能和其他用户已有的桶重名;创建成功后不支持修改。 最小长度:1 最大长度:64 prefix String 前缀(OBS触发器参数),输入一个可选性前缀来限制对以此关键字开头的对象的通知。 最小长度:0
"application/json" } } 步骤三:调用函数 在父函数的函数详情页,单击“测试”,进行父函数调用。 查看执行结果。 父函数的执行结果显示“成功”,返回“200”。 图3 父函数执行历史 子函数的日志中,显示被调用的日志。 图4 子函数执行历史 父主题: 应用示例
am_id使用对应接入点和创建好的日志组test-1121、日志流test-1121的ID,并为函数B添加依赖huaweicloudsdklts,如图3和图4所示。 图3 lts_cleanse.py 图4 为函数B添加依赖包 函数实现的功能是:将收到的日志事件数据进行base6
华为云函数工作流(FunctionGraph)组件的Yaml字段如下: edition: 1.0.0 # 命令行YAML规范版本,遵循语义化版本(Semantic Versioning)规范 name: fg-test # 项目名称 access: "default" # 秘钥别名
测试托管方式改造函数,调用方法如图1所示。 图1 测试函数调用的方法 调用时,遵循原来的请求方法。 请求url为添加事件源创建的APIG触发器地址。 需要在headers里配置requestPath,值为图1中的@Path(可能会包含一些服务前缀,对应微服务改造之前的请求Path即可),如图2所示。 图2
自定义运行 自定义函数执行的脚本和文件。 函数日志 函数调用过程中产生的日志信息。 函数监控 函数执行过程中的监控信息。 函数版本 函数从开发、测试、生产过程中发布一个或多个版本,实现对函数代码的管理。对于发布的每个版本的函数、环境变量会另存为相应版本的快照,函数代码发布后,可以根据实际需要修改版本配置信息。
件函数和HTTP函数。 概述 FunctionGraph支持事件类型函数。事件是指用于触发函数,通常为JSON格式的请求。用户作为事件源(事件的生产者),可以通过云服务平台或CodeArts IDE Online触发函数并进行执行。在函数创建界面可以选择函数类型,事件类型的函数不
如果函数代码引入了依赖包,也可以制作包含所有依赖包和函数代码jar文件的zip程序包文件,选择上传zip文件。具体示例可参见使用IDEA工具创建普通Java项目、使用IDEA工具创建maven项目。 Go 支持 不支持 编译后的动态库文件名称必须与函数执行入口的插件名称保持一致,例如:动态库名称为testplugin
getResourceName() 获取事件触发的资源名称 getResourceId() 获取事件触发资源的唯一标识 getTraceName() 获取事件名称 getTraceType() 获取事件触发的方式(如ConsoleAction:代表前台操作) getRecordTime()
准备 该场景涉及微服务与后端服务的调用,因此需要提前准备好对应的后端服务。用户可以使用自己搭建的后端服务,也可以使用华为云提供的云服务。 若后端服务需要通过虚拟私有云(VPC)访问,函数需要进行额外配置,若可以通过公网访问后端服务,可以跳过以下步骤2和步骤3。 创建Java函数(按
资产识别与管理 在函数的环境变量中,若有敏感信息例如账号和密码、Ak/Sk等,建议通过配置加密环境变量。不配置加密环境变量,则会在界面或API返回结果中明文展示。 在使用触发器、配置VPC访问、使用自定义镜像、挂载SFS等场景下,FunctionGraph需要与其他云服务协同工作
如下信息:函数类型选择“事件函数”、输入您自定义的函数名称,此处以“access-redis-demo”为例,选择运行时“Python3.9”,最后单击创建函数。 图1 创建函数 创建函数选择的“区域”与要访问的Redis实例所在的区域一致。 根据Redis实例类型选择示例代码覆盖函数代码详情页中index
函数工作流提供了按量和预留两种类型的实例。 按量实例是由函数工作流根据用户使用函数的实际情况来创建和释放,当函数工作流收到函数的调用请求时,自动为此请求分配执行环境。 预留实例是将函数实例的创建和释放交由用户管理,当您为某一函数创建了预留实例,函数工作流收到此函数的调用请求时,会优先
aph资源。 根据企业用户的职能,设置不同的访问权限,以达到用户之间的权限隔离。 将FunctionGraph资源委托给更专业、高效的其他华为云账号或者云服务,这些账号或者云服务可以根据权限进行代运维。 如果华为云账号已经能满足您的要求,不需要创建独立的IAM用户,您可以跳过本章
FunctionGraph提供基于云监控服务CES的资源和操作监控能力,帮助用户监控账号下的函数,执行自动实时监控、告警和通知操作。用户可以掌握函数中的调用次数、错误次数、运行时间(包括最大运行时间、最小运行时间、平均运行时间)、被拒绝次数、资源统计等信息。 关于FunctionGraph支持的监控指标,请参见监
函数工作流的常见使用场景? 函数调用绑定在APIG的域名的服务,报域名无法解析? 同步函数工作流能否支持到内网最大带宽的同步传输 ? 单租户的VPC超过默认配额时,需要怎么做? 如何打印info、error、warn级别的日志? 函数是否可以把API的接口域名配置成自己的域名? 函数工作流是否支持修改运行时语言
确保创建函数选择的“区域”与创建OBS桶选择的“区域”一致。 程序文件解压后的源代码大小不能超过1.5G,如需部署超大代码请提交工单联系客服处理。 当您部署的代码大于20M时,在线编辑器将不展示代码,但您仍可以测试您的函数。 图1 编辑器不展示代码 更多函数资源的限制,请参见使用限制。
桶,分别用来保存用户上传的文件和加/解密后输出的文件。 OBS桶创建以后,需要创建委托,给FunctionGraph函数赋权,确保FunctionGraph函数能够访问到OBS资源,本指导以加密文件为例: 创建OBS桶 上传文件的源桶、输出文件的目标桶和函数必须处于同一个区域下。
本例提供一个图片旋转的样例代码供学习使用。 创建程序包 本例使用Golang语言实现图片旋转的功能,有关函数开发的过程请参考Golang函数开发。本例不再介绍业务功能实现的代码,样例代码目录如图1所示。 图1 样例代码目录 创建函数 创建函数的时候,必须选择委托包含OBS访问权限的委托,否则不能使用OBS服务。