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

com.pulumi.azurenative.insights.inputs.DataCollectionRuleDataSourcesArgs Maven / Gradle / Ivy

// *** 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.azurenative.insights.inputs;

import com.pulumi.azurenative.insights.inputs.DataSourcesSpecDataImportsArgs;
import com.pulumi.azurenative.insights.inputs.ExtensionDataSourceArgs;
import com.pulumi.azurenative.insights.inputs.IisLogsDataSourceArgs;
import com.pulumi.azurenative.insights.inputs.LogFilesDataSourceArgs;
import com.pulumi.azurenative.insights.inputs.PerfCounterDataSourceArgs;
import com.pulumi.azurenative.insights.inputs.PlatformTelemetryDataSourceArgs;
import com.pulumi.azurenative.insights.inputs.PrometheusForwarderDataSourceArgs;
import com.pulumi.azurenative.insights.inputs.SyslogDataSourceArgs;
import com.pulumi.azurenative.insights.inputs.WindowsEventLogDataSourceArgs;
import com.pulumi.azurenative.insights.inputs.WindowsFirewallLogsDataSourceArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * The specification of data sources.
 * This property is optional and can be omitted if the rule is meant to be used via direct calls to the provisioned endpoint.
 * 
 */
public final class DataCollectionRuleDataSourcesArgs extends com.pulumi.resources.ResourceArgs {

    public static final DataCollectionRuleDataSourcesArgs Empty = new DataCollectionRuleDataSourcesArgs();

    /**
     * Specifications of pull based data sources
     * 
     */
    @Import(name="dataImports")
    private @Nullable Output dataImports;

    /**
     * @return Specifications of pull based data sources
     * 
     */
    public Optional> dataImports() {
        return Optional.ofNullable(this.dataImports);
    }

    /**
     * The list of Azure VM extension data source configurations.
     * 
     */
    @Import(name="extensions")
    private @Nullable Output> extensions;

    /**
     * @return The list of Azure VM extension data source configurations.
     * 
     */
    public Optional>> extensions() {
        return Optional.ofNullable(this.extensions);
    }

    /**
     * The list of IIS logs source configurations.
     * 
     */
    @Import(name="iisLogs")
    private @Nullable Output> iisLogs;

    /**
     * @return The list of IIS logs source configurations.
     * 
     */
    public Optional>> iisLogs() {
        return Optional.ofNullable(this.iisLogs);
    }

    /**
     * The list of Log files source configurations.
     * 
     */
    @Import(name="logFiles")
    private @Nullable Output> logFiles;

    /**
     * @return The list of Log files source configurations.
     * 
     */
    public Optional>> logFiles() {
        return Optional.ofNullable(this.logFiles);
    }

    /**
     * The list of performance counter data source configurations.
     * 
     */
    @Import(name="performanceCounters")
    private @Nullable Output> performanceCounters;

    /**
     * @return The list of performance counter data source configurations.
     * 
     */
    public Optional>> performanceCounters() {
        return Optional.ofNullable(this.performanceCounters);
    }

    /**
     * The list of platform telemetry configurations
     * 
     */
    @Import(name="platformTelemetry")
    private @Nullable Output> platformTelemetry;

    /**
     * @return The list of platform telemetry configurations
     * 
     */
    public Optional>> platformTelemetry() {
        return Optional.ofNullable(this.platformTelemetry);
    }

    /**
     * The list of Prometheus forwarder data source configurations.
     * 
     */
    @Import(name="prometheusForwarder")
    private @Nullable Output> prometheusForwarder;

    /**
     * @return The list of Prometheus forwarder data source configurations.
     * 
     */
    public Optional>> prometheusForwarder() {
        return Optional.ofNullable(this.prometheusForwarder);
    }

    /**
     * The list of Syslog data source configurations.
     * 
     */
    @Import(name="syslog")
    private @Nullable Output> syslog;

    /**
     * @return The list of Syslog data source configurations.
     * 
     */
    public Optional>> syslog() {
        return Optional.ofNullable(this.syslog);
    }

    /**
     * The list of Windows Event Log data source configurations.
     * 
     */
    @Import(name="windowsEventLogs")
    private @Nullable Output> windowsEventLogs;

    /**
     * @return The list of Windows Event Log data source configurations.
     * 
     */
    public Optional>> windowsEventLogs() {
        return Optional.ofNullable(this.windowsEventLogs);
    }

    /**
     * The list of Windows Firewall logs source configurations.
     * 
     */
    @Import(name="windowsFirewallLogs")
    private @Nullable Output> windowsFirewallLogs;

    /**
     * @return The list of Windows Firewall logs source configurations.
     * 
     */
    public Optional>> windowsFirewallLogs() {
        return Optional.ofNullable(this.windowsFirewallLogs);
    }

    private DataCollectionRuleDataSourcesArgs() {}

    private DataCollectionRuleDataSourcesArgs(DataCollectionRuleDataSourcesArgs $) {
        this.dataImports = $.dataImports;
        this.extensions = $.extensions;
        this.iisLogs = $.iisLogs;
        this.logFiles = $.logFiles;
        this.performanceCounters = $.performanceCounters;
        this.platformTelemetry = $.platformTelemetry;
        this.prometheusForwarder = $.prometheusForwarder;
        this.syslog = $.syslog;
        this.windowsEventLogs = $.windowsEventLogs;
        this.windowsFirewallLogs = $.windowsFirewallLogs;
    }

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

    public static final class Builder {
        private DataCollectionRuleDataSourcesArgs $;

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

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

        /**
         * @param dataImports Specifications of pull based data sources
         * 
         * @return builder
         * 
         */
        public Builder dataImports(@Nullable Output dataImports) {
            $.dataImports = dataImports;
            return this;
        }

        /**
         * @param dataImports Specifications of pull based data sources
         * 
         * @return builder
         * 
         */
        public Builder dataImports(DataSourcesSpecDataImportsArgs dataImports) {
            return dataImports(Output.of(dataImports));
        }

        /**
         * @param extensions The list of Azure VM extension data source configurations.
         * 
         * @return builder
         * 
         */
        public Builder extensions(@Nullable Output> extensions) {
            $.extensions = extensions;
            return this;
        }

        /**
         * @param extensions The list of Azure VM extension data source configurations.
         * 
         * @return builder
         * 
         */
        public Builder extensions(List extensions) {
            return extensions(Output.of(extensions));
        }

        /**
         * @param extensions The list of Azure VM extension data source configurations.
         * 
         * @return builder
         * 
         */
        public Builder extensions(ExtensionDataSourceArgs... extensions) {
            return extensions(List.of(extensions));
        }

        /**
         * @param iisLogs The list of IIS logs source configurations.
         * 
         * @return builder
         * 
         */
        public Builder iisLogs(@Nullable Output> iisLogs) {
            $.iisLogs = iisLogs;
            return this;
        }

        /**
         * @param iisLogs The list of IIS logs source configurations.
         * 
         * @return builder
         * 
         */
        public Builder iisLogs(List iisLogs) {
            return iisLogs(Output.of(iisLogs));
        }

        /**
         * @param iisLogs The list of IIS logs source configurations.
         * 
         * @return builder
         * 
         */
        public Builder iisLogs(IisLogsDataSourceArgs... iisLogs) {
            return iisLogs(List.of(iisLogs));
        }

        /**
         * @param logFiles The list of Log files source configurations.
         * 
         * @return builder
         * 
         */
        public Builder logFiles(@Nullable Output> logFiles) {
            $.logFiles = logFiles;
            return this;
        }

        /**
         * @param logFiles The list of Log files source configurations.
         * 
         * @return builder
         * 
         */
        public Builder logFiles(List logFiles) {
            return logFiles(Output.of(logFiles));
        }

        /**
         * @param logFiles The list of Log files source configurations.
         * 
         * @return builder
         * 
         */
        public Builder logFiles(LogFilesDataSourceArgs... logFiles) {
            return logFiles(List.of(logFiles));
        }

        /**
         * @param performanceCounters The list of performance counter data source configurations.
         * 
         * @return builder
         * 
         */
        public Builder performanceCounters(@Nullable Output> performanceCounters) {
            $.performanceCounters = performanceCounters;
            return this;
        }

        /**
         * @param performanceCounters The list of performance counter data source configurations.
         * 
         * @return builder
         * 
         */
        public Builder performanceCounters(List performanceCounters) {
            return performanceCounters(Output.of(performanceCounters));
        }

