检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
使用FunctionGraph函数流对OBS中的图片进行旋转 案例概述 准备 构建程序 处理图片 父主题: 数据处理类实践
配置函数流的服务控制器组件 服务控制器组件可以将多个函数操作合并成一个原子节点进行管理。 函数流的服务控制器组件支持两种执行模式:串行模式和并行模式。 约束与限制 通过数据工坊DWR服务创建的函数流,在函数工作流控制台只能查看,不能编辑和删除,相关操作请在DWR服务中执行。 服务
配置函数流的子流程控制器组件 函数工作流服务可以把一些“函数流”作为“子流程”组合成一个新的函数流,这样可以抽取出一些函数流作为公共流进行使用,减少函数流的重复编排。 约束与限制 通过数据工坊DWR服务创建的函数流,在函数工作流控制台只能查看,不能编辑和删除,相关操作请在DWR服务中执行。
处理结果 若用户触发账号的登录/登出操作,订阅服务类型日志被触发,日志会直接调用用户函数,通过函数代码对当前登录/出的账号进行IP过滤,若不在白名单内,可收到SMN发送的通知消息邮件,如图1所示。 图1 告警消息邮件通知 邮件信息中包含非法请求ip地址和用户执行的动作(login/logout)。
端处理并转储消息到LTS的功能。 场景介绍 通过云日志服务LTS,快速完成ECS等服务器的任务运行日志的采集、加工和转换。 通过函数工作流服务中的函数创建LTS触发器获取日志数据,经由自定义函数对日志中的关键信息进行分析和处理,把过滤后的日志转存到另外的日志流中,如图1所示。 图1
URI-scheme:表示用于传输请求的协议,当前所有API均采用HTTPS协议。 Endpoint:指定承载REST服务端点的服务器域名或IP,不同服务不同区域的Endpoint不同,您可以从地区和终端节点中获取。例如IAM服务在“华北-北京一”区域的Endpoint为“iam.cn-north-1
键obs_output_bucket:为index.py文件中定义的存放输出水印图片的OBS桶参数,值hugb-bucket-output:为创建OBS桶中创建的存放输出水印图片的OBS桶。 键obs_region: OBS桶obs_output_bucket所在的Region,例如“cn-north-4
建“OBS应用事件源”实现的,步骤如下。 用户进入fss_examples_dew函数详情页,在“触发器”页签,单击“创建触发器”,弹出“创建触发器”界面。 触发器类型选择“OBS应用事件源”,填写触发器配置信息,如图1所示。 桶选择创建OBS桶中创建的“input_bucket”桶。
本例提供一个图片旋转的样例代码供学习使用。 创建程序包 本例使用Golang语言实现图片旋转的功能,有关函数开发的过程请参考Golang函数开发。本例不再介绍业务功能实现的代码,样例代码目录如图1所示。 图1 样例代码目录 创建函数 创建函数的时候,必须选择委托包含OBS访问权限的委托,否则不能使用OBS服务。
配置函数流的异常处理控制器组件 异常处理控制器组件用于控制函数执行失败后的下一步流程,当函数流里面的函数执行异常时,可以通过“异常处理”来处理执行失败的函数并可添加重试。函数执行失败可分为多种情况:函数执行异常;函数内部业务失败并在返回内容中添加了错误码,例如status,200代表成功,500和404等代表失败。
配置函数流的条件分支控制器组件 函数流的条件分支控制器组件可以根据设置的条件判断是否执行其他分支。 约束与限制 通过数据工坊DWR服务创建的函数流,在函数工作流控制台只能查看,不能编辑和删除,相关操作请在DWR服务中执行。 条件分支控制器组件后面可以连接2-20个后继节点,后继节
服务组合,处理物联网设备上报以及设备状态变动的相关数据。物联网设备在IoTDA 平台进行管理,设备产生的数据可以从IoTDA直接流转触发FunctionGraph 的函数运行。用户可以根据需要编写函数处理这些数据。 通常该组合,可以适用于以下场景,如将设备上报的数据在处理后进行存储到如OBS;对上报的数据进行结构
使用FunctionGraph函数识别LTS中的异常业务日志并存储到OBS 案例概述 准备 构建程序 添加事件源 处理结果 父主题: 数据处理类实践
OBS桶 创建的OBS桶名为“logstore”,OBS对象为“log.txt”用于存储日志数据。 创建委托 登录统一身份认证服务控制台。 在统一身份认证服务的左侧导航窗格中,选择“委托”页签,单击右上方的“+创建委托”。 图2 创建委托 开始配置委托。 委托名称:输入您自定义的委托名称
配置函数流的时间等待控制器组件 时间等待控制器组件可以用来控制当前子流程或函数在指定时间延迟后再调用下一个子流程或函数。 约束与限制 通过数据工坊DWR服务创建的函数流,在函数工作流控制台只能查看,不能编辑和删除,相关操作请在DWR服务中执行。 时间等待控制器组件后面可以连接0个
函数如何获取APIG触发器中的请求路径或请求参数? 请求路径或请求参数默认携带在event的入参中,FunctionGraph函数对APIG调用的传入值为函数自带的事件模板。您可以通过打印函数执行结果,获取请求路径或请求参数。 示例: queryStringParameters:
数量(个) API分组 1 自定义认证函数 1 业务函数 1 API 1 父主题: 使用FunctionGraph函数作为后端实现APIG的自定义认证能力
若日志包含“WRN”、“WARN”、“ERR”或“ERROR”关键字的告警日志,则过滤出来并转储到准备好的日志流中。以下图1和图2是过滤前和过滤后的实时日志对比。 图1 过滤前日志 图2 过滤后日志 您可以通过函数指标查看函数的调用情况,如下 3 张图所示。 图3 函数指标1 图4 函数指标2
在API的安全认证方面,API网关提供IAM认证、APP认证等方式,帮助用户快速开放API,同时API网关也支持用户使用自己的认证方式(以下简称自定义认证),以便更好地兼容已有业务能力。 本手册基于函数工作流服务实践编写,指导您快速创建后端服务为FunctionGraph的API,
添加事件源 创建LTS触发器 选择准备中创建的日志组和日志流,创建LTS触发器,LTS触发器配置如图1所示。 图1 创建LTS触发器 云日志服务LTS的消费端在日志累积大小或日志累积时间满足条件时消费LTS日志数据,并根据订阅该组LTS日志数据的函数URN触发函数执行。 父主题: 使用