检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
03:15 使用空白模板创建函数 函数工作流 介绍如何使用APIG触发器 02:10 使用APIG触发器 函数工作流 介绍如何使用OBS触发器 03:10 使用OBS触发器 函数工作流 介绍如何使用SMN触发器 02:33 使用SMN触发器 函数工作流 使用DIS触发器 02:42 使用DIS触发器
Web类应用:比如小程序、网页/App、聊天机器人、BFF等。 事件驱动类应用:文件处理、图片处理、视频直播/转码、实时数据流处理、IoT规则/事件处理等。 AI类应用:三方服务集成、AI推理、车牌识别。 具体请参考应用场景。 父主题: 通用问题
请求排队,在服务端空闲的情况下逐个处理。如果您希望获取异步请求结果通知或者设置异步请求失败重试,请参见配置函数异步。 以下触发器:默认异步调用,用户不可修改。 表1 调用方式 事件源 调用方式 消息通知服务SMN 异步调用 对象存储服务OBS 异步调用 数据接入服务DIS 异步调用
案例概述 场景介绍 通过LTS云日志服务,快速完成ECS等服务器的任务运行日志采集、加工和转换。 通过函数工作流服务中的函数创建LTS触发器获取日志数据,经由自定义函数对日志中的关键信息进行分析和处理,过滤出告警日志。 SMN消息通知服务通过短信和邮件推送告警信息,通知业务人员进行处理。
制,请使用OBS存储桶。 更多函数资源的限制,请参见使用限制。 上传至OBS存储桶 在创建部署程序包后,可先将.zip文件上传到要在其中创建FunctionGraph函数的区域中的OBS存储桶中,然后指定FunctionGraph函数中设置程序包的OBS存储地址,OBS中ZIP包大小限制为300MB。
的订阅终端。 云端数据加工处理 在OBS对象存储服务创建OBS桶和OBS对象,并配置事件通知。 在OBS对象存储服务创建OBS桶和OBS对象,如图1所示,创建过程请参考创建OBS桶。 图1 OBS桶 创建的OBS桶名为“logstore”,OBS对象为“log.txt”用于存储日志数据。
随后单击蓝色的请求id查看日志。 图3 查看日志 图4 查看请求id详情 可以对程序进行修改,使数据可以用于调用其他系统或进行持久化存储,如存储到obs等。 父主题: 使用函数处理IOT数据
zip:函数代码为zip包。 jar:函数代码为jar包,主要针对Java函数。 obs:函数代码来源于OBS存储。 code_url 当“code_type”为“obs”时,该值为函数代码包在OBS上的地址。 当“code_type”为“inline”、“zip”或“jar”时,该字段为空。
Function面板中,选择需要传入的事件,单击“Invoke”,函数的日志以及结果会输出在OUTPUT中。 下载云端函数 前提 用户已添加获取桶对象(obs:object:GetObject)的权限。 选择您需要操作的函数,鼠标右键单击“Download...”,选择您要下载的路径,函数代码会从云端下载到本地并自动打开入口文件。
方案概述 应用场景 端侧文件上传云服务器是Web和App应用的一类场景,例如服务运行日志的上报,Web应用图片上传等,函数可作为后端,结合APIG提供通用的API处理这类场景。本章节以NodeJS和Python语言为例,指导用户如何开发后端解析函数,获取上传的文件。 约束与限制 单次请求上传文件大小不超过6MB。
自定义的依赖包名称,用于识别不同的依赖包。 代码上传方式 分为上传ZIP文件和从OBS上传文件。 上传ZIP文件:需单击“添加文件”,上传ZIP文件。 OBS链接URL:需填写“OBS链接URL”,OBS存储链接获取方法请参见OBS对象存储服务。 运行时语言 选择运行时语言。 描述 对于依赖包的描述信息,可以不填。
Python引入依赖库示例如下: from com.obs.client.obs_client import ObsClient Nodejs引入依赖库示例如下: const ObsClient = require('esdk-obs-nodejs'); 对于标准库和Function
sample()) # take a random action print('observation:{}, reward:{}, done:{}, info:{}'.format(observation, reward, done, info)) env.close()
与其他服务的关系 FunctionGraph服务与以下云服务的对接,实现相关功能,如表1所示。 表1 对接服务 服务名称 实现功能 消息通知服务(SMN) 构建FunctionGraph函数来处理SMN的通知,相关内容请参考消息通知服务用户指南。 API网关(API Gateway)
model.*; import com.obs.services.ObsClient; import com.obs.services.exception.ObsException; import com.obs.services.model.ObsObject; import javax
若容器回收,文件的读写就会失效。 函数目前不支持持久化。 典型场景 需要对OBS上的文件进行处理,可以先把文件下载到/tmp目录。 函数运行过程中产生了一些数据想保存到OBS,可以先在/tmp目录下创建新文件,然后把这些数据写到里面,接下来上传该文件到OBS。 父主题: 通用问题
自定义的依赖包名称,用于识别不同的依赖包。 代码上传方式 分为上传ZIP文件和从OBS上传文件。 上传ZIP文件:需单击“添加文件”,上传ZIP文件。 OBS链接URL:需填写“OBS链接URL”,OBS存储链接获取方法请参见OBS对象存储服务。 运行时语言 选择运行时语言。 描述 对于依赖包的描述信息,可以不填。
用户进入云审计服务创建管理类追踪器后,系统开始记录云服务资源的操作。在创建数据类追踪器后,系统开始记录用户对OBS桶中数据的操作。云审计服务管理控制台会保存最近7天的操作记录。 云审计控制台对用户的操作事件日志保留7天,过期自动删除,不支持人工删除。 本节介绍如何在云审计服务管理控制台查看或导出最近7天的操作记录:
Cangjie 1.0 函数支持多种代码导入方式 支持在线编辑代码、OBS文件引入、上传ZIP包、上传JAR包等方式。不同运行时支持的代码上传方式如表2所示。 表2 代码上传方式说明 运行时 在线编辑 上传ZIP文件 上传JAR包 从OBS上传文件 Node.js 支持 支持 不支持 支持 Python
tr-west-1 账户资源限制 账户资源总配额如下所示,配额查询及修改方法,请参考配额管理。 表2 账户资源说明表 资源 限制 是否可通过用户自己调整配额 单个账户下最大允许创建的函数个数 400 否 单个函数下最大允许创建的版本个数 20 否 单个函数下最大允许创建的别名个数 10 否