You need to enable JavaScript to run this app.
导航
GetFunction
最近更新时间:2025.01.07 10:41:16首次发布时间:2024.07.08 11:32:09

获取函数详细信息,包含函数配置及函数代码。

请求说明

  • 请求方式:POST
  • 请求地址:http://open.volcengineapi.com/?Action=GetFunction&Version=2024-06-06

调试

请求参数

参数类型是否必选示例值描述
ActionStringGetFunction接口名称。当前 API 的名称为 GetFunction
VersionString2024-06-06接口版本。当前 API 的版本为 2024-06-06
IdStringpqyqo9qa函数 ID。

请求示例

POST http://open.volcengineapi.com/?Action=GetFunction&Version=2024-06-06 HTTP/1.1
Content-Type: application/json
{
    "Id": "pqyqo9qa"
}

返回参数

参数类型示例值描述
IdStringpqyqo9qa函数 ID。
NameStringofficial-site函数名称。
DescriptionString轻量级官网函数描述。
RuntimeStringpython3.8/v1函数运行时。

ExclusiveMode

Boolean

false

独占模式开关。

  • true:关闭单实例多并发,即同一时刻单实例只能处理一个请求的独占模式。
  • false(默认):开启单实例多并发,即同一时刻单实例可处理多个请求的非独占模式,可通过 MaxConcurrency 设置单实例能够承载的最大并发请求数量。
RequestTimeoutInteger30请求超时(单位 秒)。
MaxConcurrencyInteger100单实例最大并发。
MemoryMBInteger1024单实例最大内存。
CodeSizeInteger473代码包大小。

CodeSizeLimit

Integer

256

代码包大小上限。

  • SourceType=zip,CodeSizeLimit=15MB。
  • SourceType=tos,CodeSizeLimit=256MB。
SourceLocationStringhttps://vefaas.tos-s3-cn.volces.com/template_dir/666ad75b9124c400072abcvefaas-python3.9-default.zip?X-Amz******代码/镜像的来源地址。

SourceType

String

tos

代码来源类型,可选值有:

  • tos:火山引擎对象存储
  • zip:本地压缩文件
  • image:火山引擎镜像仓库,支持基础版和企业版。
EnvsArray of EnvVar-函数环境变量。
VpcConfigObject of VpcConfig-VPC 配置。
CreationTimeString2024-06-14 15:31:07.143863441 +0800 CST m=+88714.902440864创建时间。
LastUpdateTimeString2024-06-14 15:31:07.143863491 +0800 CST m=+88714.902440914更新时间。
TlsConfigObject of TlsConfig-函数日志配置。
OwnerString22******函数所有者(账号 Id)。
TriggersCountInteger0该函数的触发器个数。

InstanceType

String

nvidia-tesla-l4

函数实例的实例类型。

  • 空值:CPU 实例.
  • 非空值:GPU 实例。
NasStorageObject of NasStorage-文件存储 NAS 挂载配置。
TosMountConfigObject of TosMountConfig-对象存储 TOS 挂载配置。
InitializerSecInteger30函数初始化超时配置。
CommandString./run.sh实例的自定义启动命令(目前只支持 native/v1 运行时)。
PortInteger8000实例的自定义监听端口(目前只支持 native/v1 运行时)。
CpuStrategyStringalways函数 CPU 计费策略,当微服务应用类型的函数时,该字段为 always,表示至少有一个实例在运行。
ProjectNameStringdefault项目名称

EnvVar

参数类型示例值描述
KeyStringbusiness_type环境变量的 Key。1 ~ 63 个字符,字符中可包含英文、数字以及下划线(_),并且不能以数字开头。同一函数下 Key 唯一。
ValueStringfree环境变量的值。

VpcConfig

参数类型示例值描述
VpcIdStringvpc-3rf8******VPC ID。如果 VPC ID 为空字符串,代表删除当前 VPC 配置。
EnableVpcBooleanfalse函数是否开启私有网络访问。
SubnetIdsArray of Stringsubnet-mj1l******子网 ID。
SecurityGroupIdsArray of Stringsg-rs6s******安全组 ID。

EnableSharedInternetAccess

Boolean

false

函数访问公网开关。是否通过 veFaaS 的 VPC 共享 NAT 网关,访问公网。取值:

  • true:开启,通过默认网卡访问公网。会产生公网出流量费用。
  • false:关闭,函数无法通过默认网卡访问公网。

TlsConfig

参数类型示例值描述

EnableLog

Boolean

false

TLS 日志功能开关。

  • true:开启,函数的 stdout/stderr 日志将被采集至日志服务的指定日志项目和日志主题中。
  • false:关闭,不采集日志。
TlsTopicIdStringtls-vefaas-logstoreTLS 日志主题 ID。
TlsProjectIdStringtls-vefaasTLS 日志项目 ID。

NasStorage

参数类型示例值描述

EnableNas

Boolean

false

是否开启 NAS 存储挂载。

  • true:开启,将数据存储至 NAS。
  • false:不开启。
NasConfigsArray of NasConfig-NAS 存储配置。

TosMountConfig

参数类型示例值描述
EnableTosBooleanfalse是否开启 TOS 存储挂载。
CredentialsObject of Credentials-开启 TOS 后需要提供具有 TOS 域名访问权限的 AKSK。
MountPointsArray of TosMountPoint-开启 TOS 后需要提供 TOS 存储配置列表,最多不超过 5 个。

NasConfig

参数类型示例值描述
GidLong1000文件系统中的用户组,暂时不支持自定义,如果提供该参数,参数值 1000(和函数 run user gid 保持一致)。
UidLong1000文件系统中的用户,暂时不支持自定义,如果提供该参数,参数值只能为 1000(和函数 run user uid 保持一致)。
RemotePathString/文件系统远端目录。长度 1-128 个字符,只能以“/”开头,支持大小写字母、数字和特殊字符(- . _ ~ / : @ = + ? # )。
FileSystemIdStringenas-cns******NAS 文件系统 ID。
MountPointIdStringmount-63******NAS 挂载点 ID。
LocalMountPathString/mnt/nas函数本地挂载目录。长度 1-128 个字符,只能以“/”开头,支持大小写字母、数字和特殊字符(- . _ ~ / : @ = + ? # )。

Credentials

参数类型示例值描述
AccessKeyIdString******火山引擎账号的 AccessKey ID(AK)。获取方式,请参见 访问密钥使用指南
SecretAccessKeyString******火山引擎账号的 Secret Access Key(SK)。获取方式,请参见 访问密钥使用指南

TosMountPoint

参数类型示例值描述
EndpointStringhttp://tos-cn-beijing.ivolces.comTOS 访问域名。

ReadOnly

Boolean

true

函数本地目录访问权限,挂载 TOS Bucket后,函数本地挂载目录的访问权限是否为只读。

  • true:只读
  • false(默认):读写
BucketNameStringai-modelTOS 存储桶。
BucketPathString/挂载的 TOS Bucket 路径。
LocalMountPathString/mnt/tos函数本地挂载目录。

返回示例

HTTP/1.1 200 OK
Content-Type: application/json
{
    "ResponseMetadata": {
        "RequestId": "202306041104231",
        "Action": "GetFunction",
        "Version": "2024-06-06",
        "Service": "vefaas",
        "Region": "cn-beijing"
    },
    "Result": {
        "Id": "pqyqo9qa",
        "Name": "official-site",
        "Description": "轻量级官网",
        "Runtime": "python3.8/v1",
        "ExclusiveMode": true,
        "RequestTimeout": 30,
        "MaxConcurrency": 100,
        "MemoryMB": 1024,
        "CodeSize": 473,
        "CodeSizeLimit": 256,
        "SourceLocation": "https://vefaas.tos-s3-cn.volces.com/template_dir/666ad75b9124c400072abcvefaas-python3.9-default.zip?X-Amz-******",
        "SourceType": "tos",
        "Envs": [
            {
                "Key": "business_type",
                "Value": "free"
            }
        ],
        "VpcConfig": {
            "EnableVpc": true,
            "VpcId": "vpc-rrag******",
            "SubnetIds": [
                "subnet-milb******"
            ],
            "SecurityGroupIds": [
                "sg-rra******"
            ],
            "EnableSharedInternetAccess": true
        },
        "CreationTime": "2024-06-14 15:31:07.143863441 +0800 CST m=+88714.902440864",
        "LastUpdateTime": "2024-06-14 15:31:07.143863491 +0800 CST m=+88714.902440914",
        "TlsConfig": {
            "EnableLog": true,
            "TlsProjectId": "a40202c5-fe22-4ea7******",
            "TlsTopicId": "2ff955cb-1f03-4b9b-******"
        },
        "ResourcePoolId": "ujdsugabcd",
        "Owner": "1400001234",
        "TriggersCount": 0,
        "UseStatus": "normal",
        "DebugInstanceEnable": true,
        "InstanceType": "unlocked",
        "NasStorage": {
            "EnableNas": true,
            "NasConfigs": [
                {
                    "FileSystemId": "cnas-cnbj******",
                    "MountPointId": "mount-bce15678",
                    "RemotePath": "/",
                    "LocalMountPath": "/mnt/nas",
                    "Uid": 1000,
                    "Gid": 1000
                }
            ]
        },
        "TosMountConfig": {
            "EnableTos": true,
            "MountPoints": [
                {
                    "Endpoint": "http://tos-cn-beijing.ivolces.com",
                    "BucketName": "ai-models",
                    "BucketPath": "/",
                    "LocalMountPath": "/mnt/tos",
                    "ReadOnly": false
                }
            ]
        },
        "InitializerSec": 30
    }
}

错误码

当前接口暂无独立错误码,若接口调用返回异常,可参考 公共错误码 进行故障排查。