        /**
         * @param performanceCounters The list of performance counter data source configurations.
         * 
         * @return builder
         * 
         */
        public Builder performanceCounters(PerfCounterDataSourceArgs... performanceCounters) {
            return performanceCounters(List.of(performanceCounters));
        }

        /**
         * @param platformTelemetry The list of platform telemetry configurations
         * 
         * @return builder
         * 
         */
        public Builder platformTelemetry(@Nullable Output> platformTelemetry) {
            $.platformTelemetry = platformTelemetry;
            return this;
        }

        /**
         * @param platformTelemetry The list of platform telemetry configurations
         * 
         * @return builder
         * 
         */
        public Builder platformTelemetry(List platformTelemetry) {
            return platformTelemetry(Output.of(platformTelemetry));
        }

        /**
         * @param platformTelemetry The list of platform telemetry configurations
         * 
         * @return builder
         * 
         */
        public Builder platformTelemetry(PlatformTelemetryDataSourceArgs... platformTelemetry) {
            return platformTelemetry(List.of(platformTelemetry));
        }

        /**
         * @param prometheusForwarder The list of Prometheus forwarder data source configurations.
         * 
         * @return builder
         * 
         */
        public Builder prometheusForwarder(@Nullable Output> prometheusForwarder) {
            $.prometheusForwarder = prometheusForwarder;
            return this;
        }

        /**
         * @param prometheusForwarder The list of Prometheus forwarder data source configurations.
         * 
         * @return builder
         * 
         */
        public Builder prometheusForwarder(List prometheusForwarder) {
            return prometheusForwarder(Output.of(prometheusForwarder));
        }

        /**
         * @param prometheusForwarder The list of Prometheus forwarder data source configurations.
         * 
         * @return builder
         * 
         */
        public Builder prometheusForwarder(PrometheusForwarderDataSourceArgs... prometheusForwarder) {
            return prometheusForwarder(List.of(prometheusForwarder));
        }

        /**
         * @param syslog The list of Syslog data source configurations.
         * 
         * @return builder
         * 
         */
        public Builder syslog(@Nullable Output> syslog) {
            $.syslog = syslog;
            return this;
        }

        /**
         * @param syslog The list of Syslog data source configurations.
         * 
         * @return builder
         * 
         */
        public Builder syslog(List syslog) {
            return syslog(Output.of(syslog));
        }

        /**
         * @param syslog The list of Syslog data source configurations.
         * 
         * @return builder
         * 
         */
        public Builder syslog(SyslogDataSourceArgs... syslog) {
            return syslog(List.of(syslog));
        }

        /**
         * @param windowsEventLogs The list of Windows Event Log data source configurations.
         * 
         * @return builder
         * 
         */
        public Builder windowsEventLogs(@Nullable Output> windowsEventLogs) {
            $.windowsEventLogs = windowsEventLogs;
            return this;
        }

        /**
         * @param windowsEventLogs The list of Windows Event Log data source configurations.
         * 
         * @return builder
         * 
         */
        public Builder windowsEventLogs(List windowsEventLogs) {
            return windowsEventLogs(Output.of(windowsEventLogs));
        }

        /**
         * @param windowsEventLogs The list of Windows Event Log data source configurations.
         * 
         * @return builder
         * 
         */
        public Builder windowsEventLogs(WindowsEventLogDataSourceArgs... windowsEventLogs) {
            return windowsEventLogs(List.of(windowsEventLogs));
        }

        /**
         * @param windowsFirewallLogs The list of Windows Firewall logs source configurations.
         * 
         * @return builder
         * 
         */
        public Builder windowsFirewallLogs(@Nullable Output> windowsFirewallLogs) {
            $.windowsFirewallLogs = windowsFirewallLogs;
            return this;
        }

        /**
         * @param windowsFirewallLogs The list of Windows Firewall logs source configurations.
         * 
         * @return builder
         * 
         */
        public Builder windowsFirewallLogs(List windowsFirewallLogs) {
            return windowsFirewallLogs(Output.of(windowsFirewallLogs));
        }

        /**
         * @param windowsFirewallLogs The list of Windows Firewall logs source configurations.
         * 
         * @return builder
         * 
         */
        public Builder windowsFirewallLogs(WindowsFirewallLogsDataSourceArgs... windowsFirewallLogs) {
            return windowsFirewallLogs(List.of(windowsFirewallLogs));
        }

        public DataCollectionRuleDataSourcesArgs build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy