UNPKG

@volcengine/pulumi

Version:

A Pulumi package for creating and managing volcengine cloud resources.

257 lines (256 loc) 10.6 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Provides a resource to manage tls topic * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as volcengine from "@volcengine/pulumi"; * * const foo = new volcengine.tls.Topic("foo", { * autoSplit: true, * description: "test", * enableTracking: true, * maxSplitShard: 10, * projectId: "e020c978-4f05-40e1-9167-0113d3ef****", * shardCount: 2, * tags: [{ * key: "k1", * value: "v1", * }], * timeFormat: "%Y-%m-%dT%H:%M:%S,%f", * timeKey: "request_time", * topicName: "tf-test-topic", * ttl: 10, * }); * ``` * * ## Import * * Tls Topic can be imported using the id, e.g. * * ```sh * $ pulumi import volcengine:tls/topic:Topic default edf051ed-3c46-49ba-9339-bea628fe**** * ``` */ export declare class Topic extends pulumi.CustomResource { /** * Get an existing Topic resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: TopicState, opts?: pulumi.CustomResourceOptions): Topic; /** * Returns true if the given object is an instance of Topic. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is Topic; /** * Whether to enable automatic partition splitting function of the tls topic. * true: (default) When the amount of data written exceeds the capacity of existing partitions for 5 consecutive minutes, Log Service will automatically split partitions based on the data volume to meet business needs. However, the number of partitions after splitting cannot exceed the maximum number of partitions. Newly split partitions within the last 15 minutes will not be automatically split again. * false: Disables automatic partition splitting. */ readonly autoSplit: pulumi.Output<boolean>; /** * The create time of the tls topic. */ readonly createTime: pulumi.Output<string>; /** * The description of the tls project. */ readonly description: pulumi.Output<string>; /** * Whether to enable WebTracking function of the tls topic. */ readonly enableTracking: pulumi.Output<boolean>; /** * The id of shard to be manually split. This field is valid only when modifying the topic. * When importing resources, this attribute will not be imported. If this attribute is set, please use lifecycle and ignoreChanges ignore changes in fields. */ readonly manualSplitShardId: pulumi.Output<number | undefined>; /** * The split number of shard. The valid number should be a non-zero even number, such as 2, 4, 8, or 16. The total number of read-write status shards after splitting cannot exceed 50. * When importing resources, this attribute will not be imported. If this attribute is set, please use lifecycle and ignoreChanges ignore changes in fields. */ readonly manualSplitShardNumber: pulumi.Output<number | undefined>; /** * The maximum number of partitions, which is the maximum number of partitions after partition splitting. The value range is 1 to 10, with a default of 10. */ readonly maxSplitShard: pulumi.Output<number>; /** * The modify time of the tls topic. */ readonly modifyTime: pulumi.Output<string>; /** * The project id of the tls topic. */ readonly projectId: pulumi.Output<string>; /** * The count of shards in the tls topic. Valid value range: 1-10. This field is only valid when creating tls topic. */ readonly shardCount: pulumi.Output<number>; /** * Tags. */ readonly tags: pulumi.Output<outputs.tls.TopicTag[] | undefined>; /** * The format of the time field. */ readonly timeFormat: pulumi.Output<string>; /** * The name of the time field. */ readonly timeKey: pulumi.Output<string>; /** * The name of the tls topic. */ readonly topicName: pulumi.Output<string>; /** * The data storage time of the tls topic. Unit: Day. Valid value range: 1-3650. */ readonly ttl: pulumi.Output<number>; /** * Create a Topic resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: TopicArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Topic resources. */ export interface TopicState { /** * Whether to enable automatic partition splitting function of the tls topic. * true: (default) When the amount of data written exceeds the capacity of existing partitions for 5 consecutive minutes, Log Service will automatically split partitions based on the data volume to meet business needs. However, the number of partitions after splitting cannot exceed the maximum number of partitions. Newly split partitions within the last 15 minutes will not be automatically split again. * false: Disables automatic partition splitting. */ autoSplit?: pulumi.Input<boolean>; /** * The create time of the tls topic. */ createTime?: pulumi.Input<string>; /** * The description of the tls project. */ description?: pulumi.Input<string>; /** * Whether to enable WebTracking function of the tls topic. */ enableTracking?: pulumi.Input<boolean>; /** * The id of shard to be manually split. This field is valid only when modifying the topic. * When importing resources, this attribute will not be imported. If this attribute is set, please use lifecycle and ignoreChanges ignore changes in fields. */ manualSplitShardId?: pulumi.Input<number>; /** * The split number of shard. The valid number should be a non-zero even number, such as 2, 4, 8, or 16. The total number of read-write status shards after splitting cannot exceed 50. * When importing resources, this attribute will not be imported. If this attribute is set, please use lifecycle and ignoreChanges ignore changes in fields. */ manualSplitShardNumber?: pulumi.Input<number>; /** * The maximum number of partitions, which is the maximum number of partitions after partition splitting. The value range is 1 to 10, with a default of 10. */ maxSplitShard?: pulumi.Input<number>; /** * The modify time of the tls topic. */ modifyTime?: pulumi.Input<string>; /** * The project id of the tls topic. */ projectId?: pulumi.Input<string>; /** * The count of shards in the tls topic. Valid value range: 1-10. This field is only valid when creating tls topic. */ shardCount?: pulumi.Input<number>; /** * Tags. */ tags?: pulumi.Input<pulumi.Input<inputs.tls.TopicTag>[]>; /** * The format of the time field. */ timeFormat?: pulumi.Input<string>; /** * The name of the time field. */ timeKey?: pulumi.Input<string>; /** * The name of the tls topic. */ topicName?: pulumi.Input<string>; /** * The data storage time of the tls topic. Unit: Day. Valid value range: 1-3650. */ ttl?: pulumi.Input<number>; } /** * The set of arguments for constructing a Topic resource. */ export interface TopicArgs { /** * Whether to enable automatic partition splitting function of the tls topic. * true: (default) When the amount of data written exceeds the capacity of existing partitions for 5 consecutive minutes, Log Service will automatically split partitions based on the data volume to meet business needs. However, the number of partitions after splitting cannot exceed the maximum number of partitions. Newly split partitions within the last 15 minutes will not be automatically split again. * false: Disables automatic partition splitting. */ autoSplit?: pulumi.Input<boolean>; /** * The description of the tls project. */ description?: pulumi.Input<string>; /** * Whether to enable WebTracking function of the tls topic. */ enableTracking?: pulumi.Input<boolean>; /** * The id of shard to be manually split. This field is valid only when modifying the topic. * When importing resources, this attribute will not be imported. If this attribute is set, please use lifecycle and ignoreChanges ignore changes in fields. */ manualSplitShardId?: pulumi.Input<number>; /** * The split number of shard. The valid number should be a non-zero even number, such as 2, 4, 8, or 16. The total number of read-write status shards after splitting cannot exceed 50. * When importing resources, this attribute will not be imported. If this attribute is set, please use lifecycle and ignoreChanges ignore changes in fields. */ manualSplitShardNumber?: pulumi.Input<number>; /** * The maximum number of partitions, which is the maximum number of partitions after partition splitting. The value range is 1 to 10, with a default of 10. */ maxSplitShard?: pulumi.Input<number>; /** * The project id of the tls topic. */ projectId: pulumi.Input<string>; /** * The count of shards in the tls topic. Valid value range: 1-10. This field is only valid when creating tls topic. */ shardCount: pulumi.Input<number>; /** * Tags. */ tags?: pulumi.Input<pulumi.Input<inputs.tls.TopicTag>[]>; /** * The format of the time field. */ timeFormat?: pulumi.Input<string>; /** * The name of the time field. */ timeKey?: pulumi.Input<string>; /** * The name of the tls topic. */ topicName: pulumi.Input<string>; /** * The data storage time of the tls topic. Unit: Day. Valid value range: 1-3650. */ ttl: pulumi.Input<number>; }