Modificación de los metadatos de una función
Función
Esta API se utiliza para modificar los metadatos de una función.
URI
PUT /v2/{project_id}/fgs/functions/{function_urn}/config
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
project_id |
Sí |
String |
ID del proyecto Mínimo: 0 Máximo: 0 Mínimo: 0 Máximo: 0 |
function_urn |
Sí |
String |
Función URN. Para obtener más información, consulte las descripciones del modelo de función. Mínimo: 0 Máximo: 0 Mínimo: 0 Máximo: 0 |
Parámetros de solicitud
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
func_name |
Sí |
String |
Nombre de la función. |
runtime |
Sí |
String |
Entorno para ejecutar una función. Opciones:
Valores de enumeración:
|
timeout |
Sí |
Integer |
Duración máxima de la función puede ser ejecutada. Rango de valores: 3s–900s. El valor puede ser de hasta 12 horas para los usuarios de la lista blanca. Para obtener más información, comuníquese con el personal de FunctionGraph. |
handler |
Sí |
String |
Manejador de una función en el formato de "xx.xx". Debe contener un período (.). Por ejemplo, para la función de Node.js myfunction.handler, el nombre del archivo es myfunction.js, y la función de manejador es manejador. |
memory_size |
Sí |
Integer |
Memoria consumida por una función. Unidad: MB. El valor puede ser 128, 256, 512, 768, 1024, 1280, 1536, 1792, 2048, 2560, 3072, 3584 o 4096. El valor oscila entre 128 y 4096. |
user_data |
No |
String |
Información de Nombre/Valor definida para la función. Estos son parámetros usados en una función. Por ejemplo, si una función necesita acceder a un host, defina Host={host_ip}. Puede definir un máximo de 20 parámetros de este tipo y su longitud total no puede superar los 4 KB. |
encrypted_user_data |
No |
String |
Nombre/valor definido por el usuario que se va a cifrar. |
xrole |
No |
String |
Agencia utilizada por la función. Es necesario crear una delegación en la consola IAM. Este campo es obligatorio cuando una función necesita acceder a otros servicios. |
app_xrole |
No |
String |
Agencia utilizada por la aplicación de función. Es necesario crear una delegación en la consola IAM. Este campo es obligatorio cuando una función necesita acceder a otros servicios. |
description |
No |
String |
Descripción de la función. |
func_vpc |
No |
FuncVpc object |
Configuración de VPC. |
mount_config |
No |
MountConfig object |
Configuración de montaje. |
strategy_config |
No |
StrategyConfig object |
Configuración de la política de función. |
extend_config |
No |
String |
Configuración extendida. |
initializer_handler |
No |
String |
Inicializador de la función. Está en el formato de "xx.xx" y debe contener un punto (.). Por ejemplo, para la función Node.js myfunction.initializer, el nombre del archivo es myfunction.js, y la función de inicialización es inicializador. |
initializer_timeout |
No |
Integer |
Duración máxima de la función puede ser inicializada. Rango de valores: 1s–300s. |
enterprise_project_id |
No |
String |
ID del proyecto de empresa. Este parámetro es obligatorio si crea una función como usuario de empresa. |
is_stateful_function |
No |
Boolean |
Se admiten funciones con estado o no. Si se admiten, establezca este parámetro en true. Este parámetro es compatible con FunctionGraph v2. |
domain_names |
No |
String |
Nombre de dominio privado. |
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
vpc_name |
Sí |
String |
Nombre de la VPC. |
vpc_id |
Sí |
String |
ID de VPC. |
subnet_name |
Sí |
String |
Nombre de subred |
subnet_id |
Sí |
String |
ID de subred |
cidr |
Sí |
String |
Máscara de subred |
gateway |
Sí |
String |
Gateway. |
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
mount_user |
Sí |
MountUser object |
Información del usuario. |
func_mounts |
Sí |
Array of FuncMount objects |
Recursos montados. |
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
user_id |
Sí |
String |
ID de usuario, un número entero no 0 de –1 a 65534. |
user_group_id |
Sí |
String |
ID de grupo de usuarios, un número entero no 0 de –1 a 65534. |
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
mount_type |
Sí |
String |
Tipo de montaje. El valor puede ser sfs, sfsTurbo o ecs. Este parámetro es obligatorio cuando func_mounts no está vacío. |
mount_resource |
Sí |
String |
ID del recurso montado (ID del servicio en la nube). Este parámetro es obligatorio cuando func_mounts no está vacío. |
mount_share_path |
No |
String |
Ruta de montaje remoto. Por ejemplo, 192.168.0.12:/data. Este parámetro es obligatorio si mount_type se establece en ecs. |
local_mount_path |
Sí |
String |
Ruta de acceso de función. Este parámetro es obligatorio cuando func_mounts no está vacío. |
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
concurrency |
Sí |
Integer |
Número máximo de instancias para una sola función. Para v1, el valor puede ser 0 o –1; para v2, varía de –1 a 1000. |
concurrent_num |
Sí |
Integer |
Número máximo de solicitudes simultáneas para una sola instancia. Este parámetro solo es compatible con v2. El valor oscila entre –1 y 200,000. |
Parámetros de respuesta
Código de estado: 200
Parámetro |
Tipo |
Descripción |
---|---|---|
func_urn |
String |
Función URN. |
func_name |
String |
Nombre de la función. |
domain_id |
String |
ID de dominio. |
namespace |
String |
ID del proyecto |
project_name |
String |
Nombre del proyecto. |
package |
String |
Grupo al que pertenece la función. Este campo se define para agrupar las funciones. |
runtime |
String |
Entorno para ejecutar una función. Opciones:
Valores de enumeración:
|
timeout |
Integer |
Duración máxima de la función puede ser ejecutada. Rango de valores: 3s–900s. El valor puede ser de hasta 12 horas para los usuarios de la lista blanca. Para obtener más información, comuníquese con el personal de FunctionGraph. |
handler |
String |
Manejador de una función en el formato de "xx.xx". Debe contener un período (.). Por ejemplo, para la función de Node.js myfunction.handler, el nombre del archivo es myfunction.js, y la función de manejador es manejador. |
memory_size |
Integer |
Memoria consumida por una función. Unidad: MB. El valor puede ser 128, 256, 512, 768, 1024, 1280, 1536, 1792, 2048, 2560, 3072, 3584 o 4096. El valor oscila entre 128 y 4096. |
cpu |
Integer |
Recursos de CPU de una función. Unidad: milicore (1 núcleo = 1000 millicores). El valor de este campo es proporcional al de "MemorySize". De forma predeterminada, se requieren 100 millicores de CPU para 128 MB de memoria. El valor se calcula de la siguiente manera: Memoria/128 x 100 + 200 (millicores básicos de CPU) |
code_type |
String |
Tipo de código de función. Opciones:
Valores de enumeración:
|
code_url |
String |
Si CodeType está establecido en obs, introduzca la URL OBS del paquete de código de función. Si CodeType no está establecido en obs, deje este parámetro en blanco. |
code_filename |
String |
Nombre de un archivo de función. Este parámetro solo es obligatorio cuando CodeType se establece en jar o zip. |
code_size |
Long |
Tamaño del código en bytes. |
user_data |
String |
Información de Nombre/Valor definida para la función. Estos son parámetros usados en una función. Por ejemplo, si una función necesita acceder a un host, defina Host={host_ip}. Puede definir un máximo de 20 parámetros de este tipo y su longitud total no puede superar los 4 KB. |
encrypted_user_data |
String |
Nombre/valor definido por el usuario que se va a cifrar. |
digest |
String |
Valor hash SHA512 del código de función, que se usa para determinar si la función ha cambiado. |
version |
String |
Versión de la función, que es generada automáticamente por el sistema. El nombre de la versión tiene el formato "vYYYYMMDD-HHMMSS" (v+año/mes/día-hora/minuto/segundo). |
image_name |
String |
Identificador interno de una versión de función. |
xrole |
String |
Agencia utilizada por la función. Es necesario crear una delegación en la consola IAM. Este campo es obligatorio cuando una función necesita acceder a otros servicios. |
app_xrole |
String |
Agencia utilizada por la aplicación de función. Es necesario crear una delegación en la consola IAM. Este campo es obligatorio cuando una función necesita acceder a otros servicios. |
description |
String |
Descripción de la función. |
last_modified |
String |
Hora en la que se actualizó por última vez la función. |
func_vpc |
FuncVpc object |
Configuración de VPC. |
mount_config |
MountConfig object |
Configuración de montaje. |
strategy_config |
StrategyConfig object |
Configuración de la política de función. |
dependencies |
Array of Dependency objects |
Paquetes de dependencias. |
initializer_handler |
String |
Inicializador de la función. Está en el formato de "xx.xx" y debe contener un punto (.). Por ejemplo, para la función Node.js myfunction.initializer, el nombre del archivo es myfunction.js, y la función de inicialización es inicializador. |
initializer_timeout |
Integer |
Duración máxima de la función puede ser inicializada. Rango de valores: 1s–300s. |
enterprise_project_id |
String |
ID del proyecto de empresa. Este parámetro es obligatorio si crea una función como usuario de empresa. |
long_time |
Boolean |
Ya sea para permitir un tiempo de espera largo. |
log_group_id |
String |
ID de grupo de registro. |
log_stream_id |
String |
ID de flujo de registro. |
type |
String |
v2 indica la versión OBT y v1 indica la versión original. Valores de enumeración:
|
enable_dynamic_memory |
Boolean |
Si se debe habilitar la asignación de memoria dinámica. |
is_stateful_function |
Boolean |
Se admiten funciones con estado o no. Si se admiten, establezca este parámetro en true. Este parámetro es compatible con FunctionGraph v2. |
domain_names |
String |
Nombre de dominio privado configurado para la resolución. |
enable_auth_in_header |
Boolean |
Se permite o no la información de autenticación en el encabezado de solicitud. |
custom_image |
CustomImage object |
- |
Parámetro |
Tipo |
Descripción |
---|---|---|
vpc_name |
String |
Nombre de la VPC. |
vpc_id |
String |
ID de VPC. |
subnet_name |
String |
Nombre de subred |
subnet_id |
String |
ID de subred |
cidr |
String |
Máscara de subred |
gateway |
String |
Gateway. |
Parámetro |
Tipo |
Descripción |
---|---|---|
mount_user |
MountUser object |
Información del usuario. |
func_mounts |
Array of FuncMount objects |
Recursos montados. |
Parámetro |
Tipo |
Descripción |
---|---|---|
user_id |
String |
ID de usuario, un número entero no 0 de –1 a 65534. |
user_group_id |
String |
ID de grupo de usuarios, un número entero no 0 de –1 a 65534. |
Parámetro |
Tipo |
Descripción |
---|---|---|
mount_type |
String |
Tipo de montaje. El valor puede ser sfs, sfsTurbo o ecs. Este parámetro es obligatorio cuando func_mounts no está vacío. |
mount_resource |
String |
ID del recurso montado (ID del servicio en la nube). Este parámetro es obligatorio cuando func_mounts no está vacío. |
mount_share_path |
String |
Ruta de montaje remoto. Por ejemplo, 192.168.0.12:/data. Este parámetro es obligatorio si mount_type se establece en ecs. |
local_mount_path |
String |
Ruta de acceso de función. Este parámetro es obligatorio cuando func_mounts no está vacío. |
Parámetro |
Tipo |
Descripción |
---|---|---|
concurrency |
Integer |
Número máximo de instancias para una sola función. Para v1, el valor puede ser 0 o –1; para v2, varía de –1 a 1000. |
concurrent_num |
Integer |
Número máximo de solicitudes simultáneas para una sola instancia. Este parámetro solo es compatible con v2. El valor oscila entre –1 y 200,000. |
Parámetro |
Tipo |
Descripción |
---|---|---|
owner |
String |
ID de dominio del propietario de la dependencia. |
link |
String |
URL de la dependencia en OBS. |
runtime |
String |
Entorno para ejecutar una función. Opciones:
Valores de enumeración:
|
etag |
String |
Valor MD5 de una dependencia. |
size |
Long |
Tamaño de dependencia. |
name |
String |
Nombre de la dependencia. |
description |
String |
Descripción de la dependencia. |
file_name |
String |
Nombre de archivo de un paquete de dependencias (ZIP). |
Parámetro |
Tipo |
Descripción |
---|---|---|
enabled |
Boolean |
Si desea habilitar esta función. |
image |
String |
Dirección de imagen. |
command |
String |
Comando para iniciar una imagen de contenedor. |
args |
String |
Parámetro de línea de comandos para iniciar una imagen de contenedor. |
working_dir |
String |
Directorio de trabajo de un contenedor de imágenes. |
uid |
String |
ID de usuario de un contenedor de imagen. |
gid |
String |
ID de grupo de usuario de un contenedor de imagen. |
Código de estado: 400
Parámetro |
Tipo |
Descripción |
---|---|---|
error_code |
String |
Código de error. Mínimo: 0 Máximo: 0 Mínimo: 0 Máximo: 0 |
error_msg |
String |
Mensaje de error. Mínimo: 0 Máximo: 0 Mínimo: 0 Máximo: 0 |
Código de estado: 401
Parámetro |
Tipo |
Descripción |
---|---|---|
error_code |
String |
Código de error. Mínimo: 0 Máximo: 0 Mínimo: 0 Máximo: 0 |
error_msg |
String |
Mensaje de error. Mínimo: 0 Máximo: 0 Mínimo: 0 Máximo: 0 |
Código de estado: 403
Parámetro |
Tipo |
Descripción |
---|---|---|
error_code |
String |
Código de error. Mínimo: 0 Máximo: 0 Mínimo: 0 Máximo: 0 |
error_msg |
String |
Mensaje de error. Mínimo: 0 Máximo: 0 Mínimo: 0 Máximo: 0 |
Código de estado: 404
Parámetro |
Tipo |
Descripción |
---|---|---|
error_code |
String |
Código de error. Mínimo: 0 Máximo: 0 Mínimo: 0 Máximo: 0 |
error_msg |
String |
Mensaje de error. Mínimo: 0 Máximo: 0 Mínimo: 0 Máximo: 0 |
Código de estado: 500
Parámetro |
Tipo |
Descripción |
---|---|---|
error_code |
String |
Código de error. Mínimo: 0 Máximo: 0 Mínimo: 0 Máximo: 0 |
error_msg |
String |
Mensaje de error. Mínimo: 0 Máximo: 0 Mínimo: 0 Máximo: 0 |
Ejemplo de las solicitudes
Modificar los metadatos de una función.
PUT https://{Endpoint}/v2/{project_id}/fgs/functions/{function_urn}/config
Ejemplo de las respuestas
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 estado
Código de estado |
Descripción |
---|---|
200 |
Aceptar |
400 |
Solicitud incorrecta. |
401 |
No autorizado. |
403 |
Prohibido. |
404 |
No se encontró ninguno. |
500 |
Error de servidor interno. |
Códigos de error
Consulte Códigos de error.