Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2022-11-08 GMT+08:00

Modificação dos metadados de uma função

Função

Esta API é usada para modificar os metadados de uma função.

URI

PUT /v2/{project_id}/fgs/functions/{function_urn}/config

Tabela 1 Parâmetros de caminho

Parâmetro

Obrigatório

Tipo

Descrição

project_id

Sim

String

ID do projeto.

Mínimo: 0

Máximo: 0

Mínimo: 0

Máximo: 0

function_urn

Sim

String

o URN da função. Para obter detalhes, consulte as descrições do modelo de função.

Mínimo: 0

Máximo: 0

Mínimo: 0

Máximo: 0

Parâmetros de solicitação

Tabela 2 Parâmetros do corpo da solicitação

Parâmetro

Obrigatório

Tipo

Descrição

func_name

Sim

String

Nome da função.

runtime

Sim

String

Ambiente para execução de uma função. Opções:

  • Python2.7
  • Python3.6
  • Python3.9
  • Go1.8
  • Go1.x
  • Java8
  • Java11
  • Node.js6.10
  • Node.js8.10
  • Node.js10.16
  • Node.js12.13
  • Node.js14.18
  • C#(.NET Core 2.0)
  • C#(.NET Core 2.1)
  • C#(.NET Core 3.1)
  • Custom
  • PHP7.3

Valores de enumeração:

  • Java8
  • Java11
  • Node.js6.10
  • Node.js8.10
  • Node.js10.16
  • Node.js12.13
  • Node.js14.18
  • Python2.7
  • Python3.6
  • Go1.8
  • Go1.x
  • C#(.NET Core 2.0)
  • C#(.NET Core 2.1)
  • C#(.NET Core 3.1)
  • PHP7.3
  • Python3.9

timeout

Sim

Integer

Duração máxima que a função pode ser executada. Faixa de valor: 3s–900s. O valor pode ser de até 12 horas para usuários na lista de permissões. Para obter detalhes, entre em contato com o pessoal do FunctionGraph.

handler

Sim

String

Manipulador de uma função no formato "xx.xx". Deve conter um ponto (.).

Por exemplo, para a função myfunction.handler do Node.js, o nome do arquivo é myfunction.js, e a função do manipulador é handler.

memory_size

Sim

Integer

Memória consumida por uma função.

Unidade: MB.

O valor pode ser 128, 256, 512, 768, 1024, 1280, 1536, 1792, 2048, 2560, 3072, 3584 ou 4096.

O valor varia de 128 a 4096.

user_data

Não

String

Informações de nome/valor definidas para a função.

Estes são parâmetros usados em uma função.

Por exemplo, se uma função precisa acessar um host, defina Host={host_ip}. Você pode definir um máximo de 20 desses parâmetros, e seu comprimento total não pode exceder 4 KB.

encrypted_user_data

Não

String

Nome/valor definido pelo usuário a ser criptografado.

xrole

Não

String

Agência utilizada pela função. Você precisa criar uma agência no console do IAM. Este campo é obrigatório quando uma função precisa acessar outros serviços.

app_xrole

Não

String

Agência usada pelo aplicativo da função. Você precisa criar uma agência no console do IAM. Este campo é obrigatório quando uma função precisa acessar outros serviços.

description

Não

String

Descrição da função.

func_vpc

Não

FuncVpc object

Configuração da VPC.

mount_config

Não

MountConfig object

Configuração de montagem.

strategy_config

Não

StrategyConfig object

Configuração da política de função.

extend_config

Não

String

Configuração estendida.

initializer_handler

Não

String

Inicializador da função. Está no formato "xx.xx" e deve conter um ponto (.).

Por exemplo, para a função myfunction.initializer do Node.js, o nome do arquivo é myfunction.js, e a função de inicialização é inicializador.

initializer_timeout

Não

Integer

Duração máxima que a função pode ser inicializada. Faixa de valor: 1s–300s.

enterprise_project_id

Não

String

ID do projeto empresarial. Este parâmetro é obrigatório se você criar uma função como um usuário enterprise.

is_stateful_function

Não

Boolean

Se as funções stateful são suportadas. Se forem suportados, defina este parâmetro como true. Este parâmetro é suportado no FunctionGraph v2.

domain_names

Não

String

Nome de domínio privado.

Tabela 3 FuncVpc

Parâmetro

Obrigatório

Tipo

Descrição

vpc_name

Sim

String

Nome da VPC.

vpc_id

Sim

String

ID de VPC

subnet_name

Sim

String

Nome da sub-rede.

subnet_id

Sim

String

ID da sub-rede.

cidr

Sim

String

Máscara de sub-rede.

gateway

Sim

String

Gateway.

Tabela 4 MountConfig

Parâmetro

Obrigatório

Tipo

Descrição

mount_user

Sim

MountUser object

Informações do usuário.

func_mounts

Sim

Array of FuncMount objects

Recursos montados.

Tabela 5 MountUser

Parâmetro

Obrigatório

Tipo

Descrição

user_id

Sim

String

ID do usuário, um número inteiro não-0 de –1 a 65534.

user_group_id

Sim

String

ID do grupo de usuários, um número inteiro não-0 de –1 a 65534.

Tabela 6 FuncMount

Parâmetro

Obrigatório

Tipo

Descrição

mount_type

Sim

String

Tipo de montagem. O valor pode ser sfs, sfsTurbo ou ecs. Este parâmetro é obrigatório quando func_mounts não está vazio.

mount_resource

Sim

String

ID do recurso montado (ID do serviço de nuvem). Este parâmetro é obrigatório quando func_mounts não está vazio.

mount_share_path

Não

String

Caminho de montagem remoto. Por exemplo, 192.168.0.12:/data. Este parâmetro é obrigatório se mount_type estiver definido como ecs.

local_mount_path

Sim

String

Caminho de acesso à função. Este parâmetro é obrigatório quando func_mounts não está vazio.

Tabela 7 StrategyConfig

Parâmetro

Obrigatório

Tipo

Descrição

concurrency

Sim

Integer

Número máximo de instâncias para uma única função. Para v1, o valor pode ser 0 ou –1; para v2, varia de –1 a 1000.

concurrent_num

Sim

Integer

Número máximo de solicitações simultâneas para uma única instância. Este parâmetro é suportado apenas pela v2. O valor varia de –1 a 200.000.

Parâmetros de resposta

Código de estado: 200

Tabela 8 Parâmetros do corpo de resposta

Parâmetro

Tipo

Descrição

func_urn

String

o URN da função.

func_name

String

Nome da função.

domain_id

String

ID do domínio.

namespace

String

ID do projeto.

project_name

String

Nome do projeto.

package

String

Grupo ao qual a função pertence. Este campo é definido para agrupar funções.

runtime

String

Ambiente para execução de uma função. Opções:

  • Python2.7
  • Python3.6
  • Python3.9
  • Go1.8
  • Go1.x
  • Java8
  • Java11
  • Node.js6.10
  • Node.js8.10
  • Node.js10.16
  • Node.js12.13
  • Node.js14.18
  • C#(.NET Core 2.0)
  • C#(.NET Core 2.1)
  • C#(.NET Core 3.1)
  • Custom
  • PHP7.3

Valores de enumeração:

  • Java8
  • Java11
  • Node.js6.10
  • Node.js8.10
  • Node.js10.16
  • Node.js12.13
  • Node.js14.18
  • Python2.7
  • Python3.6
  • Go1.8
  • Go1.x
  • C#(.NET Core 2.0)
  • C#(.NET Core 2.1)
  • C#(.NET Core 3.1)
  • PHP7.3
  • Python3.9

timeout

Integer

Duração máxima que a função pode ser executada. Faixa de valor: 3s–900s. O valor pode ser de até 12 horas para usuários na lista de permissões. Para obter detalhes, entre em contato com o pessoal do FunctionGraph.

handler

String

Manipulador de uma função no formato "xx.xx". Deve conter um ponto (.).

Por exemplo, para a função myfunction.handler do Node.js, o nome do arquivo é myfunction.js, e a função do manipulador é handler.

memory_size

Integer

Memória consumida por uma função.

Unidade: MB.

O valor pode ser 128, 256, 512, 768, 1024, 1280, 1536, 1792, 2048, 2560, 3072, 3584 ou 4096.

O valor varia de 128 a 4096.

cpu

Integer

Recursos de CPU de uma função.

Unidade: millicore (1 núcleo = 1000 millicores).

O valor deste campo é proporcional ao de MemorySize. Por padrão, são necessários 100 millicores de CPU para 128 MB de memória.

O valor é calculado da seguinte forma: Memória/128 x 100 + 200 (millicores básicos da CPU)

code_type

String

Tipo de código da função. Opções:

  • inline: código em linha.
  • zip: Arquivo ZIP.
  • obs: código de função armazenado em um bucket do OBS.
  • jar: Arquivo JAR, para funções Java.

Valores de enumeração:

  • inline
  • zip
  • obs
  • jar

code_url

String

Se CodeType estiver definido como obs, insira a URL OBS do pacote de código de função. Se CodeType não estiver definido como obs, deixe este parâmetro em branco.

code_filename

String

Nome de um arquivo de função. Este parâmetro é obrigatório somente quando CodeType é definido como jar ou zip.

code_size

Long

Tamanho do código em bytes.

user_data

String

Informações de nome/valor definidas para a função.

Estes são parâmetros usados em uma função.

Por exemplo, se uma função precisa acessar um host, defina Host={host_ip}. Você pode definir um máximo de 20 desses parâmetros, e seu comprimento total não pode exceder 4 KB.

encrypted_user_data

String

Nome/valor definido pelo usuário a ser criptografado.

digest

String

O valor de hash SHA512 do código da função, que é usado para determinar se a função foi alterada.

version

String

Versão da função, que é gerada automaticamente pelo sistema. O nome da versão está no formato "vAAAAMMDD-HHMMSS" (v+ano/mês/dia-hora/minuto/segundo).

image_name

String

Identificador interno de uma versão de função.

xrole

String

Agência utilizada pela função. Você precisa criar uma agência no console do IAM. Este campo é obrigatório quando uma função precisa acessar outros serviços.

app_xrole

String

Agência usada pelo aplicativo da função. Você precisa criar uma agência no console do IAM. Este campo é obrigatório quando uma função precisa acessar outros serviços.

description

String

Descrição da função.

last_modified

String

Hora em que a função foi atualizada pela última vez.

func_vpc

FuncVpc object

Configuração da VPC.

mount_config

MountConfig object

Configuração de montagem.

strategy_config

StrategyConfig object

Configuração da política de função.

dependencies

Array of Dependency objects

Pacotes de dependência.

initializer_handler

String

Inicializador da função. Está no formato "xx.xx" e deve conter um ponto (.).

Por exemplo, para a função myfunction.initializer do Node.js, o nome do arquivo é myfunction.js, e a função de inicialização é inicializador.

initializer_timeout

Integer

Duração máxima que a função pode ser inicializada. Faixa de valor: 1s–300s.

enterprise_project_id

String

ID do projeto empresarial. Este parâmetro é obrigatório se você criar uma função como um usuário enterprise.

long_time

Boolean

Se permitir um tempo limite longo.

log_group_id

String

ID do grupo de log.

log_stream_id

String

ID do fluxo de log.

type

String

v2 indica a versão OBT e v1 indica a versão original.

Valores de enumeração:

  • v1
  • v2

enable_dynamic_memory

Boolean

Se deve ativar a alocação dinâmica de memória.

is_stateful_function

Boolean

Se as funções stateful são suportadas. Se forem suportados, defina este parâmetro como true. Este parâmetro é suportado no FunctionGraph v2.

domain_names

String

Nome de domínio privado configurado para resolução.

enable_auth_in_header

Boolean

Se permitir informações de autenticação no cabeçalho da solicitação.

custom_image

CustomImage object

-

Tabela 9 FuncVpc

Parâmetro

Tipo

Descrição

vpc_name

String

Nome da VPC.

vpc_id

String

ID de VPC

subnet_name

String

Nome da sub-rede.

subnet_id

String

ID da sub-rede.

cidr

String

Máscara de sub-rede.

gateway

String

Gateway.

Tabela 10 MountConfig

Parâmetro

Tipo

Descrição

mount_user

MountUser object

Informações do usuário.

func_mounts

Array of FuncMount objects

Recursos montados.

Tabela 11 MountUser

Parâmetro

Tipo

Descrição

user_id

String

ID do usuário, um número inteiro não-0 de –1 a 65534.

user_group_id

String

ID do grupo de usuários, um número inteiro não-0 de –1 a 65534.

Tabela 12 FuncMount

Parâmetro

Tipo

Descrição

mount_type

String

Tipo de montagem. O valor pode ser sfs, sfsTurbo ou ecs. Este parâmetro é obrigatório quando func_mounts não está vazio.

mount_resource

String

ID do recurso montado (ID do serviço de nuvem). Este parâmetro é obrigatório quando func_mounts não está vazio.

mount_share_path

String

Caminho de montagem remoto. Por exemplo, 192.168.0.12:/data. Este parâmetro é obrigatório se mount_type estiver definido como ecs.

local_mount_path

String

Caminho de acesso à função. Este parâmetro é obrigatório quando func_mounts não está vazio.

Tabela 13 StrategyConfig

Parâmetro

Tipo

Descrição

concurrency

Integer

Número máximo de instâncias para uma única função. Para v1, o valor pode ser 0 ou –1; para v2, varia de –1 a 1000.

concurrent_num

Integer

Número máximo de solicitações simultâneas para uma única instância. Este parâmetro é suportado apenas pela v2. O valor varia de –1 a 200.000.

Tabela 14 Dependência

Parâmetro

Tipo

Descrição

owner

String

ID do domínio do proprietário da dependência.

link

String

URL da dependência no OBS.

runtime

String

Ambiente para execução de uma função. Opções:

  • Python2.7
  • Python3.6
  • Python3.9
  • Go1.8
  • Go1.x
  • Java8
  • Java11
  • Node.js6.10
  • Node.js8.10
  • Node.js10.16
  • Node.js12.13
  • Node.js14.18
  • C#(.NET Core 2.0)
  • C#(.NET Core 2.1)
  • C#(.NET Core 3.1)
  • Custom
  • PHP7.3

Valores de enumeração:

  • Java8
  • Java11
  • Node.js6.10
  • Node.js8.10
  • Node.js10.16
  • Node.js12.13
  • Node.js14.18
  • Python2.7
  • Python3.6
  • Go1.8
  • Go1.x
  • C#(.NET Core 2.0)
  • C#(.NET Core 2.1)
  • C#(.NET Core 3.1)
  • PHP7.3
  • Python3.9

etag

String

Valor MD5 de uma dependência.

size

Long

Tamanho da dependência.

name

String

Nome da dependência.

description

String

Descrição da dependência.

file_name

String

Nome do arquivo de um pacote de dependências (ZIP).

Tabela 15 CustomImage

Parâmetro

Tipo

Descrição

enabled

Boolean

Se deve ativar esse recurso.

image

String

Endereço da imagem.

command

String

Comando para iniciar uma imagem de contêiner.

args

String

Parâmetro de linha de comando para iniciar uma imagem de contêiner.

working_dir

String

Diretório de trabalho de um contêiner de imagem.

uid

String

ID de usuário de um contêiner de imagem.

gid

String

ID do grupo de usuários de um contêiner de imagem.

Código de estado: 400

Tabela 16 Parâmetros do corpo de resposta

Parâmetro

Tipo

Descrição

error_code

String

Código de erro.

Mínimo: 0

Máximo: 0

Mínimo: 0

Máximo: 0

error_msg

String

Mensagem de erro.

Mínimo: 0

Máximo: 0

Mínimo: 0

Máximo: 0

Código de estado: 401

Tabela 17 Parâmetros do corpo de resposta

Parâmetro

Tipo

Descrição

error_code

String

Código de erro.

Mínimo: 0

Máximo: 0

Mínimo: 0

Máximo: 0

error_msg

String

Mensagem de erro.

Mínimo: 0

Máximo: 0

Mínimo: 0

Máximo: 0

Código de estado: 403

Tabela 18 Parâmetros do corpo de resposta

Parâmetro

Tipo

Descrição

error_code

String

Código de erro.

Mínimo: 0

Máximo: 0

Mínimo: 0

Máximo: 0

error_msg

String

Mensagem de erro.

Mínimo: 0

Máximo: 0

Mínimo: 0

Máximo: 0

Código de estado: 404

Tabela 19 Parâmetros do corpo de resposta

Parâmetro

Tipo

Descrição

error_code

String

Código de erro.

Mínimo: 0

Máximo: 0

Mínimo: 0

Máximo: 0

error_msg

String

Mensagem de erro.

Mínimo: 0

Máximo: 0

Mínimo: 0

Máximo: 0

Código de estado: 500

Tabela 20 Parâmetros do corpo de resposta

Parâmetro

Tipo

Descrição

error_code

String

Código de erro.

Mínimo: 0

Máximo: 0

Mínimo: 0

Máximo: 0

error_msg

String

Mensagem de erro.

Mínimo: 0

Máximo: 0

Mínimo: 0

Máximo: 0

Exemplos de solicitações

Modificar os metadados de uma função.

PUT https://{Endpoint}/v2/{project_id}/fgs/functions/{function_urn}/config

{
  "func_name" : "fgsSdkTest-20220831080525",
  "handler" : "index.handler",
  "memory_size" : 768,
  "runtime" : "Node.js6.10",
  "timeout" : 40
}

Exemplo de respostas

Código de estado: 200

OK

{
  "func_urn" : "urn:fss:xxxxxxxx:7aad83af3e8d42e99ac194e8419e2c9b:function:default:test",
  "func_name" : "test",
  "domain_id" : "14ee2e3501124efcbca7998baa24xxxx",
  "namespace" : "46b6f338fc3445b8846c71dfb1fbxxxx",
  "project_name" : "xxxxxx",
  "package" : "default",
  "runtime" : "Node.js6.10",
  "timeout" : 3,
  "handler" : "fssExampleCsharp2.1::fssExampleCsharp21.Program::MyFunc",
  "memory_size" : 128,
  "cpu" : 300,
  "code_type" : "inline",
  "code_filename" : "index.js",
  "code_size" : 272,
  "digest" : "faa825575c45437cddd4e369bea69893bcbe195d478178462ad90984fe72993f3f59d15f41c5373f807f3e05fb9af322c55dabeb16565c386e402413458e6068",
  "version" : "latest",
  "image_name" : "latest-191025153727@zehht",
  "last_modified_utc" : 1571989047,
  "last_modified" : "2019-10-25T15:37:27+08:00",
  "func_code" : { },
  "strategy_config" : {
    "concurrency" : 0
  }
}

Códigos de status

Código de status

Descrição

200

OK

400

Solicitação inválida.

401

Não autorizado.

403

Proibido.

404

Não encontrado.

500

Erro de servidor interno.

Códigos de erro

Consulte Códigos de erro.