Class: AWSCDK::DMS::CfnEndpoint::KafkaSettingsProperty
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::DMS::CfnEndpoint::KafkaSettingsProperty
- Defined in:
- dms/cfn_endpoint.rb
Overview
Provides information that describes an Apache Kafka endpoint.
This information includes the output format of records applied to the endpoint and details of transaction and control table data information. For more information about other available settings, see Using object mapping to migrate data to a Kafka topic in the AWS Database Migration Service User Guide .
Instance Attribute Summary collapse
-
#broker ⇒ String?
readonly
A comma-separated list of one or more broker locations in your Kafka cluster that host your Kafka instance.
-
#include_control_details ⇒ Boolean, ...
readonly
Shows detailed control information for table definition, column definition, and table and column changes in the Kafka message output.
-
#include_null_and_empty ⇒ Boolean, ...
readonly
Include NULL and empty columns for records migrated to the endpoint.
-
#include_partition_value ⇒ Boolean, ...
readonly
Shows the partition value within the Kafka message output unless the partition type is
schema-table-type. -
#include_table_alter_operations ⇒ Boolean, ...
readonly
Includes any data definition language (DDL) operations that change the table in the control data, such as
rename-table,drop-table,add-column,drop-column, andrename-column. -
#include_transaction_details ⇒ Boolean, ...
readonly
Provides detailed transaction information from the source database.
-
#message_format ⇒ String?
readonly
The output format for the records created on the endpoint.
-
#message_max_bytes ⇒ Numeric?
readonly
The maximum size in bytes for records created on the endpoint The default is 1,000,000.
-
#no_hex_prefix ⇒ Boolean, ...
readonly
Set this optional parameter to
trueto avoid adding a '0x' prefix to raw data in hexadecimal format. -
#partition_include_schema_table ⇒ Boolean, ...
readonly
Prefixes schema and table names to partition values, when the partition type is
primary-key-type. -
#sasl_password ⇒ String?
readonly
The secure password that you created when you first set up your Amazon MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication.
-
#sasl_user_name ⇒ String?
readonly
The secure user name you created when you first set up your Amazon MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication.
-
#security_protocol ⇒ String?
readonly
Set secure connection to a Kafka target endpoint using Transport Layer Security (TLS).
-
#ssl_ca_certificate_arn ⇒ String?
readonly
The Amazon Resource Name (ARN) for the private certificate authority (CA) cert that AWS DMS uses to securely connect to your Kafka target endpoint.
-
#ssl_client_certificate_arn ⇒ String?
readonly
The Amazon Resource Name (ARN) of the client certificate used to securely connect to a Kafka target endpoint.
-
#ssl_client_key_arn ⇒ String?
readonly
The Amazon Resource Name (ARN) for the client private key used to securely connect to a Kafka target endpoint.
-
#ssl_client_key_password ⇒ String?
readonly
The password for the client private key used to securely connect to a Kafka target endpoint.
-
#topic ⇒ String?
readonly
The topic to which you migrate the data.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(broker: nil, include_control_details: nil, include_null_and_empty: nil, include_partition_value: nil, include_table_alter_operations: nil, include_transaction_details: nil, message_format: nil, message_max_bytes: nil, no_hex_prefix: nil, partition_include_schema_table: nil, sasl_password: nil, sasl_user_name: nil, security_protocol: nil, ssl_ca_certificate_arn: nil, ssl_client_certificate_arn: nil, ssl_client_key_arn: nil, ssl_client_key_password: nil, topic: nil) ⇒ KafkaSettingsProperty
constructor
A new instance of KafkaSettingsProperty.
- #to_jsii ⇒ Object
Constructor Details
#initialize(broker: nil, include_control_details: nil, include_null_and_empty: nil, include_partition_value: nil, include_table_alter_operations: nil, include_transaction_details: nil, message_format: nil, message_max_bytes: nil, no_hex_prefix: nil, partition_include_schema_table: nil, sasl_password: nil, sasl_user_name: nil, security_protocol: nil, ssl_ca_certificate_arn: nil, ssl_client_certificate_arn: nil, ssl_client_key_arn: nil, ssl_client_key_password: nil, topic: nil) ⇒ KafkaSettingsProperty
Returns a new instance of KafkaSettingsProperty.
1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 |
# File 'dms/cfn_endpoint.rb', line 1473 def initialize(broker: nil, include_control_details: nil, include_null_and_empty: nil, include_partition_value: nil, include_table_alter_operations: nil, include_transaction_details: nil, message_format: nil, message_max_bytes: nil, no_hex_prefix: nil, partition_include_schema_table: nil, sasl_password: nil, sasl_user_name: nil, security_protocol: nil, ssl_ca_certificate_arn: nil, ssl_client_certificate_arn: nil, ssl_client_key_arn: nil, ssl_client_key_password: nil, topic: nil) @broker = broker Jsii::Type.check_type(@broker, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "broker") unless @broker.nil? @include_control_details = include_control_details Jsii::Type.check_type(@include_control_details, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "includeControlDetails") unless @include_control_details.nil? @include_null_and_empty = include_null_and_empty Jsii::Type.check_type(@include_null_and_empty, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "includeNullAndEmpty") unless @include_null_and_empty.nil? @include_partition_value = include_partition_value Jsii::Type.check_type(@include_partition_value, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "includePartitionValue") unless @include_partition_value.nil? @include_table_alter_operations = include_table_alter_operations Jsii::Type.check_type(@include_table_alter_operations, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "includeTableAlterOperations") unless @include_table_alter_operations.nil? @include_transaction_details = include_transaction_details Jsii::Type.check_type(@include_transaction_details, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "includeTransactionDetails") unless @include_transaction_details.nil? @message_format = Jsii::Type.check_type(@message_format, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "messageFormat") unless @message_format.nil? @message_max_bytes = Jsii::Type.check_type(@message_max_bytes, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "messageMaxBytes") unless @message_max_bytes.nil? @no_hex_prefix = no_hex_prefix Jsii::Type.check_type(@no_hex_prefix, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "noHexPrefix") unless @no_hex_prefix.nil? @partition_include_schema_table = partition_include_schema_table Jsii::Type.check_type(@partition_include_schema_table, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "partitionIncludeSchemaTable") unless @partition_include_schema_table.nil? @sasl_password = sasl_password Jsii::Type.check_type(@sasl_password, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "saslPassword") unless @sasl_password.nil? @sasl_user_name = sasl_user_name Jsii::Type.check_type(@sasl_user_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "saslUserName") unless @sasl_user_name.nil? @security_protocol = security_protocol Jsii::Type.check_type(@security_protocol, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "securityProtocol") unless @security_protocol.nil? @ssl_ca_certificate_arn = ssl_ca_certificate_arn Jsii::Type.check_type(@ssl_ca_certificate_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "sslCaCertificateArn") unless @ssl_ca_certificate_arn.nil? @ssl_client_certificate_arn = ssl_client_certificate_arn Jsii::Type.check_type(@ssl_client_certificate_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "sslClientCertificateArn") unless @ssl_client_certificate_arn.nil? @ssl_client_key_arn = ssl_client_key_arn Jsii::Type.check_type(@ssl_client_key_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "sslClientKeyArn") unless @ssl_client_key_arn.nil? @ssl_client_key_password = ssl_client_key_password Jsii::Type.check_type(@ssl_client_key_password, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "sslClientKeyPassword") unless @ssl_client_key_password.nil? @topic = topic Jsii::Type.check_type(@topic, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "topic") unless @topic.nil? end |
Instance Attribute Details
#broker ⇒ String? (readonly)
A comma-separated list of one or more broker locations in your Kafka cluster that host your Kafka instance.
Specify each broker location in the form *broker-hostname-or-ip* : *port* . For example, "ec2-12-345-678-901.compute-1.amazonaws.com:2345" . For more information and examples of specifying a list of broker locations, see Using Apache Kafka as a target for AWS Database Migration Service in the AWS Database Migration Service User Guide .
1518 1519 1520 |
# File 'dms/cfn_endpoint.rb', line 1518 def broker @broker end |
#include_control_details ⇒ Boolean, ... (readonly)
Shows detailed control information for table definition, column definition, and table and column changes in the Kafka message output.
The default is false .
1525 1526 1527 |
# File 'dms/cfn_endpoint.rb', line 1525 def include_control_details @include_control_details end |
#include_null_and_empty ⇒ Boolean, ... (readonly)
Include NULL and empty columns for records migrated to the endpoint.
The default is false .
1532 1533 1534 |
# File 'dms/cfn_endpoint.rb', line 1532 def include_null_and_empty @include_null_and_empty end |
#include_partition_value ⇒ Boolean, ... (readonly)
Shows the partition value within the Kafka message output unless the partition type is schema-table-type .
The default is false .
1539 1540 1541 |
# File 'dms/cfn_endpoint.rb', line 1539 def include_partition_value @include_partition_value end |
#include_table_alter_operations ⇒ Boolean, ... (readonly)
Includes any data definition language (DDL) operations that change the table in the control data, such as rename-table , drop-table , add-column , drop-column , and rename-column .
The default is false .
1546 1547 1548 |
# File 'dms/cfn_endpoint.rb', line 1546 def include_table_alter_operations @include_table_alter_operations end |
#include_transaction_details ⇒ Boolean, ... (readonly)
Provides detailed transaction information from the source database.
This information includes a commit timestamp, a log position, and values for transaction_id , previous transaction_id , and transaction_record_id (the record offset within a transaction). The default is false .
1553 1554 1555 |
# File 'dms/cfn_endpoint.rb', line 1553 def include_transaction_details @include_transaction_details end |
#message_format ⇒ String? (readonly)
The output format for the records created on the endpoint.
The message format is JSON (default) or JSON_UNFORMATTED (a single line with no tab).
1560 1561 1562 |
# File 'dms/cfn_endpoint.rb', line 1560 def @message_format end |
#message_max_bytes ⇒ Numeric? (readonly)
The maximum size in bytes for records created on the endpoint The default is 1,000,000.
1565 1566 1567 |
# File 'dms/cfn_endpoint.rb', line 1565 def @message_max_bytes end |
#no_hex_prefix ⇒ Boolean, ... (readonly)
Set this optional parameter to true to avoid adding a '0x' prefix to raw data in hexadecimal format.
For example, by default, AWS DMS adds a '0x' prefix to the LOB column type in hexadecimal format moving from an Oracle source to a Kafka target. Use the NoHexPrefix endpoint setting to enable migration of RAW data type columns without adding the '0x' prefix.
1572 1573 1574 |
# File 'dms/cfn_endpoint.rb', line 1572 def no_hex_prefix @no_hex_prefix end |
#partition_include_schema_table ⇒ Boolean, ... (readonly)
Prefixes schema and table names to partition values, when the partition type is primary-key-type .
Doing this increases data distribution among Kafka partitions. For example, suppose that a SysBench schema has thousands of tables and each table has only limited range for a primary key. In this case, the same primary key is sent from thousands of tables to the same partition, which causes throttling. The default is false .
1579 1580 1581 |
# File 'dms/cfn_endpoint.rb', line 1579 def partition_include_schema_table @partition_include_schema_table end |
#sasl_password ⇒ String? (readonly)
The secure password that you created when you first set up your Amazon MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication.
1584 1585 1586 |
# File 'dms/cfn_endpoint.rb', line 1584 def sasl_password @sasl_password end |
#sasl_user_name ⇒ String? (readonly)
The secure user name you created when you first set up your Amazon MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication.
1589 1590 1591 |
# File 'dms/cfn_endpoint.rb', line 1589 def sasl_user_name @sasl_user_name end |
#security_protocol ⇒ String? (readonly)
Set secure connection to a Kafka target endpoint using Transport Layer Security (TLS).
Options include ssl-encryption , ssl-authentication , and sasl-ssl . sasl-ssl requires SaslUsername and SaslPassword .
1596 1597 1598 |
# File 'dms/cfn_endpoint.rb', line 1596 def security_protocol @security_protocol end |
#ssl_ca_certificate_arn ⇒ String? (readonly)
The Amazon Resource Name (ARN) for the private certificate authority (CA) cert that AWS DMS uses to securely connect to your Kafka target endpoint.
1601 1602 1603 |
# File 'dms/cfn_endpoint.rb', line 1601 def ssl_ca_certificate_arn @ssl_ca_certificate_arn end |
#ssl_client_certificate_arn ⇒ String? (readonly)
The Amazon Resource Name (ARN) of the client certificate used to securely connect to a Kafka target endpoint.
1606 1607 1608 |
# File 'dms/cfn_endpoint.rb', line 1606 def ssl_client_certificate_arn @ssl_client_certificate_arn end |
#ssl_client_key_arn ⇒ String? (readonly)
The Amazon Resource Name (ARN) for the client private key used to securely connect to a Kafka target endpoint.
1611 1612 1613 |
# File 'dms/cfn_endpoint.rb', line 1611 def ssl_client_key_arn @ssl_client_key_arn end |
#ssl_client_key_password ⇒ String? (readonly)
The password for the client private key used to securely connect to a Kafka target endpoint.
1616 1617 1618 |
# File 'dms/cfn_endpoint.rb', line 1616 def ssl_client_key_password @ssl_client_key_password end |
#topic ⇒ String? (readonly)
The topic to which you migrate the data.
If you don't specify a topic, AWS DMS specifies "kafka-default-topic" as the migration topic.
1623 1624 1625 |
# File 'dms/cfn_endpoint.rb', line 1623 def topic @topic end |
Class Method Details
.jsii_properties ⇒ Object
1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 |
# File 'dms/cfn_endpoint.rb', line 1625 def self.jsii_properties { :broker => "broker", :include_control_details => "includeControlDetails", :include_null_and_empty => "includeNullAndEmpty", :include_partition_value => "includePartitionValue", :include_table_alter_operations => "includeTableAlterOperations", :include_transaction_details => "includeTransactionDetails", :message_format => "messageFormat", :message_max_bytes => "messageMaxBytes", :no_hex_prefix => "noHexPrefix", :partition_include_schema_table => "partitionIncludeSchemaTable", :sasl_password => "saslPassword", :sasl_user_name => "saslUserName", :security_protocol => "securityProtocol", :ssl_ca_certificate_arn => "sslCaCertificateArn", :ssl_client_certificate_arn => "sslClientCertificateArn", :ssl_client_key_arn => "sslClientKeyArn", :ssl_client_key_password => "sslClientKeyPassword", :topic => "topic", } end |
Instance Method Details
#to_jsii ⇒ Object
1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 |
# File 'dms/cfn_endpoint.rb', line 1648 def to_jsii result = {} result.merge!({ "broker" => @broker, "includeControlDetails" => @include_control_details, "includeNullAndEmpty" => @include_null_and_empty, "includePartitionValue" => @include_partition_value, "includeTableAlterOperations" => @include_table_alter_operations, "includeTransactionDetails" => @include_transaction_details, "messageFormat" => @message_format, "messageMaxBytes" => @message_max_bytes, "noHexPrefix" => @no_hex_prefix, "partitionIncludeSchemaTable" => @partition_include_schema_table, "saslPassword" => @sasl_password, "saslUserName" => @sasl_user_name, "securityProtocol" => @security_protocol, "sslCaCertificateArn" => @ssl_ca_certificate_arn, "sslClientCertificateArn" => @ssl_client_certificate_arn, "sslClientKeyArn" => @ssl_client_key_arn, "sslClientKeyPassword" => @ssl_client_key_password, "topic" => @topic, }) result.compact end |