检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
)的代码文件。 制作zip代码包文件时,单函数执行入口文件必须在根目录,确保解压后直接出现函数的执行入口文件。 程序文件解压后的源代码大小不能超过1.5G,如需部署超大代码请提交工单联系客服处理。 当您部署的代码大于20M时,在线编辑器将不展示代码,但您仍可以测试您的函数。 图1
在函数详情页,选择函数版本,选择测试事件,单击“测试”。 图1 选择测试事件 单击“测试”,可以得到函数执行结果。 在“执行结果”中可查看函数的日志,此处最多支持显示2K的日志。如需查看完整日志,请参见配置日志组、日志流和查看函数日志。 修改测试事件 返回函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
审计与日志 审计 云审计服务(Cloud Trace Service,CTS),是华为云安全解决方案中专业的日志审计服务,提供对各种云资源操作记录的收集、存储和查询功能,可用于支撑安全分析、合规审计、资源跟踪和问题定位等常见应用场景。 用户开通云审计服务并创建和配置追踪器后,CT
重试函数流 功能介绍 重试函数流(执行标准函数流失败时可使用执行id调用此接口重试,快速工作流不支持重试) 调用方法 请参见如何调用API。 URI POST /v2/{project_id}/fgs/workflows/{workflow_id}/executions/{execution_id}/retry
示例1:创建函数和Timer触发器实现定时从OBS桶中下载文件 场景描述 本章节以Python 2.7为例,指导您通过API创建FunctionGraph函数和Timer触发器,实现定时从OBS桶中下载文件。 API的调用方法请参见如何调用API。 前提条件 已在OBS服务中上传
案例概述 场景介绍 通过CTS云审计服务,完成对公有云账户对各个云服务资源操作动作和结果的实时记录。 通过在函数工作流服务中创建CTS触发器获取订阅的资源操作信息,经由自定义函数对资源操作的信息进行分析和处理,产生告警日志。 SMN消息通知服务通过短信和邮件推送告警信息,通知业务人员进行处理。处理流程如图1所示。
测试函数 测试托管方式改造函数,调用方法如图1所示。 图1 测试函数调用的方法 调用时,遵循原来的请求方法。 请求url为添加事件源创建的APIG触发器地址。 需要在headers里配置requestPath,值为图1中的@Path(可能会包含一些服务前缀,对应微服务改造之前的请求Path即可),如图2所示。
资产识别与管理 在函数的环境变量中,若有敏感信息例如账号和密码、Ak/Sk等,建议通过配置加密环境变量。不配置加密环境变量,则会在界面或API返回结果中明文展示。 在使用触发器、配置VPC访问、使用自定义镜像、挂载SFS等场景下,FunctionGraph需要与其他云服务协同工作
获取按指定指标排序的函数列表 功能介绍 按指定指标排序的函数列表。 默认统计按错误次数指标统计最近一天失败次数最多的前10个函数 调用方法 请参见如何调用API。 URI GET /v2/{project_id}/fgs/function/report 表1 路径参数 参数 是否必选
上传函数压缩包到OBS 步骤显示名称:上传函数压缩包到OBS 构建产物路径:输入helloworld/code/helloworld.zip 桶名:选择一个私有桶存储函数代码zip包 OBS存储目录:function 上传部署包到软件发布库 图3 上传部署包到软件发布库 步骤显示名称:上传部署包到软件发布库
基本信息配置说明修改常规信息。 表1 常规信息配置说明 参数 说明 函数名称 函数名称在创建函数时设置,无法修改。 函数版本 当前新创建函数的版本均为“v2”,无法修改。 所属应用 当前新创建函数的所属应用均为“default”,无法修改。 说明: “应用”实际作用就是文件夹功能,为历史版本使用的概念,当前版
介绍业务功能实现的代码,样例代码目录如图1所示。 图1 样例代码目录 创建函数 创建函数的时候,必须选择委托包含OBS访问权限的委托,否则不能使用OBS服务。 登录函数工作流控制台,在左侧导航栏选择“函数 > 函数列表”,进入函数列表界面。 单击“创建函数”,选择“创建空白函数”进入创建函数流程。
账号具备所有接口的调用权限,如果使用账号下的IAM用户发起API请求时,该IAM用户必须具备调用该接口所需的权限,否则,API请求将调用失败。每个接口所需要的权限,与各个接口所对应的授权项相对应,只有发起请求的用户被授予授权项所对应的策略,该用户才能成功调用该接口。例如,用户要
递归地嵌套变量引用,提高灵活性。 合并多个变量引用以相互覆盖。 约束与限制 只能在serverless.yml的values属性中使用变量,而不能使用键属性。因此,您不能在自定义资源部分中使用变量生成动态逻辑ID。 从环境变量中引用变量 要引用环境变量中的变量,请在serverless.yml中
请求Body参数 参数 是否必选 参数类型 描述 without_any_tag 否 Boolean 是否通过标签过滤 limit 否 String 每页显示条数 offset 否 String 查询偏移量 action 否 String 查询指定action 枚举值: count filter
功能应用类实践 使用FunctionGraph函数和CTS识别非法IP的登录登出操作 使用FunctionGraph函数定时开关华为云ECS 使用FunctionGraph函数作为后端实现APIG的自定义认证能力 使用FunctionGraph部署AI绘画Stable Diffusion应用
事件函数 v2版本在创建函数时,页面会出现参数“函数类型”,区分事件函数和HTTP函数。 概述 FunctionGraph支持事件类型函数。事件是指用于触发函数,通常为JSON格式的请求。用户作为事件源(事件的生产者),可以通过云服务平台或CodeArts IDE Online触
创建函数 函数创建后是否支持修改函数名称? 函数创建后是否支持修改编程语言? 创建函数时提示“已限制,不能执行此操作”? 如何导出函数中的代码? 使用相同名称的镜像更新镜像时,预留实例无法自动更新,会一直使用老镜像
测试事件。 创建成功后,单击代码编辑区的“测试”,进行父函数调用。 查看执行结果。 父函数的执行结果显示“执行成功”,返回“200”。 图3 父函数执行历史 子函数的日志中,显示被调用的日志。 图4 子函数执行历史 父主题: 应用示例
Framework通常通过npm install -g serverless全局安装。因此,您的所有服务都可以使用Serverless CLI。 全局安装工具的缺点是无法将版本固定在package.json内部。如果升级Serverless,但您的同事或CI系统不升级,这可能会导致问题。您可以在serverless