tencentcloud.MonitorTmpExporterIntegration
Explore with Pulumi AI
Example Usage
Use qcloud-exporter
import * as pulumi from "@pulumi/pulumi";
import * as tencentcloud from "@pulumi/tencentcloud";
const example = new tencentcloud.MonitorTmpExporterIntegration("example", {
    clusterId: "cls-csxm4phu",
    content: "{\"name\":\"test\",\"kind\":\"qcloud-exporter\",\"spec\":{\"scrapeSpec\":{\"interval\":\"1m\",\"timeout\":\"1m\",\"relabelConfigs\":\"#metricRelabelings:\\n#- action: labeldrop\\n#  regex: tmp_test_label\\n\"},\"instanceSpec\":{\"region\":\"Guangzhou\",\"role\":\"CM_QCSLinkedRoleInTMP\",\"useRole\":true,\"authProvider\":{\"method\":1,\"presetRole\":\"CM_QCSLinkedRoleInTMP\"},\"rateLimit\":1000,\"delaySeconds\":0,\"rangeSeconds\":0,\"reload_interval_minutes\":10,\"uin\":\"100023201586\",\"tag_key_operation\":\"ToUnderLineAndLower\"},\"exporterSpec\":{\"cvm\":false,\"cbs\":true,\"imageRegistry\":\"ccr.ccs.tencentyun.com\",\"cpu\":\"0.25\",\"memory\":\"0.5Gi\"}},\"status\":{}}",
    instanceId: "prom-gzg3f1em",
    kind: "qcloud-exporter",
    kubeType: 3,
});
import pulumi
import pulumi_tencentcloud as tencentcloud
example = tencentcloud.MonitorTmpExporterIntegration("example",
    cluster_id="cls-csxm4phu",
    content="{\"name\":\"test\",\"kind\":\"qcloud-exporter\",\"spec\":{\"scrapeSpec\":{\"interval\":\"1m\",\"timeout\":\"1m\",\"relabelConfigs\":\"#metricRelabelings:\\n#- action: labeldrop\\n#  regex: tmp_test_label\\n\"},\"instanceSpec\":{\"region\":\"Guangzhou\",\"role\":\"CM_QCSLinkedRoleInTMP\",\"useRole\":true,\"authProvider\":{\"method\":1,\"presetRole\":\"CM_QCSLinkedRoleInTMP\"},\"rateLimit\":1000,\"delaySeconds\":0,\"rangeSeconds\":0,\"reload_interval_minutes\":10,\"uin\":\"100023201586\",\"tag_key_operation\":\"ToUnderLineAndLower\"},\"exporterSpec\":{\"cvm\":false,\"cbs\":true,\"imageRegistry\":\"ccr.ccs.tencentyun.com\",\"cpu\":\"0.25\",\"memory\":\"0.5Gi\"}},\"status\":{}}",
    instance_id="prom-gzg3f1em",
    kind="qcloud-exporter",
    kube_type=3)
