检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
扩展API参考 整个扩展进程由用户自己编写,扩展进程中必须完成以下工作才能成功启用扩展功能: 启动一个httpClient,向FunctionGraph函数发送注册请求。 启动一个httpServer,接收FunctionGraph函数发送过来的调用请求。
扩展API 概述 操作步骤 制作扩展依赖包 扩展API参考 如何通过扩展完成SkyWalking的对接 父主题: 扩展及遥测API
当用已编译的语言实现扩展时,在本地编译生成二进制文件;使用非编译的语言实现扩展时,需要把对接第三方平台需要的依赖一起打包上传,且需要函数的运行时兼容。 将skywalking agent直接嵌入到扩展代码中,即可通过扩展完成对函数请求的监控。
制作扩展依赖包 准备一个zip包,zip包中用于扩展进程的编写,可以拉起一个扩展进程,zip包中限制如下: zip包中必须含有extension命名的文件夹,extension的文件夹中必须包含以extension为前缀,.sh文件类型的脚本文件,用于后续扩展启动扩展进程,例如zip
FunctionGraph的函数是否支持功能扩展? FunctionGraph目前已经集成了一些非标准库如:redis、http、obs_client等,开发函数时可以直接使用,详情请参考开发指南。 用户可以通过维护属于自己的依赖代码库,供所有函数使用,请参考依赖包管理。
利用ECS已有的存储能力,可实现计算资源的动态扩展。 函数的临时存储空间/tmp路径下可以写临时文件,最大不能超过10,240MB。
支持的编程语言提供程序包,上传即可运行。
扩展及遥测API 扩展API 遥测API
最多只能创建一个遥测扩展,遥测的端口限制和扩展的端口限制一致,127.0.0.1:8081 ~ 127.0.0.1:8090 。 遥测扩展示例:Telemetry.zip 父主题: 概述
由于扩展作为进程运行,您可以使用不同于函数的语言来编写它们,建议您使用已编译的语言实现扩展。在这种情况下,扩展是一个独立的二进制文件,与支持的运行时兼容。如果使用非编译的语言,请确保和函数的运行时兼容。 当前http和事件类型函数支持扩展的使用,自定义镜像不支持。
FunctionGraph需要使用扩展的完整文件名来验证扩展是否已完成引导启动,且扩展注册的请求头必须包含本扩展启动的httpServer的地址和端口。
操作步骤 创建函数,可参考开发指南中的各个语言函数创建流程,此处不再赘述。 创建依赖包,将扩展依赖包按照依赖包的添加规则添加到要执行的函数。 调用函数,则内部已经启动扩展进程。 父主题: 扩展API
扩展可以使用遥测 API 订阅三种不同的遥测流: 平台遥测:日志、指标和跟踪,描述与执行环境运行时生命周期、扩展生命周期和函数调用相关的事件和错误。 函数日志:FunctionGraph函数代码生成的自定义日志。 扩展日志:FunctionGraph扩展代码生成的自定义日志。
遥测API 概述 父主题: 扩展及遥测API
类别 Event Type 描述 平台事件 platform 函数的执行情况 函数日志 function 来自函数代码的日志 扩展日志 extension 来自扩展代码的日志 platform类型事件包括以下几类: 类别 子类型 含义 数据结构 示例 开始调用事件 platform.initStart
uri为扩展进程中遥测侦听器URI,用于接收FunctionGraph发送的遥测数据,其中PORT可选8081~8090。 Types为您希望扩展订阅的事件类型的信息,可选platform、function、extension。
命令解析 当执行命令alias -h/alias --help时,可以获取帮助文档。 在该命令中,包括了三个子命令: alias get命令 alias list命令 remove alias命令 父主题: 别名alias
别名alias alias命令概览 命令解析 alias get命令 alias list命令 alias publish命令 remove alias命令 父主题: 指令使用方法
版本 version Version命令概览 version list命令 version publish命令 父主题: 指令使用方法
删除remove remove命令 父主题: 指令使用方法