Skip to main content
pub struct CreateTableMonitorRequestOptions 

    pub event: String,
    pub monitor_id: String,
    pub datasink_name: String,
    pub max_consecutive_failures: String,
    pub failed_notifications_table_name: String,
    pub destination: String,
    pub kafka_topic_name: String,
    pub increasing_column: String,
    pub expression: String,
    pub join_table_names: String,
    pub join_column_names: String,
    pub join_expressions: String,
    pub refresh_method: String,
    pub refresh_period: String,
    pub refresh_start_time: String,

Optional parameters for the /create/tablemonitor endpoint.

Default::default() is the empty set: only options set explicitly are sent, and anything left empty falls back to the server’s own default.

Fields

event: String

Type of modification event on the target table to be monitored by this table monitor. Server default: insert.

monitor_id: String

ID to use for this monitor instead of a randomly generated one.

datasink_name: String

Name of an existing data sink to send change data notifications to.

max_consecutive_failures: String

Maximum number of consecutive failed notification attempts before suspending the stream. A value of -1 (default) disables auto-suspend. This value is by rank and not overall.

failed_notifications_table_name: String

Name of a table to which failed stream notifications are written when the stream is suspended. The database will attempt to send notifications persisted in this table when the stream is resumed. The table has the following columns: rank (long), job_id (long), uuid (uuid), timestamp (timestamp), error_msg (string), payload (bytes). Leave this option empty to disable persisting failed notification events.

destination: String

Destination for the output data in format ‘destination_type://path[:port]’. Supported destination types are ‘http’, ‘https’ and ‘kafka’.

kafka_topic_name: String

Name of the Kafka topic to publish to if destination in options is specified and is a Kafka broker.

increasing_column: String

Column on subscribed table that will increase for new records (e.g., TIMESTAMP).

expression: String

Filter expression to limit records for notification.

join_table_names: String

A comma-separated list of tables (optionally with aliases) to include in the join. The monitored table table_name must be included, representing only the newly inserted rows (deltas) since the last notification. Other tables can be any existing tables or views. Aliases can be used with the ‘table_name as alias’ syntax.

join_column_names: String

A comma-separated list of columns or expressions to include from the joined tables. Column references can use table names or aliases defined in ‘join_table_names’. Each column can optionally be aliased using ‘as’. The selected columns will also appear in the notification output.

join_expressions: String

Filter or join expressions to apply when combining the tables. Expressions are standard SQL-style conditions and can reference any table or alias listed in ‘join_table_names’. This corresponds to the WHERE clause of the underlying join, and can include conditions to filter the delta rows.

refresh_method: String

Method controlling when the table monitor reports changes to the table_name. Server default: on_change.

refresh_period: String

When refresh_method is periodic, specifies the period in seconds at which changes are reported.

refresh_start_time: String

When refresh_method is periodic, specifies the first time at which changes are reported. Value is a datetime string with format ‘YYYY-MM-DD HH:MM:SS’.

Implementations

Converts the set (non-empty) options into the wire-format string map.

Trait Implementations

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source

fn fmt(&self, f: &mut Formatter<’_>) -> Result

Formats the value using the given formatter. Read more