检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
7”,委托名称选择创建委托中的“LtsOperation”。 函数实现的功能是:将收到的日志事件数据进行base64解码,然后提取出包含“WRN”、“WARN”、“ERR”或“ERROR”关键字的告警日志,将此级别的日志投递至OBS桶中集中存储。可根据您的业务日志的具体内容配置相应的日志提取条件。
yptodome库。对函数的cam.yaml配置文件进行解析,对函数的加密环境变量进行加解密。 pip3 install pyyaml pip3 install pycryptodome 安装KooCLI命令行工具 安装KooCLI命令行工具 远程登录购买的ECS云服务器,执行如下命令安装KooCLI:
如果请求的函数别名是“alias1”且请求的“Header”中携带有“aaa”等于“123”这样的参数,那么本次请求会使用该函数的“version2”执行函数,如果请求的“Header”不满足设置的规则条件,则使用该函数的“version1”执行函数。 描述:对于别名的描述信息。
类型:选择“file”。 参数值:单击“Upload”,上传刚才创建好的app.log文件。 在upload-file-1函数详情页面的“监控”页签下,查看日志,可看到文件内容的打印。实际业务中,用户可根据需要修改代码保存数据到对象存储OBS、日志服务LTS等云服务或直接处理。 图3 查看日志
函数开发简介 函数支持的运行时语言 FunctionGraph函数Runtime支持多种运行时语言:Python 、Node.js、Java、Go、C#、PHP、Cangjie及自定义运行时,说明如表1所示。 建议使用相关语言的最新版本。 表1 运行时说明 运行时语言 支持版本 SDK下载
用户上传的图片和压缩处理后的图片。 OBS桶创建以后,需要创建“委托”,给FunctionGraph函数赋权,确保FunctionGraph函数能够访问到OBS资源。 创建OBS桶 注意事项 上传图片的源桶、输出图片的目标桶和函数必须处于同一个区域下。 必须使用两个不同的桶。如果
用户上传的图片和打水印后输出的图片。 OBS桶创建以后,需要创建委托,给FunctionGraph函数赋权,确保FunctionGraph函数能够访问到OBS资源。 创建OBS桶 注意事项 上传图片的源桶、输出图片的目标桶和函数必须处于同一个区域下。 必须使用两个不同的桶。如果使
pipe(busboy); } 配置函数依赖 制作依赖包。代码中选择busboy库解析上传的文件,需要生成Node.js14.18版本对应的依赖包busboy.zip。如果您使用Node.js语言其他版本,请制作对应版本的依赖包,具体请参考制作依赖包。 创建依赖包。在左侧导航栏“函数 > 依赖包
果调用时error不为空,则函数将返回HandledInitializationError,由于屏蔽了初始化函数的返回值,所以data中的数据是无效的,可以参考上文的示例设置为空。 SDK接口 Context类中提供了许多上下文方法供用户使用,其声明和功能如表1所示。 表1 Context类上下文方法说明
Unauthorized 被请求的页面需要认证。 403 Forbidden 对被请求页面的访问被禁止。 404 Not Found 服务器无法找到被请求的页面。 405 Method Not Allowed 请求中指定的方法不被允许。 406 Not Acceptable 服务器生成的响应无法被客户端所接受。
本节介绍创建Kafka触发器,供用户了解Kafka触发器的使用方法。 使用Kafka触发器后,FunctionGraph会定期轮询Kafka实例指定Topic下的新消息,FunctionGraph将轮询得到的消息作为参数传递来调用函数,关于Kafka触发器的事件源介绍请参见支持的事件源。 分布式消息服务Ka
选择运行时语言。 描述 对于依赖包的描述信息,可以不填。 单击“确定”,完成依赖包的创建。默认首次创建的依赖包版本为“1”。 单击列表中的依赖包名称,进入版本历史界面,可以查看当前依赖包下的所有版本和版本相关信息。当前支持针对同一依赖包,进行不同版本的系统化管理。 单击“创建版本”,填写相关信息,可以创建新的依赖包版本。
Funcurn使用冒号分隔为8个域,region_id为系统配置的值(测试时可以填成与后台相同的值),最后一个中括号的内容表示可以为函数的版本号,也可以为该版本指向的别名,如果为别名时需要在名称前加上感叹号!以示区分。 当作为API参数时,可以提供简化格式的Funcurn,具体如下。 提供1个域:解析
函数仅支持返回如下几种类型的值。 Null:函数返回的HTTP响应Body为空。 string:函数返回的HTTP响应Body内容为该字符串内容。 其他:函数会返回值作为对象进行json编码,并将编码后的内容作为HTTP响应的Body,同时设置响应的“Content-Type”头为“text/plain”。
函数执行完毕,得到返回结果,如图3所示。 图3 返回结果 FunctionGraph函数对APIG调用的传入值为函数自带的事件模板,您可以参见表2。 FunctionGraph函数对来自APIG调用的返回结果进行了封装,APIG触发器要求函数的返回结果中必须包含body(String)、statusCod
获取base64编码前的内容 getUserData() 获取APIG自定义认证中设置的userdata 表2 APIGRequestContext相关方法说明 方法名 方法说明 getApiId() 获取API的ID getRequestId() 获取此次API请求的requestId
添加步骤,只添加“选择部署来源”。 对选择部署来源进行配置。 图3 配置部署来源 主机组:选择主机组deploy-function 选择软件包:输入/functions-deploy-build/${releaseVersion}/deploy.py 下载到主机的部署目录为:/home/function/deploy
函数运行环境中已经默认将代码根目录和根目录下的lib目录加入到LD_LIBRARY_PATH中,只需要将动态链接库放到此处即可。 在代码中直接修改LD_LIBRARY_PATH环境变量。 如果依赖的.so文件放在其他目录,可以在配置页面设置LD_LIBRARY_PATH环境变量指明对应的目录,具体请参考配置环境变量。
t-1121、日志流test-1121的ID,并为函数B添加依赖huaweicloudsdklts,如图3和图4所示。 图3 lts_cleanse.py 图4 为函数B添加依赖包 函数实现的功能是:将收到的日志事件数据进行base64解码,然后提取出包含“WRN”、“WARN”
environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK")