检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
工作原理 Serverless Framework将serverless.yml中的所有语法转换为华为云部署管理的配置模板。 提供商插件解析serverless.yml配置并转换为华为云资源。 然后将函数的代码打包到目录中,压缩并上传到部署桶中。 资源部署完成。 建议在CI/
调用说明 FunctionGraph提供了REST(Representational State Transfer)风格API,支持您通过HTTPS请求调用,调用方法请参见如何调用API。 父主题: 使用前必读
案例概述 场景介绍 通过LTS云日志服务,快速完成ECS等服务器的任务运行日志采集、加工和转换。 通过函数工作流服务中的函数创建LTS触发器获取日志数据,经由自定义函数对日志中的关键信息进行分析和处理,过滤出告警日志。 SMN消息通知服务通过短信和邮件推送告警信息,通知业务人员进行处理。
运行日志的采集、加工和转换。 通过函数工作流服务中的函数创建LTS触发器获取日志数据,经由自定义函数对日志中的关键信息进行分析和处理,把过滤后的日志转存到另外的日志流中,如图1所示。 图1 处理流程 案例价值点 通过云日志服务LTS,快速完成日志采集和转换。 基于Serverle
设备属性上报 设备消息 设备消息上报 设备消息状态 设备消息状态变更 设备状态 设备状态变更 产品 产品添加、产品删除、产品更新 设备异步命令状态 批量任务状态变更 运行日志 上报平台日志 批量任务 批量任务状态变更 单击“确定”,完成IoTDA触发器的创建。 触发函数 返回函数工作流控制台,在左侧的导航栏选择“函数
ddeploy的IP地址组,完成后单击“确定”。 图1 添加入方向规则 返回弹性云服务器页面,单击部署主机ECS的名称,将部署主机的安全组切换为functions-deploy安全组。 安装Python库 执行如下命令,安装pyyaml库和pycryptodome库。对函数的cam
基础Terraform语法 Terraform配置语言主要基于HCL语法,具有配置简单、可读性强等特点,并且兼容JSON语法。详情参见官网介绍https://developer.hashicorp.com/terraform/language,此文不做赘述。 父主题: 使用Terraform部署函数
V1版本开通:在“日志”页签,单击“使用 云日志服务(LTS) 管理函数日志”,页面直接切换至LTS管理函数日志的页面。 FunctionGraph V1版本支持“切换旧版”,将会停用云日志服务(LTS) ,并切换为应用运维管理服务(AOM) 管理函数日志。 函数运行过程中产生的日志管理费用将按需收取。
安全 责任共担 资产识别与管理 身份认证与访问控制 数据保护技术 审计与日志 服务韧性 监控安全风险 认证证书 代码签名
HTTP函数支持多种开发语言。 用户函数需要返回一个合法的http响应报文。 该章节均以Nodejs为样例,若需要使用其他语言,则更换语言路径即可,代码包路径无需更换。其他各语言路径请参见表1。 关于Go语言构建FunctionGraph HTTP函数,请参考使用Go构建FunctionGraph
可以通过IAM标准接口获取Token,示例如下。 获取华南区的Token示例命令如下。 curl -k -i -X POST https://iam.cn-south-1.myhuaweicloud.com/v3/auth/tokens -H 'Content-Type:
error_code String 错误码 error_msg String 错误信息 请求示例 为函数的v1版本创建别名a1。 POST https://{Endpoint}/v2/{project_id}/fgs/functions/{function_urn}/aliases {
Set列表接口。 参数zone_id即上述步骤中获取的“域名ID”,单击“调试”,响应体中即可获取内网域名对应的IP。 图1 获取内网域名对应的IP 切换到代码示例获取完整的代码,相关依赖请参见SDK信息。 图2 获取相关代码 父主题: 通用问题
"Content-Type": "application/json" } } 一般不建议在函数代码内捕获异常,其会导致创建的错误次数告警配置不生效。但是FunctionGraph实现了与云日志服务(LTS)的对接,支持在LTS服务中配置告警,LTS支持日志告警实时监控函数日志中出现的异常信息。
默认生成的APIG触发器的调用URL为“域名/函数名”,在本案例中即:https://your_host.com/springboot_demo,URL中包含了函数名springboot_demo作为path的第一部分。如果直接Get https://your_host.com/springboo
现无法创建函数,表示“FunctionGraph Invoker”已生效。 在“服务列表”中选择除FunctionGraph外的任一服务,若提示权限不足,表示“FunctionGraph Invoker”已生效。 父主题: FunctionGraph权限说明
"xxx" } 创建依赖包使用obs方式。 POST https://{Endpoint}/v2/{project_id}/fgs/dependencies/version { "depend_link" : "https://{bucket}.{obs_endpoint}/
准备Terraform环境 安装Terraform执行环境 Terraform提供了多种环境的安装包,具体可以参考官网(https://developer.hashicorp.com/terraform/downloads)。 下面以Linux CentOS (系统需要有访问公网权限)为例指导安装Terraform。
以及设备上进行设备管理和数据上报,需要用户进一步参考IoTDA的文档。在该案例中,我们使用IoTDA + FunctionGraph 做一个坐标转换的示例(WGS84 坐标转 GCJ02坐标)。 实现流程 在IoTDA创建IoTDA实例(测试时可以创建标准版免费体验)。 在FunctionGraph创建函数。
"name" : "xxx" } 创建依赖包使用obs方式。 POST https://{Endpoint}/v2/{project_id}/fgs/dependencies { "depend_link" : "https://{bucket}.{obs_endpoint}/depe