检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
经发布的函数版本。 基于已禁用的“latest”版本重新发布新版本,发布后的新版本也处于禁用状态且不能启用。 当函数处于禁用状态时可以修改代码,但不能执行函数。 禁用函数 登录函数工作流控制台,在左侧导航栏选择“函数 > 函数列表”。 单击函数名称,进入函数详情页面。 在页面右上
配置Java函数类隔离和预停止 类隔离是指使用单独的类加载器加载用户代码和依赖,解决用户依赖和运行时依赖的冲突,如无依赖冲突问题则无需使用类隔离。 预停止是指每次FunctionGraph停止当前函数实例前,用户希望FunctionGraph调用指定回调函数,然后再停止函数实例。
Go SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Go SDK信息说明 SDK信息 说明 安装 go get -u github.com/huaweicloud/huaweicloud-sdk-go-v3
使用函数模板创建并执行函数 FunctionGraph平台提供了多种函数模板,本章节将以“context使用指导”函数模板介绍如何在创建函数时选择模板,实现模板代码、运行环境自动填充,快速构建应用程序。 准备工作 注册华为账号并实名认证。 在创建函数前,请先注册华为账号并实名认证,具体步骤请参考注册华为账号并开通华为云和实名认证介绍。
本案例提供了实现告警日志功能的程序包,使用空白模板创建函数,用户可以下载(index.zip)学习使用。 创建功能函数 创建实现日志提取功能的函数,将示例代码包上传。创建过程请参考创建函数,运行时语言选择“Python2.7”,委托名称选择创建委托中的“serverless_trust”。 函数
欢迎使用函数工作流(FunctionGraph)。FunctionGraph是一项基于事件驱动的函数托管计算服务。通过函数工作流,只需编写业务函数代码并设置运行的条件,无需配置和管理服务器等基础设施,函数以弹性、免运维、高可靠的方式运行。此外,按函数实际执行资源计费,不执行不产生费用。
无认证模式,所有用户均可访问。 None 请求协议 必选参数。 API的请求协议分为两种类型: HTTP:数据在传输过程中不被加密。 HTTPS:数据在传输过程中被加密。 HTTPS 后端超时(毫秒) 必选参数。 设置API的后端超时时间,单位为毫秒,设置范围为1~60000毫秒。 5000
把对接第三方平台需要的依赖一起打包上传,且需要函数的运行时兼容。 将skywalking agent直接嵌入到扩展代码中,即可通过扩展完成对函数请求的监控。 示例代码:skywalking-go.zip func startSkywalkingAgent() { r, err
code_type String 函数代码类型,取值有5种。 inline: UI在线编辑代码。 zip: 函数代码为zip包。 obs: 函数代码来源于obs存储。 jar: 函数代码为jar包,主要针对Java函数。 Custom-Image-Swr: 函数代码来源于SWR自定义镜像。 枚举值:
处理结果 若用户触发账号的登录/登出操作,订阅服务类型日志被触发,日志会直接调用用户函数,通过函数代码对当前登录/出的账号进行IP过滤,若不在白名单内,可收到SMN发送的通知消息邮件,如图1所示。 图1 告警消息邮件通知 邮件信息中包含非法请求ip地址和用户执行的动作(login/logout)。
返回结果 状态码 请求发送以后,您会收到响应,包含状态码、响应消息头和消息体。 状态码是一组从1xx到5xx的数字代码,状态码表示了请求响应的状态,完整的状态码列表请参见状态码。 对于获取用户Token接口,如果调用后返回状态码为“201”,则表示请求成功。 响应消息头 对应请求
桶名称:输入您自定义的桶名称,此处以“your-bucket-input”为例。 数据冗余存储策略:“单AZ存储”。 默认存储类别:“标准存储”。 桶策略:"私有"。 默认加密:“关闭”。 归档数据直读:“关闭”。 其余参数保持默认,单击“立即创建”,完成源桶创建。 完成桶创建以后,OBS桶列表有your-bucket-input桶。
为什么首次调用函数时速度会比较慢? 因为函数是冷启动的,所以如果有初始化或者函数中有第一次执行比较耗时的操作(例如加载函数代码及依赖包),第一次请求会比较慢,后面接着的请求就会很快,因为此时容器还没有销毁。如果间隔一分钟没有请求,容器就会销毁。 如果您使用的是C#或者Go语言,因
需的动态链接库打包进去。 图1 error while loading shared libraries 针对该问题有以下两种处理方案: 代码逻辑较为复杂的情况下建议使用自定义镜像函数,创建自定义镜像函数详情请参见使用容器镜像创建函数。 制作依赖包时,把动态链接库一同复制到依赖包最外层。
实现对函数代码的管理。对于发布的每个版本的函数、环境变量会另存为相应版本的快照,函数代码发布后,可以根据实际需要修改版本配置信息。 函数别名 用户可以创建别名,指向特定函数版本。别名的优势在于:如果需要回滚到之前的函数版本,则可以将相应别名指向该版本,不再需要修改代码信息。 函数
桶名称输入:输入您自定义的桶名称,此处以“hugb-bucket-input”为例。 默认存储类别:“标准存储” 桶策略:"私有" 服务端加密:“关闭” 归档数据直读:“关闭” 单击“立即创建”,完成源桶创建。 重复步骤2,创建目标桶。 区域及存储类别与源桶保持一致,桶名称命名为
创建函数A,代码样例请参考write_log.py。函数A代码中host、log_group_id和log_stream_id使用对应接入点和创建好的日志组test-1206、日志流test-206的ID,如图2所示。 图2 write_log.py 创建函数B,代码样例请参考lts_cleanse
进入项目目录。 cd nextjs-app 官方默认Demo代码需要修改项目中layout.tsx(该文件在nextjs-app下的app目录)文件的代码,不然会导致无法下载字体文件的错误,参见图2并删除红框标出的内容。 图2 删除相关代码 构建项目。 npm run build 图3 构建项目
Administrator”权限的委托,本例所选参数如图2所示,可自行选择函数所在区域,其他参数保持默认。 图2 配置参数 在“代码”页签,复制以下示例代码到代码编辑区,替换字段后单击“部署代码”。字段说明请参考表1。 import json import requests def handler (event
自动化部署 部署环境准备 使用CodeArts托管函数代码 deploy.py代码示例 cam.yaml解析