All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.alicloud.cdn.RealTimeLogDeliveryArgs Maven / Gradle / Ivy

There is a newer version: 3.63.0-alpha.1727424957
Show newest version
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.alicloud.cdn;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Objects;


public final class RealTimeLogDeliveryArgs extends com.pulumi.resources.ResourceArgs {

    public static final RealTimeLogDeliveryArgs Empty = new RealTimeLogDeliveryArgs();

    /**
     * The accelerated domain name for which you want to configure real-time log delivery. You can specify multiple domain names and separate them with commas (,).
     * 
     */
    @Import(name="domain", required=true)
    private Output domain;

    /**
     * @return The accelerated domain name for which you want to configure real-time log delivery. You can specify multiple domain names and separate them with commas (,).
     * 
     */
    public Output domain() {
        return this.domain;
    }

    /**
     * The name of the Logstore that collects log data from Alibaba Cloud Content Delivery Network (CDN) in real time.
     * 
     */
    @Import(name="logstore", required=true)
    private Output logstore;

    /**
     * @return The name of the Logstore that collects log data from Alibaba Cloud Content Delivery Network (CDN) in real time.
     * 
     */
    public Output logstore() {
        return this.logstore;
    }

    /**
     * The name of the Log Service project that is used for real-time log delivery.
     * 
     */
    @Import(name="project", required=true)
    private Output project;

    /**
     * @return The name of the Log Service project that is used for real-time log delivery.
     * 
     */
    public Output project() {
        return this.project;
    }

    /**
     * The region where the Log Service project is deployed.
     * 
     * > **NOTE:** If your Project and Logstore services already exist, if you continue to create existing content, the created content will overwrite your existing indexes and custom reports. Please be careful to create your existing services to avoid affecting your online services after coverage.
     * 
     */
    @Import(name="slsRegion", required=true)
    private Output slsRegion;

    /**
     * @return The region where the Log Service project is deployed.
     * 
     * > **NOTE:** If your Project and Logstore services already exist, if you continue to create existing content, the created content will overwrite your existing indexes and custom reports. Please be careful to create your existing services to avoid affecting your online services after coverage.
     * 
     */
    public Output slsRegion() {
        return this.slsRegion;
    }

    private RealTimeLogDeliveryArgs() {}

    private RealTimeLogDeliveryArgs(RealTimeLogDeliveryArgs $) {
        this.domain = $.domain;
        this.logstore = $.logstore;
        this.project = $.project;
        this.slsRegion = $.slsRegion;
    }

    public static Builder builder() {
        return new Builder();
    }
    public static Builder builder(RealTimeLogDeliveryArgs defaults) {
        return new Builder(defaults);
    }

    public static final class Builder {
        private RealTimeLogDeliveryArgs $;

        public Builder() {
            $ = new RealTimeLogDeliveryArgs();
        }

        public Builder(RealTimeLogDeliveryArgs defaults) {
            $ = new RealTimeLogDeliveryArgs(Objects.requireNonNull(defaults));
        }

        /**
         * @param domain The accelerated domain name for which you want to configure real-time log delivery. You can specify multiple domain names and separate them with commas (,).
         * 
         * @return builder
         * 
         */
        public Builder domain(Output domain) {
            $.domain = domain;
            return this;
        }

        /**
         * @param domain The accelerated domain name for which you want to configure real-time log delivery. You can specify multiple domain names and separate them with commas (,).
         * 
         * @return builder
         * 
         */
        public Builder domain(String domain) {
            return domain(Output.of(domain));
        }

        /**
         * @param logstore The name of the Logstore that collects log data from Alibaba Cloud Content Delivery Network (CDN) in real time.
         * 
         * @return builder
         * 
         */
        public Builder logstore(Output logstore) {
            $.logstore = logstore;
            return this;
        }

        /**
         * @param logstore The name of the Logstore that collects log data from Alibaba Cloud Content Delivery Network (CDN) in real time.
         * 
         * @return builder
         * 
         */
        public Builder logstore(String logstore) {
            return logstore(Output.of(logstore));
        }

        /**
         * @param project The name of the Log Service project that is used for real-time log delivery.
         * 
         * @return builder
         * 
         */
        public Builder project(Output project) {
            $.project = project;
            return this;
        }

        /**
         * @param project The name of the Log Service project that is used for real-time log delivery.
         * 
         * @return builder
         * 
         */
        public Builder project(String project) {
            return project(Output.of(project));
        }

        /**
         * @param slsRegion The region where the Log Service project is deployed.
         * 
         * > **NOTE:** If your Project and Logstore services already exist, if you continue to create existing content, the created content will overwrite your existing indexes and custom reports. Please be careful to create your existing services to avoid affecting your online services after coverage.
         * 
         * @return builder
         * 
         */
        public Builder slsRegion(Output slsRegion) {
            $.slsRegion = slsRegion;
            return this;
        }

        /**
         * @param slsRegion The region where the Log Service project is deployed.
         * 
         * > **NOTE:** If your Project and Logstore services already exist, if you continue to create existing content, the created content will overwrite your existing indexes and custom reports. Please be careful to create your existing services to avoid affecting your online services after coverage.
         * 
         * @return builder
         * 
         */
        public Builder slsRegion(String slsRegion) {
            return slsRegion(Output.of(slsRegion));
        }

        public RealTimeLogDeliveryArgs build() {
            if ($.domain == null) {
                throw new MissingRequiredPropertyException("RealTimeLogDeliveryArgs", "domain");
            }
            if ($.logstore == null) {
                throw new MissingRequiredPropertyException("RealTimeLogDeliveryArgs", "logstore");
            }
            if ($.project == null) {
                throw new MissingRequiredPropertyException("RealTimeLogDeliveryArgs", "project");
            }
            if ($.slsRegion == null) {
                throw new MissingRequiredPropertyException("RealTimeLogDeliveryArgs", "slsRegion");
            }
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy