Updated on 2022-02-22 GMT+08:00

Querying the Metadata of a Function

Function

This API is used to query the metadata of a function.

URI

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

Table 1 describes the URI parameters.

Table 1 URI parameters

Parameter

Type

Mandatory

Description

project_id

String

Yes

Project ID.

function_urn

String

Yes

Function URN. See Function Model.

Request

None

Response

Table 2 describes the response parameters.
Table 2 Response parameters

Parameter

Type

Description

func_urn

String

Function URN.

func_name

String

Function name.

domain_id

String

Domain ID.

namespace

String

Tenant's project ID.

project_name

String

Tenant's project name.

package

String

Group to which the function belongs. This field is defined to group functions.

runtime

String

Environment for executing the function. FunctionGraph supports Node.js 6.10, Node.js 8.10, Node.js 10.16, Node.js 12.13, Python 2.7, Python 3.6, Java 8, Go 1.8, C# (.NET Core 2.0), C# (.NET Core 2.1), C# (.NET Core 3.1), and PHP 7.3.

timeout

Int

Maximum duration the function can be executed. Value range: 3s–900s.

handler

String

Handler of the function in the format of "xx.xx". It must contain a period (.).

For example, for Node.js function myfunction.handler, the file name is myfunction.js, and the entry point function is handler.

memory_size

Int

Memory (MB) consumed by the function.

Options: 128, 256, 512, 768, 1024, 1280, 1536, 1792, 2048, 2560, 3072, 3584, and 4096.

cpu

Int

Number of CPU millicores used by the function (1 core = 1000 millicores).

The value of this field is proportional to that of MemorySize. By default, 100 CPU millicores are required for 128 MB memory. The value is calculated as follows: Memory/128 x 100 + 200 (basic CPU millicores).

code_type

String

Function code type. Options:

  • inline: inline code
  • zip: ZIP file
  • jar: JAR file (mainly for Java functions)
  • obs: function code stored in an Object Storage Service (OBS) bucket

code_url

String

  • When code_type is set to obs, this parameter indicates the address of a function code package in OBS.
  • When code_type is set to inline, zip, or jar, this parameter is left blank.

code_filename

String

Function file name.

  • When code_type is set to zip or jar, this parameter is required.
  • When code_type is set to obs or inline, this parameter is not required.

code_size

Int64

Code size in bytes.

user_data

String

Name/Value information defined for the function.

For example, if a function needs to access a host, define Host={host_ip}. You can define a maximum of 20 such parameters, and their total length cannot exceed 4 KB.

digest

String

SHA512 hash value of function code, which is used to determine whether the function is changed.

version

String

Function version, which is automatically generated by the system. The version name is in the format of "vYYYYMMDD-HHMMSS" (v+year/month/day-hour/minute/second).

image_name

String

Internal identifier of a function version.

xrole

String

Agency used by the function. You need to create an agency on the Identity and Access Management (IAM) console. This field is mandatory when a function needs to access other services.

app_xrole

String

Agency used by the function app. You need to create an agency on the IAM console. This field is mandatory when a function needs to access other services.

description

String

Description of the function.

version_description

String

Description of the function version.

last_modified

String

Time when the function was last updated.

depend_list

[]String

Dependency list.

strategy_config

String

Function policy configuration. See Table 3.

extend_config

String

Function extension configuration.

initializer_handler

String

Initializer of the function in the format of "xx.xx". It must contain a period (.).

For example, for Node.js function myfunction.initializer, the file name is myfunction.js, and the initialization function is initializer.

initializer_timeout

Int

Maximum duration the function can be initialized. Value range: 1s–300s.

func_vpc

*String

Virtual Private Cloud (VPC) configuration. See Table 6.

mount_config

*String

Disk mount configuration. See Table 7.

Table 3 strategy_config parameter

Parameter

Type

Mandatory

Description

concurrency

Int

Yes

  • 0: The function is disabled.
  • -1: The function is enabled.

Example

Example request

GET /v2/7aad83af3e8d42e99ac194e8419e2c9b/fgs/functions/urn:fss:xxxxxxxxx:7aad83af3e8d42e99ac194e8419e2c9b:function:default:test:latest/config HTTP/1.1

Example response

The format of the response for a successful request is as follows:

HTTP/1.1 200 OK 
{ 
  "code_filename": "index.js", 
  "code_size": 272, 
  "code_type": "inline", 
  "cpu": 300, 
  "description": "111", 
  "digest": "decbce6939297b0b5ec6d1a23bf9c725870f5e69fc338a89a6a4029264688dc26338f56d08b6535de47f15ad538e22ca66613b9a46f807d50b687bb53fded1c6", 
  "func_name": "test", 
  "func_urn": "urn:fss:xxxxxxxxxx:7aad83af3e8d42e99ac194e8419e2c9b:function:default:test:latest", 
  "handler": "test.handler", 
  "image_name": "latest-5qe8e", 
  "last_modified": "2018-03-28T11:30:32+08:00", 
  "memory_size": 128, 
  "namespace": "7aad83af3e8d42e99ac194e8419e2c9b", 
  "package": "default", 
  "project_name": "xxxxxxxxx", 
  "runtime": "Node.js6.10", 
  "timeout": 3, 
  "user_domain": "cff01_hk", 
  "version": "latest", 
  "xrole": "cff",
  "strategy_config": {
      "concurrency": -1
  },
 }

The format of the response for a failed request is as follows:

HTTP/1.1 404 Not Found 
{ 
  "error_code": "FSS.1051", 
  "error_msg": "Not found the function" 
 }

Status Code

See Status Codes.