package main
import (
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/tencentcloud/tencentcloud"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := tencentcloud.NewMonitorTmpExporterIntegration(ctx, "example", &tencentcloud.MonitorTmpExporterIntegrationArgs{
			ClusterId:  pulumi.String("cls-csxm4phu"),
			Content:    pulumi.String("{\"name\":\"test\",\"kind\":\"qcloud-exporter\",\"spec\":{\"scrapeSpec\":{\"interval\":\"1m\",\"timeout\":\"1m\",\"relabelConfigs\":\"#metricRelabelings:\\n#- action: labeldrop\\n#  regex: tmp_test_label\\n\"},\"instanceSpec\":{\"region\":\"Guangzhou\",\"role\":\"CM_QCSLinkedRoleInTMP\",\"useRole\":true,\"authProvider\":{\"method\":1,\"presetRole\":\"CM_QCSLinkedRoleInTMP\"},\"rateLimit\":1000,\"delaySeconds\":0,\"rangeSeconds\":0,\"reload_interval_minutes\":10,\"uin\":\"100023201586\",\"tag_key_operation\":\"ToUnderLineAndLower\"},\"exporterSpec\":{\"cvm\":false,\"cbs\":true,\"imageRegistry\":\"ccr.ccs.tencentyun.com\",\"cpu\":\"0.25\",\"memory\":\"0.5Gi\"}},\"status\":{}}"),
			InstanceId: pulumi.String("prom-gzg3f1em"),
			Kind:       pulumi.String("qcloud-exporter"),
			KubeType:   pulumi.Float64(3),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Tencentcloud = Pulumi.Tencentcloud;
return await Deployment.RunAsync(() => 
{
    var example = new Tencentcloud.MonitorTmpExporterIntegration("example", new()
    {
        ClusterId = "cls-csxm4phu",
        Content = "{\"name\":\"test\",\"kind\":\"qcloud-exporter\",\"spec\":{\"scrapeSpec\":{\"interval\":\"1m\",\"timeout\":\"1m\",\"relabelConfigs\":\"#metricRelabelings:\\n#- action: labeldrop\\n#  regex: tmp_test_label\\n\"},\"instanceSpec\":{\"region\":\"Guangzhou\",\"role\":\"CM_QCSLinkedRoleInTMP\",\"useRole\":true,\"authProvider\":{\"method\":1,\"presetRole\":\"CM_QCSLinkedRoleInTMP\"},\"rateLimit\":1000,\"delaySeconds\":0,\"rangeSeconds\":0,\"reload_interval_minutes\":10,\"uin\":\"100023201586\",\"tag_key_operation\":\"ToUnderLineAndLower\"},\"exporterSpec\":{\"cvm\":false,\"cbs\":true,\"imageRegistry\":\"ccr.ccs.tencentyun.com\",\"cpu\":\"0.25\",\"memory\":\"0.5Gi\"}},\"status\":{}}",
        InstanceId = "prom-gzg3f1em",
        Kind = "qcloud-exporter",
        KubeType = 3,
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.tencentcloud.MonitorTmpExporterIntegration;
import com.pulumi.tencentcloud.MonitorTmpExporterIntegrationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var example = new MonitorTmpExporterIntegration("example", MonitorTmpExporterIntegrationArgs.builder()
            .clusterId("cls-csxm4phu")
            .content("{\"name\":\"test\",\"kind\":\"qcloud-exporter\",\"spec\":{\"scrapeSpec\":{\"interval\":\"1m\",\"timeout\":\"1m\",\"relabelConfigs\":\"#metricRelabelings:\\n#- action: labeldrop\\n#  regex: tmp_test_label\\n\"},\"instanceSpec\":{\"region\":\"Guangzhou\",\"role\":\"CM_QCSLinkedRoleInTMP\",\"useRole\":true,\"authProvider\":{\"method\":1,\"presetRole\":\"CM_QCSLinkedRoleInTMP\"},\"rateLimit\":1000,\"delaySeconds\":0,\"rangeSeconds\":0,\"reload_interval_minutes\":10,\"uin\":\"100023201586\",\"tag_key_operation\":\"ToUnderLineAndLower\"},\"exporterSpec\":{\"cvm\":false,\"cbs\":true,\"imageRegistry\":\"ccr.ccs.tencentyun.com\",\"cpu\":\"0.25\",\"memory\":\"0.5Gi\"}},\"status\":{}}")
            .instanceId("prom-gzg3f1em")
            .kind("qcloud-exporter")
            .kubeType(3)
            .build());
    }
}
resources:
  example:
    type: tencentcloud:MonitorTmpExporterIntegration
    properties:
      clusterId: cls-csxm4phu
      content: '{"name":"test","kind":"qcloud-exporter","spec":{"scrapeSpec":{"interval":"1m","timeout":"1m","relabelConfigs":"#metricRelabelings:\n#- action: labeldrop\n#  regex: tmp_test_label\n"},"instanceSpec":{"region":"Guangzhou","role":"CM_QCSLinkedRoleInTMP","useRole":true,"authProvider":{"method":1,"presetRole":"CM_QCSLinkedRoleInTMP"},"rateLimit":1000,"delaySeconds":0,"rangeSeconds":0,"reload_interval_minutes":10,"uin":"100023201586","tag_key_operation":"ToUnderLineAndLower"},"exporterSpec":{"cvm":false,"cbs":true,"imageRegistry":"ccr.ccs.tencentyun.com","cpu":"0.25","memory":"0.5Gi"}},"status":{}}'
      instanceId: prom-gzg3f1em
      kind: qcloud-exporter
      kubeType: 3
Use es-exporter
import * as pulumi from "@pulumi/pulumi";
import * as tencentcloud from "@pulumi/tencentcloud";
const example = new tencentcloud.MonitorTmpExporterIntegration("example", {
    instanceId: "prom-gzg3f1em",
    kind: "es-exporter",
    content: JSON.stringify({
        name: "ex-exporter-example",
        kind: "es-exporter",
        spec: {
            instanceSpec: {
                user: "root",
                password: "Password@123",
                url: "http://127.0.0.1:8080",
                labels: {
                    labelKey: "labelValue",
                },
            },
            exporterSpec: {
                all: true,
                indices: true,
                indicesSettings: true,
                shards: true,
                snapshots: true,
                clusterSettings: true,
            },
        },
    }),
    clusterId: "",
    kubeType: 3,
});
import pulumi
import json
import pulumi_tencentcloud as tencentcloud
example = tencentcloud.MonitorTmpExporterIntegration("example",
    instance_id="prom-gzg3f1em",
    kind="es-exporter",
    content=json.dumps({
        "name": "ex-exporter-example",
        "kind": "es-exporter",
        "spec": {
            "instanceSpec": {
                "user": "root",
                "password": "Password@123",
                "url": "http://127.0.0.1:8080",
                "labels": {
                    "labelKey": "labelValue",
                },
            },
            "exporterSpec": {
                "all": True,
                "indices": True,
                "indicesSettings": True,
                "shards": True,
                "snapshots": True,
                "clusterSettings": True,
            },
        },
    }),
    cluster_id="",
    kube_type=3)
package main
import (
	"encoding/json"
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/tencentcloud/tencentcloud"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		tmpJSON0, err := json.Marshal(map[string]interface{}{
			"name": "ex-exporter-example",
			"kind": "es-exporter",
			"spec": map[string]interface{}{
				"instanceSpec": map[string]interface{}{
					"user":     "root",
					"password": "Password@123",
					"url":      "http://127.0.0.1:8080",
					"labels": map[string]interface{}{
						"labelKey": "labelValue",
					},
				},
				"exporterSpec": map[string]interface{}{
					"all":             true,
					"indices":         true,
					"indicesSettings": true,
					"shards":          true,
					"snapshots":       true,
					"clusterSettings": true,
				},
			},
		})
		if err != nil {
			return err
		}
		json0 := string(tmpJSON0)
		_, err = tencentcloud.NewMonitorTmpExporterIntegration(ctx, "example", &tencentcloud.MonitorTmpExporterIntegrationArgs{
			InstanceId: pulumi.String("prom-gzg3f1em"),
			Kind:       pulumi.String("es-exporter"),
			Content:    pulumi.String(json0),
			ClusterId:  pulumi.String(""),
			KubeType:   pulumi.Float64(3),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using System.Text.Json;
using Pulumi;
using Tencentcloud = Pulumi.Tencentcloud;
return await Deployment.RunAsync(() => 
{
    var example = new Tencentcloud.MonitorTmpExporterIntegration("example", new()
    {
        InstanceId = "prom-gzg3f1em",
        Kind = "es-exporter",
        Content = JsonSerializer.Serialize(new Dictionary<string, object?>
        {
            ["name"] = "ex-exporter-example",
            ["kind"] = "es-exporter",
            ["spec"] = new Dictionary<string, object?>
            {
                ["instanceSpec"] = new Dictionary<string, object?>
                {
                    ["user"] = "root",
                    ["password"] = "Password@123",
                    ["url"] = "http://127.0.0.1:8080",
                    ["labels"] = new Dictionary<string, object?>
                    {
                        ["labelKey"] = "labelValue",
                    },
                },
                ["exporterSpec"] = new Dictionary<string, object?>
                {
                    ["all"] = true,
                    ["indices"] = true,
                    ["indicesSettings"] = true,
                    ["shards"] = true,
                    ["snapshots"] = true,
                    ["clusterSettings"] = true,
                },
            },
        }),
        ClusterId = "",
        KubeType = 3,
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.tencentcloud.MonitorTmpExporterIntegration;
import com.pulumi.tencentcloud.MonitorTmpExporterIntegrationArgs;
import static com.pulumi.codegen.internal.Serialization.*;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var example = new MonitorTmpExporterIntegration("example", MonitorTmpExporterIntegrationArgs.builder()
            .instanceId("prom-gzg3f1em")
            .kind("es-exporter")
            .content(serializeJson(
                jsonObject(
                    jsonProperty("name", "ex-exporter-example"),
                    jsonProperty("kind", "es-exporter"),
                    jsonProperty("spec", jsonObject(
                        jsonProperty("instanceSpec", jsonObject(
                            jsonProperty("user", "root"),
                            jsonProperty("password", "Password@123"),
                            jsonProperty("url", "http://127.0.0.1:8080"),
                            jsonProperty("labels", jsonObject(
                                jsonProperty("labelKey", "labelValue")
                            ))
                        )),
                        jsonProperty("exporterSpec", jsonObject(
                            jsonProperty("all", true),
                            jsonProperty("indices", true),
                            jsonProperty("indicesSettings", true),
                            jsonProperty("shards", true),
                            jsonProperty("snapshots", true),
                            jsonProperty("clusterSettings", true)
                        ))
                    ))
                )))
            .clusterId("")
            .kubeType(3)
            .build());
    }
}
resources:
  example:
    type: tencentcloud:MonitorTmpExporterIntegration
    properties:
      instanceId: prom-gzg3f1em
      kind: es-exporter
      content:
        fn::toJSON:
          name: ex-exporter-example
          kind: es-exporter
          spec:
            instanceSpec:
              user: root
              password: Password@123
              url: http://127.0.0.1:8080
              labels:
                labelKey: labelValue
            exporterSpec:
              all: true
              indices: true
              indicesSettings: true
              shards: true
              snapshots: true
              clusterSettings: true
      clusterId: ""
      kubeType: 3
Integration Center: CVM Scrape Job
import * as pulumi from "@pulumi/pulumi";
import * as tencentcloud from "@pulumi/tencentcloud";
const vpc = new tencentcloud.Vpc("vpc", {cidrBlock: "10.2.0.0/16"});
const subnet = new tencentcloud.Subnet("subnet", {
    vpcId: vpc.vpcId,
    cidrBlock: "10.2.11.0/24",
    availabilityZone: "ap-guangzhou-6",
});
const exampleMonitorTmpInstance = new tencentcloud.MonitorTmpInstance("exampleMonitorTmpInstance", {
    instanceName: "tf-example",
    vpcId: vpc.vpcId,
    subnetId: subnet.subnetId,
    dataRetentionTime: 15,
    zone: "ap-guangzhou-6",
    tags: {
        createdBy: "Terraform",
    },
});
// Integration Center: CVM Scrape Job
const exampleMonitorTmpExporterIntegration = new tencentcloud.MonitorTmpExporterIntegration("exampleMonitorTmpExporterIntegration", {
    instanceId: exampleMonitorTmpInstance.monitorTmpInstanceId,
    kind: "cvm-http-sd-exporter",
    content: JSON.stringify({
        kind: "cvm-http-sd-exporter",
        spec: {
            job: `job_name: example-cvm-job-name
metrics_path: /metrics
cvm_sd_configs:
- region: ap-guangzhou
  ports:
    - 9100
  filters:         
    - name: tag:YOUR_TAG_KEY
      values: 
      - YOUR_TAG_VALUE
relabel_configs: 
  - source_labels: [__meta_cvm_instance_state]
    regex: RUNNING
    action: keep
  - regex: __meta_cvm_tag_(.*)
    replacement: 1
    action: labelmap
  - source_labels: [__meta_cvm_region]
    target_label: region
    action: replace
`,
        },
    }),
    clusterId: "",
    kubeType: 3,
});
import pulumi
import json
import pulumi_tencentcloud as tencentcloud
vpc = tencentcloud.Vpc("vpc", cidr_block="10.2.0.0/16")
subnet = tencentcloud.Subnet("subnet",
    vpc_id=vpc.vpc_id,
    cidr_block="10.2.11.0/24",
    availability_zone="ap-guangzhou-6")
example_monitor_tmp_instance = tencentcloud.MonitorTmpInstance("exampleMonitorTmpInstance",
    instance_name="tf-example",
    vpc_id=vpc.vpc_id,
    subnet_id=subnet.subnet_id,
    data_retention_time=15,
    zone="ap-guangzhou-6",
    tags={
        "createdBy": "Terraform",
    })
# Integration Center: CVM Scrape Job
example_monitor_tmp_exporter_integration = tencentcloud.MonitorTmpExporterIntegration("exampleMonitorTmpExporterIntegration",
    instance_id=example_monitor_tmp_instance.monitor_tmp_instance_id,
    kind="cvm-http-sd-exporter",
    content=json.dumps({
        "kind": "cvm-http-sd-exporter",
        "spec": {
            "job": """job_name: example-cvm-job-name
metrics_path: /metrics
cvm_sd_configs:
- region: ap-guangzhou
  ports:
    - 9100
  filters:         
    - name: tag:YOUR_TAG_KEY
      values: 
      - YOUR_TAG_VALUE
relabel_configs: 
  - source_labels: [__meta_cvm_instance_state]
    regex: RUNNING
    action: keep
  - regex: __meta_cvm_tag_(.*)
    replacement: $1
    action: labelmap
  - source_labels: [__meta_cvm_region]
    target_label: region
    action: replace
""",
        },
    }),
    cluster_id="",
    kube_type=3)
package main
import (
	"encoding/json"
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/tencentcloud/tencentcloud"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		vpc, err := tencentcloud.NewVpc(ctx, "vpc", &tencentcloud.VpcArgs{
			CidrBlock: pulumi.String("10.2.0.0/16"),
		})
		if err != nil {
			return err
		}
		subnet, err := tencentcloud.NewSubnet(ctx, "subnet", &tencentcloud.SubnetArgs{
			VpcId:            vpc.VpcId,
			CidrBlock:        pulumi.String("10.2.11.0/24"),
			AvailabilityZone: pulumi.String("ap-guangzhou-6"),
		})
		if err != nil {
			return err
		}
		exampleMonitorTmpInstance, err := tencentcloud.NewMonitorTmpInstance(ctx, "exampleMonitorTmpInstance", &tencentcloud.MonitorTmpInstanceArgs{
			InstanceName:      pulumi.String("tf-example"),
			VpcId:             vpc.VpcId,
			SubnetId:          subnet.SubnetId,
			DataRetentionTime: pulumi.Float64(15),
			Zone:              pulumi.String("ap-guangzhou-6"),
			Tags: pulumi.StringMap{
				"createdBy": pulumi.String("Terraform"),
			},
		})
		if err != nil {
			return err
		}
		tmpJSON0, err := json.Marshal(map[string]interface{}{
			"kind": "cvm-http-sd-exporter",
			"spec": map[string]interface{}{
				"job": `job_name: example-cvm-job-name
metrics_path: /metrics
cvm_sd_configs:
- region: ap-guangzhou
  ports:
    - 9100
  filters:         
    - name: tag:YOUR_TAG_KEY
      values: 
      - YOUR_TAG_VALUE
relabel_configs: 
  - source_labels: [__meta_cvm_instance_state]
    regex: RUNNING
    action: keep
  - regex: __meta_cvm_tag_(.*)
    replacement: $1
    action: labelmap
  - source_labels: [__meta_cvm_region]
    target_label: region
    action: replace
`,
			},
		})
		if err != nil {
			return err
		}
		json0 := string(tmpJSON0)
		// Integration Center: CVM Scrape Job
		_, err = tencentcloud.NewMonitorTmpExporterIntegration(ctx, "exampleMonitorTmpExporterIntegration", &tencentcloud.MonitorTmpExporterIntegrationArgs{
			InstanceId: exampleMonitorTmpInstance.MonitorTmpInstanceId,
			Kind:       pulumi.String("cvm-http-sd-exporter"),
			Content:    pulumi.String(json0),
			ClusterId:  pulumi.String(""),
			KubeType:   pulumi.Float64(3),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using System.Text.Json;
using Pulumi;
using Tencentcloud = Pulumi.Tencentcloud;
return await Deployment.RunAsync(() => 
{
    var vpc = new Tencentcloud.Vpc("vpc", new()
    {
        CidrBlock = "10.2.0.0/16",
    });
    var subnet = new Tencentcloud.Subnet("subnet", new()
    {
        VpcId = vpc.VpcId,
        CidrBlock = "10.2.11.0/24",
        AvailabilityZone = "ap-guangzhou-6",
    });
    var exampleMonitorTmpInstance = new Tencentcloud.MonitorTmpInstance("exampleMonitorTmpInstance", new()
    {
        InstanceName = "tf-example",
        VpcId = vpc.VpcId,
        SubnetId = subnet.SubnetId,
        DataRetentionTime = 15,
        Zone = "ap-guangzhou-6",
        Tags = 
        {
            { "createdBy", "Terraform" },
        },
    });
    // Integration Center: CVM Scrape Job
    var exampleMonitorTmpExporterIntegration = new Tencentcloud.MonitorTmpExporterIntegration("exampleMonitorTmpExporterIntegration", new()
    {
        InstanceId = exampleMonitorTmpInstance.MonitorTmpInstanceId,
        Kind = "cvm-http-sd-exporter",
        Content = JsonSerializer.Serialize(new Dictionary<string, object?>
        {
            ["kind"] = "cvm-http-sd-exporter",
            ["spec"] = new Dictionary<string, object?>
            {
                ["job"] = @"job_name: example-cvm-job-name
metrics_path: /metrics
cvm_sd_configs:
- region: ap-guangzhou
  ports:
    - 9100
  filters:         
    - name: tag:YOUR_TAG_KEY
      values: 
      - YOUR_TAG_VALUE
relabel_configs: 
  - source_labels: [__meta_cvm_instance_state]
    regex: RUNNING
    action: keep
  - regex: __meta_cvm_tag_(.*)
    replacement: $1
    action: labelmap
  - source_labels: [__meta_cvm_region]
    target_label: region
    action: replace
",
            },
        }),
        ClusterId = "",
        KubeType = 3,
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.tencentcloud.Vpc;
import com.pulumi.tencentcloud.VpcArgs;
import com.pulumi.tencentcloud.Subnet;
import com.pulumi.tencentcloud.SubnetArgs;
import com.pulumi.tencentcloud.MonitorTmpInstance;
import com.pulumi.tencentcloud.MonitorTmpInstanceArgs;
import com.pulumi.tencentcloud.MonitorTmpExporterIntegration;
import com.pulumi.tencentcloud.MonitorTmpExporterIntegrationArgs;
import static com.pulumi.codegen.internal.Serialization.*;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var vpc = new Vpc("vpc", VpcArgs.builder()
            .cidrBlock("10.2.0.0/16")
            .build());
        var subnet = new Subnet("subnet", SubnetArgs.builder()
            .vpcId(vpc.vpcId())
            .cidrBlock("10.2.11.0/24")
            .availabilityZone("ap-guangzhou-6")
            .build());
        var exampleMonitorTmpInstance = new MonitorTmpInstance("exampleMonitorTmpInstance", MonitorTmpInstanceArgs.builder()
            .instanceName("tf-example")
            .vpcId(vpc.vpcId())
            .subnetId(subnet.subnetId())
            .dataRetentionTime(15)
            .zone("ap-guangzhou-6")
            .tags(Map.of("createdBy", "Terraform"))
            .build());
        // Integration Center: CVM Scrape Job
        var exampleMonitorTmpExporterIntegration = new MonitorTmpExporterIntegration("exampleMonitorTmpExporterIntegration", MonitorTmpExporterIntegrationArgs.builder()
            .instanceId(exampleMonitorTmpInstance.monitorTmpInstanceId())
            .kind("cvm-http-sd-exporter")
            .content(serializeJson(
                jsonObject(
                    jsonProperty("kind", "cvm-http-sd-exporter"),
                    jsonProperty("spec", jsonObject(
                        jsonProperty("job", """
job_name: example-cvm-job-name
metrics_path: /metrics
cvm_sd_configs:
- region: ap-guangzhou
  ports:
    - 9100
  filters:         
    - name: tag:YOUR_TAG_KEY
      values: 
      - YOUR_TAG_VALUE
relabel_configs: 
  - source_labels: [__meta_cvm_instance_state]
    regex: RUNNING
    action: keep
  - regex: __meta_cvm_tag_(.*)
    replacement: $1
    action: labelmap
  - source_labels: [__meta_cvm_region]
    target_label: region
    action: replace
                        """)
                    ))
                )))
            .clusterId("")
            .kubeType(3)
            .build());
    }
}
resources:
  vpc:
    type: tencentcloud:Vpc
    properties:
      cidrBlock: 10.2.0.0/16
  subnet:
    type: tencentcloud:Subnet
    properties:
      vpcId: ${vpc.vpcId}
      cidrBlock: 10.2.11.0/24
      availabilityZone: ap-guangzhou-6
  exampleMonitorTmpInstance:
    type: tencentcloud:MonitorTmpInstance
    properties:
      instanceName: tf-example
      vpcId: ${vpc.vpcId}
      subnetId: ${subnet.subnetId}
      dataRetentionTime: 15
      zone: ap-guangzhou-6
      tags:
        createdBy: Terraform
  # Integration Center: CVM Scrape Job
  exampleMonitorTmpExporterIntegration:
    type: tencentcloud:MonitorTmpExporterIntegration
    properties:
      instanceId: ${exampleMonitorTmpInstance.monitorTmpInstanceId}
      kind: cvm-http-sd-exporter
      content:
        fn::toJSON:
          kind: cvm-http-sd-exporter
          spec:
            job: "job_name: example-cvm-job-name\nmetrics_path: /metrics\ncvm_sd_configs:\n- region: ap-guangzhou\n  ports:\n    - 9100\n  filters:         \n    - name: tag:YOUR_TAG_KEY\n      values: \n      - YOUR_TAG_VALUE\nrelabel_configs: \n  - source_labels: [__meta_cvm_instance_state]\n    regex: RUNNING\n    action: keep\n  - regex: __meta_cvm_tag_(.*)\n    replacement: $1\n    action: labelmap\n  - source_labels: [__meta_cvm_region]\n    target_label: region\n    action: replace\n"
      clusterId: ""
      kubeType: 3
Create MonitorTmpExporterIntegration Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new MonitorTmpExporterIntegration(name: string, args: MonitorTmpExporterIntegrationArgs, opts?: CustomResourceOptions);@overload
def MonitorTmpExporterIntegration(resource_name: str,
                                  args: MonitorTmpExporterIntegrationArgs,
                                  opts: Optional[ResourceOptions] = None)
@overload
def MonitorTmpExporterIntegration(resource_name: str,
                                  opts: Optional[ResourceOptions] = None,
                                  cluster_id: Optional[str] = None,
                                  content: Optional[str] = None,
                                  instance_id: Optional[str] = None,
                                  kind: Optional[str] = None,
                                  kube_type: Optional[float] = None,
                                  monitor_tmp_exporter_integration_id: Optional[str] = None)func NewMonitorTmpExporterIntegration(ctx *Context, name string, args MonitorTmpExporterIntegrationArgs, opts ...ResourceOption) (*MonitorTmpExporterIntegration, error)public MonitorTmpExporterIntegration(string name, MonitorTmpExporterIntegrationArgs args, CustomResourceOptions? opts = null)
public MonitorTmpExporterIntegration(String name, MonitorTmpExporterIntegrationArgs args)
public MonitorTmpExporterIntegration(String name, MonitorTmpExporterIntegrationArgs args, CustomResourceOptions options)
type: tencentcloud:MonitorTmpExporterIntegration
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
 - The unique name of the resource.
 - args MonitorTmpExporterIntegrationArgs
 - The arguments to resource properties.
 - opts CustomResourceOptions
 - Bag of options to control resource's behavior.
 
- resource_name str
 - The unique name of the resource.
 - args MonitorTmpExporterIntegrationArgs
 - The arguments to resource properties.
 - opts ResourceOptions
 - Bag of options to control resource's behavior.
 
- ctx Context
 - Context object for the current deployment.
 - name string
 - The unique name of the resource.
 - args MonitorTmpExporterIntegrationArgs
 - The arguments to resource properties.
 - opts ResourceOption
 - Bag of options to control resource's behavior.
 
- name string
 - The unique name of the resource.
 - args MonitorTmpExporterIntegrationArgs
 - The arguments to resource properties.
 - opts CustomResourceOptions
 - Bag of options to control resource's behavior.
 
- name String
 - The unique name of the resource.
 - args MonitorTmpExporterIntegrationArgs
 - The arguments to resource properties.
 - options CustomResourceOptions
 - Bag of options to control resource's behavior.
 
MonitorTmpExporterIntegration Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The MonitorTmpExporterIntegration resource accepts the following input properties:
- Cluster
Id string - Cluster ID.
 - Content string
 - Integration config.
 - Instance
Id string - Instance id.
 - Kind string
 - Type.
 - Kube
Type double - Integration config.
 - Monitor
Tmp stringExporter Integration Id  - ID of the resource.
 
- Cluster
Id string - Cluster ID.
 - Content string
 - Integration config.
 - Instance
Id string - Instance id.
 - Kind string
 - Type.
 - Kube
Type float64 - Integration config.
 - Monitor
Tmp stringExporter Integration Id  - ID of the resource.
 
- cluster
Id String - Cluster ID.
 - content String
 - Integration config.
 - instance
Id String - Instance id.
 - kind String
 - Type.
 - kube
Type Double - Integration config.
 - monitor
Tmp StringExporter Integration Id  - ID of the resource.
 
- cluster
Id string - Cluster ID.
 - content string
 - Integration config.
 - instance
Id string - Instance id.
 - kind string
 - Type.
 - kube
Type number - Integration config.
 - monitor
Tmp stringExporter Integration Id  - ID of the resource.
 
- cluster_
id str - Cluster ID.
 - content str
 - Integration config.
 - instance_
id str - Instance id.
 - kind str
 - Type.
 - kube_
type float - Integration config.
 - monitor_
tmp_ strexporter_ integration_ id  - ID of the resource.
 
- cluster
Id String - Cluster ID.
 - content String
 - Integration config.
 - instance
Id String - Instance id.
 - kind String
 - Type.
 - kube
Type Number - Integration config.
 - monitor
Tmp StringExporter Integration Id  - ID of the resource.
 
Outputs
All input properties are implicitly available as output properties. Additionally, the MonitorTmpExporterIntegration resource produces the following output properties:
- Id string
 - The provider-assigned unique ID for this managed resource.
 
- Id string
 - The provider-assigned unique ID for this managed resource.
 
- id String
 - The provider-assigned unique ID for this managed resource.
 
- id string
 - The provider-assigned unique ID for this managed resource.
 
- id str
 - The provider-assigned unique ID for this managed resource.
 
- id String
 - The provider-assigned unique ID for this managed resource.
 
Look up Existing MonitorTmpExporterIntegration Resource
Get an existing MonitorTmpExporterIntegration resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: MonitorTmpExporterIntegrationState, opts?: CustomResourceOptions): MonitorTmpExporterIntegration@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        cluster_id: Optional[str] = None,
        content: Optional[str] = None,
        instance_id: Optional[str] = None,
        kind: Optional[str] = None,
        kube_type: Optional[float] = None,
        monitor_tmp_exporter_integration_id: Optional[str] = None) -> MonitorTmpExporterIntegrationfunc GetMonitorTmpExporterIntegration(ctx *Context, name string, id IDInput, state *MonitorTmpExporterIntegrationState, opts ...ResourceOption) (*MonitorTmpExporterIntegration, error)public static MonitorTmpExporterIntegration Get(string name, Input<string> id, MonitorTmpExporterIntegrationState? state, CustomResourceOptions? opts = null)public static MonitorTmpExporterIntegration get(String name, Output<String> id, MonitorTmpExporterIntegrationState state, CustomResourceOptions options)resources:  _:    type: tencentcloud:MonitorTmpExporterIntegration    get:      id: ${id}- name
 - The unique name of the resulting resource.
 - id
 - The unique provider ID of the resource to lookup.
 - state
 - Any extra arguments used during the lookup.
 - opts
 - A bag of options that control this resource's behavior.
 
- resource_name
 - The unique name of the resulting resource.
 - id
 - The unique provider ID of the resource to lookup.
 
- name
 - The unique name of the resulting resource.
 - id
 - The unique provider ID of the resource to lookup.
 - state
 - Any extra arguments used during the lookup.
 - opts
 - A bag of options that control this resource's behavior.
 
- name
 - The unique name of the resulting resource.
 - id
 - The unique provider ID of the resource to lookup.
 - state
 - Any extra arguments used during the lookup.
 - opts
 - A bag of options that control this resource's behavior.
 
- name
 - The unique name of the resulting resource.
 - id
 - The unique provider ID of the resource to lookup.
 - state
 - Any extra arguments used during the lookup.
 - opts
 - A bag of options that control this resource's behavior.
 
- Cluster
Id string - Cluster ID.
 - Content string
 - Integration config.
 - Instance
Id string - Instance id.
 - Kind string
 - Type.
 - Kube
Type double - Integration config.
 - Monitor
Tmp stringExporter Integration Id  - ID of the resource.
 
- Cluster
Id string - Cluster ID.
 - Content string
 - Integration config.
 - Instance
Id string - Instance id.
 - Kind string
 - Type.
 - Kube
Type float64 - Integration config.
 - Monitor
Tmp stringExporter Integration Id  - ID of the resource.
 
- cluster
Id String - Cluster ID.
 - content String
 - Integration config.
 - instance
Id String - Instance id.
 - kind String
 - Type.
 - kube
Type Double - Integration config.
 - monitor
Tmp StringExporter Integration Id  - ID of the resource.
 
- cluster
Id string - Cluster ID.
 - content string
 - Integration config.
 - instance
Id string - Instance id.
 - kind string
 - Type.
 - kube
Type number - Integration config.
 - monitor
Tmp stringExporter Integration Id  - ID of the resource.
 
- cluster_
id str - Cluster ID.
 - content str
 - Integration config.
 - instance_
id str - Instance id.
 - kind str
 - Type.
 - kube_
type float - Integration config.
 - monitor_
tmp_ strexporter_ integration_ id  - ID of the resource.
 
- cluster
Id String - Cluster ID.
 - content String
 - Integration config.
 - instance
Id String - Instance id.
 - kind String
 - Type.
 - kube
Type Number - Integration config.
 - monitor
Tmp StringExporter Integration Id  - ID of the resource.
 
Package Details
- Repository
 - tencentcloud tencentcloudstack/terraform-provider-tencentcloud
 - License
 - Notes
 - This Pulumi package is based on the 
tencentcloudTerraform Provider.