FunctionGraph cannot directly resolve private DNS domain names. To resolve them, call DNS APIs and perform the following steps.
Ensure that a VPC and private DNS domain name have been created before performing the following steps:
Log in to the DNS console and associate a VPC with the private domain name.

Click the domain name, and add a type A record set.

Create a function whose runtime is Python 2.7. The following is sample code.
# -*- coding:utf-8 -*-
import json
import os
def handler(event, context):
os.system("curl -iv www.test.com")
Log in to the IAM console, and configure an agency with the DNS ReadOnlyAccess and VPC Administrator permissions for FunctionGraph.

You need to configure the permission to read DNS resource data because the function needs to obtain such data when resolving a domain name. Otherwise, the following error message is displayed, indicating that the DNS resource data failed to be obtained.
2020/08/20 10:37:12 GMT+08:00 Start invoke request 'a2f105b4-2e72-4fda-94a5-86d3837e961d', version: latest
[GET /v2/zones/{zone_id}/recordsets] failed, response: {"code":"DNS.1802","message":"Policy doesn't allow dns:recordset:list to be performed."}
2020/08/20 10:37:13 GMT+08:00 Finish invoke request 'a2f105b4-2e72-4fda-94a5-86d3837e961d', duration: 1030.072ms, billing duration: 1100ms, memory used: 77.039MB.
On the details page of the function created in step 2, click the Configuration tab and configure the following settings:

All configured IPv4 domain names can be resolved.

Changes to the IP addresses corresponding to the VPC domain names you configure will take effect in 10 minutes.
This procedure uses a domain name with a record set as an example.
Use to debug the API used to query record sets in a zone.