检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
trigger命令,是部署函数触发器的命令。 当执行命令deploy trigger -h/deploy trigger --help时,可以获取帮助文档。 操作案例 有资源描述文件(Yaml)时,可以直接执行s deploy trigger进行触发器的部署,描述文件(Yaml)示例:
X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 Content-Type 是 String 消息体的类型(格式) 表3 请求Body参数 参数 是否必选 参数类型 描述 without_any_tag
华为云账号未欠费,且有足够金额购买本案例所涉及的资源。 操作步骤 创建函数 登录函数工作流控制台,在左侧导航栏选择“函数 > 函数列表”,单击“创建函数”。 选择“创建空白函数”,填写函数信息,完成后单击“创建函数”。 函数类型:事件函数。 区域:华北-北京四。 函数名称:输入您自定义的函数名称,此处以“upload-file-1”为例。
案例概述 本手册基于函数流服务实践所编写,用于指导您使用函数流服务实现OBS数据处理的功能。(当前函数流暂时支持华北-北京四、华东-上海一、华东-上海二、华南-广州、西南-贵阳一、亚太-新加坡。) 场景介绍 用户使用函数流编排函数方式自动化处理OBS中的数据(如视频解析、图片转码、视频截图等)。
参数配置完成后,单击“立即创建”,完成IoTDA实例创建。 创建函数 在服务控制台左侧导航栏,选择“计算 > 函数工作流”进入函数工作流控制台,单击“创建函数”。 选择“创建空白函数”,函数类型选择“事件函数”,输入您自定义的函数名称,此处以“iotdemo”为例,选择熟悉的运行时,案例这里使用Python 3.9
Struct 函数 triggers False Struct 触发器 Yaml完整配置 华为云函数工作流(FunctionGraph)组件的Yaml字段如下: edition: 1.0.0 # 命令行YAML规范版本,遵循语义化版本(Semantic Versioning)规范
command 否 String 启动容器镜像的命令 args 否 String 启动容器镜像的命令行参数 working_dir 否 String 镜像容器工作目录 uid 否 String 镜像容器的用户id gid 否 String 镜像容器的用户组id 表6 FuncCode 参数
X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 Content-Type 是 String 消息体的类型(格式) 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型
最小长度:0 最大长度:64 limit 否 Integer 分页查询,每页显示的条目数量,默认值为200 limit大于200时,按照200处理 最小值:1 offset 否 Integer 分页查询,分页的偏移量,默认值为0 offset小于0时,按照0处理 最小值:0 enterprise_project
删除函数/版本 功能介绍 删除指定的函数或者特定的版本(不允许删除latest版本)。 如果URN中包含函数版本或者别名,则删除特定的函数版本或者别名指向的版本以及该版本关联的trigger。 如果URN中不包含版本或者别名,则删除整个函数,包含所有版本以及别名,触发器。 调用方法
project_name String 租户的project name。 package String 函数所属的分组Package,用于用户针对函数的自定义分组。 runtime String FunctionGraph函数的执行环境 Python2.7: Python语言2.7版本。 Python3
如果您选择华为云作为提供商,则服务中的events仅限于华为云API网关(APIG)和OBS,具体详情请参见事件列表。 部署后,Framework将设置您的function应该侦听的相应事件配置。 配置 事件属于每个函数,可以在serverless.yml的events属性中找到。 #
project_name String 租户的project name。 package String 函数所属的分组Package,用于用户针对函数的自定义分组。 runtime String FunctionGraph函数的执行环境 Python2.7: Python语言2.7版本。 Python3
dew_endpoint:dew服务的endpoint地址 dew_key_id:用户主密钥ID。 input_bucket: 输入文件对应的obs桶。 output_bucket: 加解密后上传的obs桶。 obs_endpoint: obs服务对应的endpoint。 表1 环境变量
MetaERP业务场景进行微服务Serverless化改造,如图1所示,将低频使用但资源占用大的微服务逻辑,拆分成独立函数,常驻实例缩容到0;剩余微服务逻辑以Spring兼容方式进行函数化,实现函数化后的微服务快速冷启动和弹性,常驻实例减半。 图1 MFA Serverless改造前后架构
Struct 函数 trigger False Struct 触发器 Yaml完整配置 华为云函数工作流(FunctionGraph)组件的Yaml字段如下: edition: 1.0.0 # 命令行YAML规范版本,遵循语义化版本(Semantic Versioning)规范
键obs_output_bucket:为index.py文件中定义的存放输出水印图片的OBS桶参数,值hugb-bucket-output:为创建OBS桶中创建的存放输出水印图片的OBS桶。 键obs_region: OBS桶obs_output_bucket所在的Region,例如“cn-north-4
请求协议、超时时间等配置,单击”确定”完成触发器创建,如图1所示。 图1 创建触发器 创建后可以获得一个调用URL,通过这个URL进行函数的调用,如图2所示。 图2 请求路径 父主题: MFA微服务serverless化
区域:选择“华东-上海一”。 函数名称:输入您自定义的函数名称,此处以“Nextjs-app”为例。 其他参数保持默认即可。 函数创建完成后进入详情页面,选择“代码”页签,选择“上传自 > Zip文件”。 图1 上传zip文件 选择之前打包的“nextjs-func-code.zip”文件,然后单击“确定”。
7”,委托名称选择创建委托中的“LtsOperation”。 函数实现的功能是:将收到的日志事件数据进行base64解码,然后提取出包含“WRN”、“WARN”、“ERR”或“ERROR”关键字的告警日志,将此级别的日志投递至OBS桶中集中存储。可根据您的业务日志的具体内容配置相应的日志提取条件。