1. Packages
  2. Tencentcloud Provider
  3. API Docs
  4. MonitorTmpExporterIntegrationV2
tencentcloud 1.81.189 published on Wednesday, Apr 30, 2025 by tencentcloudstack

tencentcloud.MonitorTmpExporterIntegrationV2

Explore with Pulumi AI

tencentcloud logo
tencentcloud 1.81.189 published on Wednesday, Apr 30, 2025 by tencentcloudstack

    Provides a resource to create a monitor Exporter Integration

    NOTE: If you only want to upgrade the exporter version with same config, you can set version under instanceSpec with any value to trigger the change.

    Example Usage

    Use qcloud-exporter

    import * as pulumi from "@pulumi/pulumi";
    import * as tencentcloud from "@pulumi/tencentcloud";
    
    const example = new tencentcloud.MonitorTmpExporterIntegrationV2("example", {
        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",
    });
    
    import pulumi
    import pulumi_tencentcloud as tencentcloud
    
    example = tencentcloud.MonitorTmpExporterIntegrationV2("example",
        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")
    
    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.NewMonitorTmpExporterIntegrationV2(ctx, "example", &tencentcloud.MonitorTmpExporterIntegrationV2Args{
    			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"),
    		})
    		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.MonitorTmpExporterIntegrationV2("example", new()
        {
            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",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.tencentcloud.MonitorTmpExporterIntegrationV2;
    import com.pulumi.tencentcloud.MonitorTmpExporterIntegrationV2Args;
    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 MonitorTmpExporterIntegrationV2("example", MonitorTmpExporterIntegrationV2Args.builder()
                .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")
                .build());
    
        }
    }
    
    resources:
      example:
        type: tencentcloud:MonitorTmpExporterIntegrationV2
        properties:
          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
    

    Use es-exporter

    import * as pulumi from "@pulumi/pulumi";
    import * as tencentcloud from "@pulumi/tencentcloud";
    
    const example = new tencentcloud.MonitorTmpExporterIntegrationV2("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,
                },
            },
        }),
    });
    
    import pulumi
    import json
    import pulumi_tencentcloud as tencentcloud
    
    example = tencentcloud.MonitorTmpExporterIntegrationV2("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,
                },
            },
        }))
    
    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.NewMonitorTmpExporterIntegrationV2(ctx, "example", &tencentcloud.MonitorTmpExporterIntegrationV2Args{
    			InstanceId: pulumi.String("prom-gzg3f1em"),
    			Kind:       pulumi.String("es-exporter"),
    			Content:    pulumi.String(json0),
    		})
    		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.MonitorTmpExporterIntegrationV2("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,
                    },
                },
            }),
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.tencentcloud.MonitorTmpExporterIntegrationV2;
    import com.pulumi.tencentcloud.MonitorTmpExporterIntegrationV2Args;
    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 MonitorTmpExporterIntegrationV2("example", MonitorTmpExporterIntegrationV2Args.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)
                            ))
                        ))
                    )))
                .build());
    
        }
    }
    
    resources:
      example:
        type: tencentcloud:MonitorTmpExporterIntegrationV2
        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
    

    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
    `,
            },
        }),
    });
    
    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
    """,
            },
        }))
    
    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),
    		})
    		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
    ",
                },
            }),
        });
    
    });
    
    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
                            """)
                        ))
                    )))
                .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"
    

    Create MonitorTmpExporterIntegrationV2 Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new MonitorTmpExporterIntegrationV2(name: string, args: MonitorTmpExporterIntegrationV2Args, opts?: CustomResourceOptions);
    @overload
    def MonitorTmpExporterIntegrationV2(resource_name: str,
                                        args: MonitorTmpExporterIntegrationV2Args,
                                        opts: Optional[ResourceOptions] = None)
    
    @overload
    def MonitorTmpExporterIntegrationV2(resource_name: str,
                                        opts: Optional[ResourceOptions] = None,
                                        content: Optional[str] = None,
                                        instance_id: Optional[str] = None,
                                        kind: Optional[str] = None,
                                        cluster_id: Optional[str] = None,
                                        kube_type: Optional[float] = None,
                                        monitor_tmp_exporter_integration_v2_id: Optional[str] = None)
    func NewMonitorTmpExporterIntegrationV2(ctx *Context, name string, args MonitorTmpExporterIntegrationV2Args, opts ...ResourceOption) (*MonitorTmpExporterIntegrationV2, error)
    public MonitorTmpExporterIntegrationV2(string name, MonitorTmpExporterIntegrationV2Args args, CustomResourceOptions? opts = null)
    public MonitorTmpExporterIntegrationV2(String name, MonitorTmpExporterIntegrationV2Args args)
    public MonitorTmpExporterIntegrationV2(String name, MonitorTmpExporterIntegrationV2Args args, CustomResourceOptions options)
    
    type: tencentcloud:MonitorTmpExporterIntegrationV2
    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 MonitorTmpExporterIntegrationV2Args
    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 MonitorTmpExporterIntegrationV2Args
    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 MonitorTmpExporterIntegrationV2Args
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args MonitorTmpExporterIntegrationV2Args
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args MonitorTmpExporterIntegrationV2Args
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    MonitorTmpExporterIntegrationV2 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 MonitorTmpExporterIntegrationV2 resource accepts the following input properties:

    Content string
    Integration config.
    InstanceId string
    Instance ID.
    Kind string
    Type.
    ClusterId string
    Cluster ID.
    KubeType double
    Integration config. 1 - TKE; 2 - EKS; 3 - MEKS.
    MonitorTmpExporterIntegrationV2Id string
    ID of the resource.
    Content string
    Integration config.
    InstanceId string
    Instance ID.
    Kind string
    Type.
    ClusterId string
    Cluster ID.
    KubeType float64
    Integration config. 1 - TKE; 2 - EKS; 3 - MEKS.
    MonitorTmpExporterIntegrationV2Id string
    ID of the resource.
    content String
    Integration config.
    instanceId String
    Instance ID.
    kind String
    Type.
    clusterId String
    Cluster ID.
    kubeType Double
    Integration config. 1 - TKE; 2 - EKS; 3 - MEKS.
    monitorTmpExporterIntegrationV2Id String
    ID of the resource.
    content string
    Integration config.
    instanceId string
    Instance ID.
    kind string
    Type.
    clusterId string
    Cluster ID.
    kubeType number
    Integration config. 1 - TKE; 2 - EKS; 3 - MEKS.
    monitorTmpExporterIntegrationV2Id string
    ID of the resource.
    content str
    Integration config.
    instance_id str
    Instance ID.
    kind str
    Type.
    cluster_id str
    Cluster ID.
    kube_type float
    Integration config. 1 - TKE; 2 - EKS; 3 - MEKS.
    monitor_tmp_exporter_integration_v2_id str
    ID of the resource.
    content String
    Integration config.
    instanceId String
    Instance ID.
    kind String
    Type.
    clusterId String
    Cluster ID.
    kubeType Number
    Integration config. 1 - TKE; 2 - EKS; 3 - MEKS.
    monitorTmpExporterIntegrationV2Id String
    ID of the resource.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the MonitorTmpExporterIntegrationV2 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 MonitorTmpExporterIntegrationV2 Resource

    Get an existing MonitorTmpExporterIntegrationV2 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?: MonitorTmpExporterIntegrationV2State, opts?: CustomResourceOptions): MonitorTmpExporterIntegrationV2
    @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_v2_id: Optional[str] = None) -> MonitorTmpExporterIntegrationV2
    func GetMonitorTmpExporterIntegrationV2(ctx *Context, name string, id IDInput, state *MonitorTmpExporterIntegrationV2State, opts ...ResourceOption) (*MonitorTmpExporterIntegrationV2, error)
    public static MonitorTmpExporterIntegrationV2 Get(string name, Input<string> id, MonitorTmpExporterIntegrationV2State? state, CustomResourceOptions? opts = null)
    public static MonitorTmpExporterIntegrationV2 get(String name, Output<String> id, MonitorTmpExporterIntegrationV2State state, CustomResourceOptions options)
    resources:  _:    type: tencentcloud:MonitorTmpExporterIntegrationV2    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.
    The following state arguments are supported:
    ClusterId string
    Cluster ID.
    Content string
    Integration config.
    InstanceId string
    Instance ID.
    Kind string
    Type.
    KubeType double
    Integration config. 1 - TKE; 2 - EKS; 3 - MEKS.
    MonitorTmpExporterIntegrationV2Id string
    ID of the resource.
    ClusterId string
    Cluster ID.
    Content string
    Integration config.
    InstanceId string
    Instance ID.
    Kind string
    Type.
    KubeType float64
    Integration config. 1 - TKE; 2 - EKS; 3 - MEKS.
    MonitorTmpExporterIntegrationV2Id string
    ID of the resource.
    clusterId String
    Cluster ID.
    content String
    Integration config.
    instanceId String
    Instance ID.
    kind String
    Type.
    kubeType Double
    Integration config. 1 - TKE; 2 - EKS; 3 - MEKS.
    monitorTmpExporterIntegrationV2Id String
    ID of the resource.
    clusterId string
    Cluster ID.
    content string
    Integration config.
    instanceId string
    Instance ID.
    kind string
    Type.
    kubeType number
    Integration config. 1 - TKE; 2 - EKS; 3 - MEKS.
    monitorTmpExporterIntegrationV2Id string
    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. 1 - TKE; 2 - EKS; 3 - MEKS.
    monitor_tmp_exporter_integration_v2_id str
    ID of the resource.
    clusterId String
    Cluster ID.
    content String
    Integration config.
    instanceId String
    Instance ID.
    kind String
    Type.
    kubeType Number
    Integration config. 1 - TKE; 2 - EKS; 3 - MEKS.
    monitorTmpExporterIntegrationV2Id String
    ID of the resource.

    Package Details

    Repository
    tencentcloud tencentcloudstack/terraform-provider-tencentcloud
    License
    Notes
    This Pulumi package is based on the tencentcloud Terraform Provider.
    tencentcloud logo
    tencentcloud 1.81.189 published on Wednesday, Apr 30, 2025 by tencentcloudstack