All Products
Search
Document Center

Web Application Firewall:CreateLogDeliveryConfig

Last Updated:Aug 12, 2026

Creates a log delivery configuration for hybrid cloud environments.

Operation description

Before you call this operation, make sure that the WAF instance has hybrid cloud extension nodes purchased. You can call the DescribeInstance operation to query instance details. If the value of the Details.HybridCloudNodeExtend response parameter is greater than 0, hybrid cloud extension nodes have been purchased. If not, log on to the WAF console and upgrade the instance to purchase hybrid cloud extension nodes.

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

yundun-waf:CreateLogDeliveryConfig

create

*All Resource

*

  • acs:ResourceGroupId
None

Request parameters

Parameter

Type

Required

Description

Example

InstanceId

string

Yes

The ID of the WAF instance.

Note

You can call the DescribeInstance operation to query the ID of the current WAF instance.

waf_elasticity-cn-0xldbqt****

DeliveryName

string

Yes

The name of the log delivery configuration.

test1

DeliveryType

string

Yes

The type of the log delivery configuration. Valid values:

  • syslog: delivers logs to a syslog service.

  • kafka: delivers logs to a Kafka service.

syslog

DeliveryDetail

string

Yes

The content of the log delivery configuration. The value is a JSON string constructed from a series of parameters.

Note

The parameters vary based on the specified delivery type (DeliveryType). For more information, see Description of delivery configuration content parameters.

{ "rfcVersion": "rfc3164", "protocol": "tcp", "servers": [ { "address": "1.1.1.1", "port": 20 } ] }

RegionId

string

No

The region where the WAF instance resides. Valid values:

  • cn-hangzhou: the Chinese mainland.

  • ap-southeast-1: outside the Chinese mainland.

cn-hangzhou

ResourceManagerResourceGroupId

string

No

The ID of the Alibaba Cloud resource group.

rg-acfm***q

Description of delivery configuration content parameters.

Deliver logs to a syslog service (syslog)

Parameter description

NameTypeRequiredExampleDescription
serversArrayYes[{"address":"11.11.XX.XX","port":8000}]The remote address configuration of the syslog service. When the delivery type is syslog, only one address is supported. Fields:
- address: the domain name or IP address of the server. IPv4 and IPv6 are supported. Required.
- port: the Server Port. Required.




rfcVersionStringNorfc3164The RFC version of syslog. Valid values:
- rfc3164 (default): RFC 3164.
- rfc5424: RFC 5424.




protocolStringYestcpThe protocol type of syslog. Valid values:
- tcp: TCP connection.
- udp: UDP connection.




Example

{
	"InstanceId": "waf_v2_public_cn-n*******",
	"DeliveryName": "test1",
	"DeliveryType": "syslog",
	"DeliveryDetail": "{\"rfcVersion\":\"rfc3164\",\"protocol\":\"tcp\",\"servers\":[{\"address\":\"11.11.XX.XX\",\"port\":8000}]}"
}

Deliver logs to a Kafka service (kafka)

Parameter description

NameTypeRequiredExampleDescription
serversArrayYes[{"address":"a.com","port":8000}]The remote address configuration of the Kafka service. When the delivery type is kafka, up to three addresses are supported. Fields:
- address: the domain name or IP address of the server. IPv4 and IPv6 are supported. Required.
- port: the Server Port. Required.




kafkaTopicStringYestestThe topic ID or name of Kafka.
protocolStringYesPLAINTEXTThe security protocol of Kafka. Valid values:
- PLAINTEXT (default): PLAINTEXT protocol.
- SASL_PLAINTEXT: SASL_PLAINTEXT protocol.
- SASL_SSL: SASL_SSL protocol.







saslUserNameStringNouser123The username for Kafka SASL authentication. Required when the security protocol (protocol) is set to SASL_PLAINTEXT or SASL_SSL.
saslPasswordStringNouser***The password for Kafka SASL authentication. Required when the security protocol (protocol) is set to SASL_PLAINTEXT or SASL_SSL.
pemCertStringNoCertThe custom certificate for Kafka. PEM format is supported.
compressionCodecStringNononeThe compression type of Kafka. Valid values:
- none (default): no compression.
- gzip: gzip compression.
- zstd: zstd compression.
- lz4: lz4 compression.
- snappy: snappy compression.













Example

{
	"InstanceId": "waf_v2_public_cn-n*********",
	"DeliveryName": "test2",
	"DeliveryType": "kafka",
	"DeliveryDetail": "{\"kafkaTopic\":\"topictest1\",\"protocol\":\"SASL_PLAINTEXT\",\"servers\":[{\"address\":\"a.com\",\"port\":1000},{\"address\":\"ba.com\",\"port\":1000},{\"address\":\"c.com\",\"port\":1000}],\"saslUserName\":\"user123\",\"saslPassword\":\"user****\"}"
}

Response elements

Element

Type

Description

Example

object

DeliveryName

string

The name of the log delivery configuration.

test1

RequestId

string

The request ID.

26E46541-7AAB-5565-801D-F14DBDC5****

Examples

Success response

JSON format

{
  "DeliveryName": "test1",
  "RequestId": "26E46541-7AAB-5565-801D-F14DBDC5****"
}

Error codes

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.