- What's New
- Function Overview
- Service Overview
- Billing
-
Getting Started
- Getting Started with Common Practices
- Creating a Function from Scratch and Executing the Function
- Creating a Function Using a Template and Executing the Function
- Creating an HTTP Function Using a Container Image and Executing the Function
- Creating an Event Function Using a Container Image and Executing the Function
-
User Guide
- Process of Using FunctionGraph
- Creating a User and Granting Permissions
- Supported Runtimes
- Creating a Function
-
Configuring Functions
- Overview
- Configuring Function Code
- Configuring Dependencies
- Configuring Agency Permissions
- Configuring Networks
-
Configuring Triggers
- Overview
- Timer Trigger
- API Gateway (Dedicated) Trigger
- API Connect (APIC) Trigger
- Cloud Trace Service (CTS) Trigger
- Document Database Service (DDS) Trigger (Offline Soon)
- Data Ingestion Service (DIS) Trigger
- DMS (for Kafka) Trigger
- Kafka (Open-Source) Trigger
- DMS (for RabbitMQ) Trigger
- GeminiDB Mongo Trigger
- IoT Device Access (IoTDA) Trigger
- Log Tank Service (LTS) Trigger
- Simple Message Notification (SMN) Trigger
- Object Storage Service (OBS) Trigger
- EventGrid Trigger (OBS Application Service)
- DMS (for HC.RocketMQ) Trigger
- DMS (for HC.RabbitMQ) Trigger
- Managing Function Triggers
- Debugging Functions Online
- Invoking the Function
-
Managing Functions
- Initialization
- Basic Settings
- Disk Mounting
- Environment Variables
- Asynchronous Notification Policy
- Concurrency
- Versions
- Aliases
- Tags
- Dynamic Memory
- Heartbeat Function
- Snapshot-based Cold Start
- WebSocket
- Streaming Response
- Class Isolation and Pre-stop for Java Functions
- Transferring Secret Keys Through the Request Header
- Importing and Exporting Functions
- Enabling or Disabling Functions
- Reserved Instances
- Sharing Functions Based on RAM
-
Configuring Function Flows
- Creating a Flow
- Starting a Flow
-
Configuring Function a Flow Component
- Configuring a Function Component
- Configuring a Subflow Processor
- Configuring a Parallel Branch Processor
- Configuring a Start Processor
- Configuring an Error Handling Processor
- Configuring a Loop Processor
- Configuring a Wait Processor
- Configuring a Service Processor
- Configuring a Conditional Branch Processor
- Managing Function Flows
- Deploying the Function Application Using a Template
- Managing Functions Using KooCLI
- Applying for More FunctionGraph Quotas
- Viewing Metrics and Configuring Alarms
- Querying Audit Logs
-
Best Practices
- FunctionGraph Best Practices
- Performance Optimization and Security Practices
-
Data Processing Practices
- Using FunctionGraph to Compress Images in OBS
- Using FunctionGraph to Watermark Images in OBS
- Using FunctionGraph to Convert DIS Data Format and Store the Data to CloudTable
- Uploading Files Using APIs in FunctionGraph
- Converting Device Coordinate Data in IoTDA
- Using FunctionGraph to Encrypt and Decrypt Files in OBS
- Identifying Abnormal Service Logs in LTS and Storing Them in OBS
- Using FunctionGraph to Filter Logs in LTS in Real Time
- Using FunctionGraph to Rotate Images Stored in OBS
- Using FunctionGraph to Compress and Watermark Images
-
Functional Application Practices
- Using FunctionGraph and CTS to Identify Login and Logout Operations from Invalid IP Addresses
- Using FunctionGraph to Periodically Start and Stop ECSs
- Using FunctionGraph Functions As the Backend to Implement APIG Custom Authorizers
- Using FunctionGraph HTTP Functions to Process gRPC Requests
- Using a Java Function and Log4j2 to Print Logs
-
Using FunctionGraph to Deploy Stable Diffusion for AI Drawing
- Introduction
- Resource and Cost Planning
- Procedure
- Deploying and Using the Stable Diffusion Application
- (Optional) Binding a Custom Domain Name
- (Optional) Uploading a Custom Model
- (Advanced) Using ECS as an NFS Server to Isolate Resources of Multiple Users
- (Advanced) Mounting an SFS File System to Multiple Users
- (Advanced) Enabling WebUI Authentication
- (Advanced) Accessing Applications Using APIs
- Disclaimer
- Deploying an MCP Server Using FunctionGraph
- Function Building Practices
-
Developer Guide
- Overview
- Initializer
- Node.js
- Python
- Java
- Go
- C#
- PHP
- Development Tools
- Automated Deployment
-
API Reference
- Before You Start
- API Overview
- Calling APIs
- Examples
- Extension and OpenTelemetry APIs
-
APIs
- Function Invocation
- Function Quotas
- Dependencies
- Test Events
- Function Tracing
-
Function Lifecycle Management
- Querying Functions
- Creating a Function
- Deleting a Function or Function Version
- Querying the Code of a Function
- Modifying the Code of a Function
- Querying the Metadata of a Function
- Modifying the Metadata of a Function
- Updating Max. Instances of a Function
- Querying Function Tags
- Enabling or Disabling the Snapshot Function
- Querying ServiceBridge Functions Bound to a Specified Function
- Querying Snapshot Status
- Querying Resource Tags
- Querying Resources
- Deleting Resource Tags
- Creating Resource Tags
- Creating a VPC Endpoint
- Deleting a VPC Endpoint
- Updating the Pinning Status of a Function
- Querying the Available ServiceBridge Version(Discarded)
- Versions and Aliases
- Function Metrics
- Function Logs
- Function Templates
- Reserved Instances
- Function Import and Export
- Function Triggers
-
Function Flows
- Executing a Flow Synchronously
- Executing a Flow Asynchronously
- Deleting Flows
- Querying a Flow
- Creating a Flow
- Querying Instances of a Flow
- Querying a Flow Instance
- Querying Metadata of a Flow Instance
- Modifying Metadata of a Flow Instance
- Querying Flow Metrics
- Querying Metrics of a Flow
- Re-executing a Flow
- Stopping a Flow
- Querying Records of a Flow in Pagination Mode
- Calling Back a Flow
-
Asynchronous Execution Notification
- Querying Asynchronous Execution Notification Settings of a Function Version
- Deleting Asynchronous Execution Notification Settings
- Configuring Asynchronous Execution Notification
- Querying Asynchronous Execution Notification Settings of a Function's All Versions
- Querying Asynchronous Invocation Requests
- Querying Active Asynchronous Invocation Requests
- Stopping an Asynchronous Invocation Request
- Permissions Policies and Supported Actions
- Appendix
- Change History
- SDK Reference
-
FAQs
-
General FAQs
- What Is FunctionGraph?
- Do I Need to Apply for Any Compute, Storage, or Network Services When Using FunctionGraph?
- Do I Need to Deploy My Code After Programming?
- How Do I Obtain a Token?
- What Runtimes Does FunctionGraph Support?
- How Much Disk Space Is Allocated to Each FunctionGraph Function?
- Does FunctionGraph Support Function Versioning?
- How Does a Function Read or Write Files?
- How Do I Set a Proxy When Using CLI?
- Does FunctionGraph Support Function Extension?
- Which Permissions Are Required for an IAM User to Use FunctionGraph?
- How Can I Create an ODBC Drive-based Python Dependency Package for Database Query?
- What Is the Quota of FunctionGraph?
- What Chinese Fonts Does FunctionGraph Support?
- How Does FunctionGraph Implement Domain Name Resolution?
- How Do I Use a Domain Name to Access an API Registered with API Gateway (Dedicated)?
- What Are the Common Application Scenarios of FunctionGraph?
- Why Can't the API Gateway Domain Name Bound to a Service Be Resolved During Function Invocation?
- Does FunctionGraph Support Synchronous Transmission at the Maximum Intranet Bandwidth?
- What If the VPC Quota Is Used Up?
- How Can I Print Info, Error, or Warn Logs?
- Can I Set the Domain Name of an API to My Own Domain Name?
- Can I Change the Runtime?
- Can I Change a Function's Name?
- Why Is Message "failed to mount exist system path" Displayed?
- How Do I Obtain Uploaded Files?
- Why Can't I Receive Responses for Synchronous Invocation?
- What Should I Do If the os.system("command &") Execution Logs Are Not Collected?
- Which Directories Can Be Accessed When a Custom Runtime Is Used?
- Which Minor Versions of Python 3.6 and 3.9 Are Supported?
- Which Actions Can Be Used Instead of a VPC Administrator Agency for VPC Access?
- What Are the Possible Causes for Function Timeout?
- How Do I Obtain the Code of a Function?
- Do You Have Sample Code for Initializers?
- How Do I Enable Structured Log Query?
- Can I Enable a Listening Port in a Function to Receive External TCP Requests via EIP?
- Does FunctionGraph Support Domain Name Resolution?
- How Do I Obtain the Source IP Address of an HTTP Request Initiated by a Function?
- Function Creation FAQs
-
Trigger Management FAQs
- What Events Can Trigger a FunctionGraph Function?
- What If Error Code 500 Is Reported When Functions that Use APIG Triggers Return Strings?
- What Do LATEST and TRIM_HORIZON Mean in DIS Trigger Configuration?
- How Do I Use an APIG Trigger to Invoke a Function?
- How Does a Function Obtain the Request Path or Parameters When Using an APIG Trigger?
- Can I Configure a Kafka Trigger in a Different Subnet from My Function?
-
Dependency Management FAQs
- What Is a Dependency?
- When Do I Need a Dependency?
- What Are the Precautions for Using a Dependency?
- What Dependencies Does FunctionGraph Support?
- Does FunctionGraph Support Class Libraries?
- How Do I Use Third-Party Dependencies on FunctionGraph?
- How Do I Create Function Dependencies?
- How Do I Create a Dependency on the FunctionGraph Console?
- How Do I Add a Dependency to a Function?
-
Function Execution FAQs
- How Long Does It Take to Execute a FunctionGraph Function?
- Which Steps Are Included in Function Execution?
- How Does FunctionGraph Process Concurrent Requests?
- What If Function Instances Have Not Been Executed for a Long Time?
- How Can I Speed Up Initial Access to a Function?
- How Do I Know the Actual Memory Used for Function Execution?
- Why Is My First Request Slow?
- What Do I Do If an Error Occurs When Calling an API?
- How Do I Read the Request Header of a Function?
- Can the Synchronous Execution Interface Be Invoked on a Private Network?
- How Do I Check the Memory Usage When Seeing "runtime memory limit exceeded"?
- How Do I Troubleshoot "CrashLoopBackOff"?
- After I Updated an Image with the Same Name, Reserved Instances Still Use the Old Image. What Can I Do?
- Function Configuration FAQs
- External Resource Access FAQs
-
Other FAQs
- How Do I View the Alarm Rules Configured for a Function?
- Does FunctionGraph Support ZIP Decompiling During Video Transcoding?
- Will Resources Created During FunctionGraph 2.0 OBT Be Automatically Released When They Expire? Will Them Be Billed?
- What Is an App in FunctionGraph?
- Do I Need to Pay for Cold Start Time?
- Why Am I Seeing a Message Indicating that My Account Was Suspended When Creating a Function?
- Will the Requests of All My Functions in Different Regions Be Billed?
- Migration from FunctionGraph V1 to V2
-
General FAQs
-
More Documents
-
User Guide (ME-Abu Dhabi Region)
- Service Overview
- Getting Started
- Before You Start
- Building Functions
-
Configuring Functions
- Configuring Initialization
- Configuring Basic Settings
- Configuring Agency Permissions
- Configuring the Network
- Configuring Disk Mounting
- Configuring Environment Variables
- Configuring Asynchronous Execution Notification
- Configuring Single-Instance Multi-Concurrency
- Managing Versions
- Managing Aliases
- Configuring Dynamic Memory
- Configuring Heartbeat Function
- Online Debugging
- Creating Triggers
- Invoking the Function
- Monitoring
- Function Management
- Dependency Management
- Reserved Instance Management
- Increasing Resource Quota
- Audit
-
FAQs
-
General FAQs
- What Is FunctionGraph?
- Do I Need to Apply for Any Compute, Storage, or Network Services When Using FunctionGraph?
- Do I Need to Deploy My Code After Programming?
- What Runtimes Does FunctionGraph Support?
- How Much Disk Space Is Allocated to Each FunctionGraph Function?
- Does FunctionGraph Support Function Versioning?
- How Does a Function Read or Write Files?
- Does FunctionGraph Support Function Extension?
- Which Permissions Are Required for an IAM User to Use FunctionGraph?
- How Can I Create an ODBC Drive-based Python Dependency Package for Database Query?
- What Is the Quota of FunctionGraph?
- How Does FunctionGraph Resolve a Private DNS Domain Name?
- How Does a Container Image–based Function Resolve a Private DNS Domain Name?
- How Do I Use a Domain Name to Access an API Registered with API Gateway (Dedicated)?
- What Are the Common Application Scenarios of FunctionGraph?
- Why Can't the API Gateway Domain Name Bound to a Service Be Resolved During Function Invocation?
- Does FunctionGraph Support Synchronous Transmission at the Maximum Intranet Bandwidth?
- What If the VPC Quota Is Used Up?
- How Can I Print Info, Error, or Warn Logs?
- Can I Set the Domain Name of an API to My Own Domain Name?
- Can I Change the Runtime?
- Can I Change a Function's Name?
- Why Is Message "failed to mount exist system path" Displayed?
- How Do I Obtain Uploaded Files?
- Why Can't I Receive Responses for Synchronous Invocation?
- What Should I Do If the os.system("command &") Execution Logs Are Not Collected?
- Which Directories Can Be Accessed When a Custom Runtime Is Used?
- Which Minor Versions of Python 3.6 and 3.9 Are Supported?
- Which Actions Can Be Used Instead of a VPC Administrator Agency for VPC Access?
- What Are the Possible Causes for Function Timeout?
- How Do I Obtain the Code of a Function?
- Do You Have Sample Code for Initializers?
- How Do I Enable Structured Log Query?
- Can I Enable a Listening Port in a Function to Receive External TCP Requests via EIP?
- Function Creation FAQs
-
Trigger Management FAQs
- What Events Can Trigger a FunctionGraph Function?
- What If Error Code 500 Is Reported When Functions that Use APIG Triggers Return Strings?
- What Do LATEST and TRIM_HORIZON Mean in DIS Trigger Configuration?
- Why Can't I Enable or Disable OBS Triggers by Calling APIs?
- How Do I Use an APIG Trigger to Invoke a Function?
- How Does a Function Obtain the Request Path or Parameters When Using an APIG Trigger?
- Can I Create an OBS Trigger with an Existing Bucket?
-
Dependency Management FAQs
- What Is a Dependency?
- When Do I Need a Dependency?
- What Are the Precautions for Using a Dependency?
- What Dependencies Does FunctionGraph Support?
- Does FunctionGraph Support Class Libraries?
- How Do I Use Third-Party Dependencies on FunctionGraph?
- How Do I Create Function Dependencies?
- How Do I Create a Dependency on the FunctionGraph Console?
- How Do I Add a Dependency to a Function?
-
Function Execution FAQs
- How Long Does It Take to Execute a FunctionGraph Function?
- Which Steps Are Included in Function Execution?
- How Does FunctionGraph Process Concurrent Requests?
- What If Function Instances Have Not Been Executed for a Long Time?
- How Can I Speed Up Initial Access to a Function?
- How Do I Know the Actual Memory Used for Function Execution?
- Why Is My First Request Slow?
- What Do I Do If an Error Occurs When Calling an API?
- How Do I Read the Request Header of a Function?
- Why Does a Function Use More Memory Than Estimated and Even Trigger the Out of Memory Alarm?
- How Do I Check the Memory Usage When Seeing "runtime memory limit exceeded"?
- How Do I Troubleshoot "CrashLoopBackOff"?
- After I Updated an Image with the Same Name, Reserved Instances Still Use the Old Image. What Can I Do?
- Function Configuration FAQs
- External Resource Access FAQs
- Other FAQs
-
General FAQs
-
API Reference (ME-Abu Dhabi Region)
- Before You Start
- API Overview
- Calling APIs
- Function Model Definition
-
Function Management Zone APIs
- Querying a Function List
- Querying the Metadata of a Function
- Querying the Code of a Function
- Creating a Function
- Deleting a Function or Function Version
- Modifying the Code of a Function
- Modifying the Metadata of a Function
- Publishing a Function Version
- Querying the Versions of a Function
- Creating an Alias for a Function Version
- Modifying the Alias Information About a Function Version
- Deleting an Alias of a Function Version
- Querying the Alias Information About a Function Version
- Querying the Version Alias List of a Function
- Querying All Triggers of a Function
- Querying the Information About a Trigger
- Deleting All Triggers of a Function
- Creating a Trigger
- Deleting a Trigger
- Function Data Zone APIs
- Permissions Policies and Supported Actions
- Appendix
- Change History
- Developer Guide (ME-Abu Dhabi Region)
-
User Guide (Kuala Lumpur Region)
- Service Overview
- Getting Started
- Before You Start
- Building Functions
-
Configuring Functions
- Configuring Initialization
- Configuring Basic Settings
- Configuring Agency Permissions
- Configuring the Network
- Configuring Disk Mounting
- Configuring Environment Variables
- Configuring Asynchronous Execution Notification
- Configuring Single-Instance Multi-Concurrency
- Managing Versions
- Managing Aliases
- Configuring Dynamic Memory
- Online Debugging
- Creating Triggers
- Invoking the Function
- Monitoring
- Function Management
- Dependency Management
- Reserved Instance Management
- Audit
-
FAQs
-
General FAQs
- What Is FunctionGraph?
- Do I Need to Apply for Any Compute, Storage, or Network Services When Using FunctionGraph?
- Do I Need to Deploy My Code After Programming?
- What Runtimes Does FunctionGraph Support?
- How Much Disk Space Is Allocated to Each FunctionGraph Function?
- Does FunctionGraph Support Function Versioning?
- How Does a Function Read or Write Files?
- Does FunctionGraph Support Function Extension?
- Which Permissions Are Required for an IAM User to Use FunctionGraph?
- How Can I Create an ODBC Drive-based Python Dependency Package for Database Query?
- What Is the Quota of FunctionGraph?
- How Does a Container Image–based Function Resolve a Private DNS Domain Name?
- How Do I Use a Domain Name to Access an API Registered with API Gateway (Dedicated)?
- What Are the Common Application Scenarios of FunctionGraph?
- Why Can't the API Gateway Domain Name Bound to a Service Be Resolved During Function Invocation?
- Does FunctionGraph Support Synchronous Transmission at the Maximum Intranet Bandwidth?
- What If the VPC Quota Is Used Up?
- How Can I Print Info, Error, or Warn Logs?
- Can I Set the Domain Name of an API to My Own Domain Name?
- Can I Change the Runtime?
- Can I Change a Function's Name?
- Why Is Message "failed to mount exist system path" Displayed?
- How Do I Obtain Uploaded Files?
- Why Can't I Receive Responses for Synchronous Invocation?
- What Should I Do If the os.system("command &") Execution Logs Are Not Collected?
- Which Directories Can Be Accessed When a Custom Runtime Is Used?
- Which Minor Versions of Python 3.6 and 3.9 Are Supported?
- Which Actions Can Be Used Instead of a VPC Administrator Agency for VPC Access?
- What Are the Possible Causes for Function Timeout?
- How Do I Obtain the Code of a Function?
- Do You Have Sample Code for Initializers?
- How Do I Enable Structured Log Query?
- Can I Enable a Listening Port in a Function to Receive External TCP Requests via EIP?
- Function Creation FAQs
-
Trigger Management FAQs
- What If Error Code 500 Is Reported When Functions that Use APIG Triggers Return Strings?
- What Do LATEST and TRIM_HORIZON Mean in DIS Trigger Configuration?
- Why Can't I Enable or Disable OBS Triggers by Calling APIs?
- How Do I Use an APIG Trigger to Invoke a Function?
- How Does a Function Obtain the Request Path or Parameters When Using an APIG Trigger?
- Can I Create an OBS Trigger with an Existing Bucket?
-
Dependency Management FAQs
- What Is a Dependency?
- When Do I Need a Dependency?
- What Are the Precautions for Using a Dependency?
- What Dependencies Does FunctionGraph Support?
- Does FunctionGraph Support Class Libraries?
- How Do I Use Third-Party Dependencies on FunctionGraph?
- How Do I Create Function Dependencies?
- How Do I Create a Dependency on the FunctionGraph Console?
- How Do I Add a Dependency to a Function?
-
Function Execution FAQs
- How Long Does It Take to Execute a FunctionGraph Function?
- Which Steps Are Included in Function Execution?
- How Does FunctionGraph Process Concurrent Requests?
- What If Function Instances Have Not Been Executed for a Long Time?
- How Can I Speed Up Initial Access to a Function?
- How Do I Know the Actual Memory Used for Function Execution?
- Why Is My First Request Slow?
- What Do I Do If an Error Occurs When Calling an API?
- How Do I Read the Request Header of a Function?
- Why Does a Function Use More Memory Than Estimated and Even Trigger the Out of Memory Alarm?
- How Do I Check the Memory Usage When Seeing "runtime memory limit exceeded"?
- How Do I Troubleshoot "CrashLoopBackOff"?
- After I Updated an Image with the Same Name, Reserved Instances Still Use the Old Image. What Can I Do?
- Function Configuration FAQs
- External Resource Access FAQs
- Other FAQs
-
General FAQs
- Change History
-
API Reference (Kuala Lumpur Region)
- Before You Start
- API Overview
- Calling APIs
- Examples
-
APIs
- Function Invocation
- Function Quotas
- Dependencies
- Test Events
- Function Tracing
-
Function Lifecycle Management
- Querying Functions
- Creating a Function
- Deleting a Function or Function Version
- Querying the Code of a Function
- Modifying the Code of a Function
- Querying the Metadata of a Function
- Modifying the Metadata of a Function
- Updating Max. Instances of a Function
- Enabling or Disabling the Snapshot Function
- Querying Snapshot Status
- Querying Resource Tags
- Querying Resources
- Deleting Resource Tags
- Creating Resource Tags
- Creating a VPC Endpoint
- Deleting a VPC Endpoint
- Versions and Aliases
- Function Metrics
- Function Logs
- Reserved Instances
- Function Import and Export
- Function Triggers
-
Asynchronous Execution Notification
- Querying Asynchronous Execution Notification Settings of a Function Version
- Deleting Asynchronous Execution Notification Settings
- Configuring Asynchronous Execution Notification
- Querying Asynchronous Execution Notification Settings of a Function's All Versions
- Querying Asynchronous Invocation Requests
- Stopping an Asynchronous Invocation Request
- Appendix
- Developer Guide (Kuala Lumpur Region)
-
User Guide (ME-Abu Dhabi Region)
- Videos
- General Reference
Copied.
Creating a Function from Scratch and Executing the Function
This section describes how to quickly create and test a HelloWorld function on the FunctionGraph console.
Prerequisites
- View free quota.
FunctionGraph offers a free tier every month, which you can share with your IAM users. For details, see Free Tier
If you continue to use FunctionGraph after the free quota is used up, your account goes into arrears if the balance is less than the bill to be settled. To continue using your resources, top up your account in time. For details, see Topping Up an Account.
- Grant the FunctionGraph operation permissions to the user.
To perform the operations described in this section, ensure that you have the FunctionGraph Administrator permissions, that is, the full permissions for FunctionGraph. For more information, see Permissions Management.
Step 1: Create a Function
- Log in to the FunctionGraph console. In the navigation pane, choose Functions > Function List.
- Click Create Function in the upper right corner and choose Create from scratch.
- Configure basic function information by referring to Figure 1. Then, click Create Function.
Table 1 Parameters required for creating a function
Parameter
Description
Example Value
Function Type
Select Event Function.
An event function is triggered by a specific event, which is usually a request event in JSON format.
Event Function
Region
Select the region where the function is located.
Regions are geographic areas isolated from each other. Resources are region-specific and cannot be used across regions through internal network connections. Select a region near you to ensure the lowest latency possible.
CN East-Shanghai1
Function Name
Enter a function name. The naming rules are as follows:
- Consists of 1 to 60 characters, and can contain letters, digits, hyphens (-), and underscores (_).
- Start with a letter and end with a letter or digit.
HelloWorld
Enterprise Project
Select the enterprise project to which the function belongs. Enterprise projects let you manage cloud resources and users by project.
The default value is default. You can select the created enterprise project.
If the Enterprise Management service is not enabled, this parameter is unavailable. For details, see Enabling the Enterprise Project Function.
default
Agency
Select an agency for the function. An agency is used to authorize FunctionGraph to access other cloud services. If FunctionGraph does not access any cloud service, you do not need to select an agency.
By default, Use no agency is used. You can select an existing agency.
If no default agency is available, FunctionGraph allows you to quickly create a default agency named fgs_default_agency..
Use no agency
Permission Policies
This parameter is displayed only when an agency is selected.
For details about how to adjust the permission policies on the IAM console, see Modifying an Agency.
-
Runtime
Select a runtime to compile the function.
For details about the runtimes supported see Supported Runtimes.
- CloudIDE supports only online editing of Node.js, Python, PHP, and custom runtimes.
- After a function is created, the runtime language cannot be changed.
Node.js 16.17
Advanced Settings
- Public Access: If this feature is enabled, functions can access services on the public network through the default NIC. The public network access bandwidth is shared among users and applies only to test scenarios.
- VPC Access: If this feature is enabled, functions will use the NIC bound to the configured VPC for network access, and the default NIC of FunctionGraph will be disabled. That is, the Public Access parameter does not take effect.
To enable this feature, you need to configure an agency with VPC management permissions. If you select Use no agency in the Basic Information area, this feature cannot be enabled.
- Collect Logs: After it is enabled, logs generated during function execution will be reported to LTS.
LTS will be billed on a pay-per-use basis. For details, see LTS Pricing Details.
- Static Encryption with KMS (supported only in the LA-Sao Paulo1 region): Select whether to use KMS static code encryption.
DEW is billed by the pay-per-use mode. For details, see DEW Billing.
- Public Access: Enabled.
- VPC Access: Disabled.
- Collect Logs: Disabled.
- Static Encryption with KMS: Disabled.
- Configure the code source, copy the following code to the code window, and click Deploy.
The sample code enables you to obtain test events and print test event information.
exports.handler = function (event, context, callback) { const error = null; const output = `Hello message: ${JSON.stringify(event)}`; callback(error, output); }
Step 2: Test the Function
- On the function details page, click Test. In the displayed dialog box, create a test event.
- Select blank-template, set Event Name to test, modify the test event as follows, and click Create.
{ "hello": "function" }
Figure 2 Configuring a test event
Step 3: View the Execution Result
Click Test and view the execution result on the right.
- Function Output: displays the return result of the function.
- Log Output: displays the execution logs of the function.
- Summary: displays key information of the logs.
Figure 3 Viewing the execution result
A maximum of 2 KB logs can be displayed. For more log information, see Querying Function Logs.
Related Information
- For details about FunctionGraph concepts, see Concepts.
- For details about FunctionGraph pricing, see FunctionGraph Pricing Details.
- For details about the constraints and limitations of FunctionGraph, see Notes and Constraints.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot