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

com.pulumi.azurenative.logz.outputs.LogRulesResponse Maven / Gradle / Ivy

There is a newer version: 2.78.0
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.azurenative.logz.outputs;

import com.pulumi.azurenative.logz.outputs.FilteringTagResponse;
import com.pulumi.core.annotations.CustomType;
import java.lang.Boolean;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class LogRulesResponse {
    /**
     * @return List of filtering tags to be used for capturing logs. This only takes effect if SendActivityLogs flag is enabled. If empty, all resources will be captured. If only Exclude action is specified, the rules will apply to the list of all available resources. If Include actions are specified, the rules will only include resources with the associated tags.
     * 
     */
    private @Nullable List filteringTags;
    /**
     * @return Flag specifying if AAD logs should be sent for the Monitor resource.
     * 
     */
    private @Nullable Boolean sendAadLogs;
    /**
     * @return Flag specifying if activity logs from Azure resources should be sent for the Monitor resource.
     * 
     */
    private @Nullable Boolean sendActivityLogs;
    /**
     * @return Flag specifying if subscription logs should be sent for the Monitor resource.
     * 
     */
    private @Nullable Boolean sendSubscriptionLogs;

    private LogRulesResponse() {}
    /**
     * @return List of filtering tags to be used for capturing logs. This only takes effect if SendActivityLogs flag is enabled. If empty, all resources will be captured. If only Exclude action is specified, the rules will apply to the list of all available resources. If Include actions are specified, the rules will only include resources with the associated tags.
     * 
     */
    public List filteringTags() {
        return this.filteringTags == null ? List.of() : this.filteringTags;
    }
    /**
     * @return Flag specifying if AAD logs should be sent for the Monitor resource.
     * 
     */
    public Optional sendAadLogs() {
        return Optional.ofNullable(this.sendAadLogs);
    }
    /**
     * @return Flag specifying if activity logs from Azure resources should be sent for the Monitor resource.
     * 
     */
    public Optional sendActivityLogs() {
        return Optional.ofNullable(this.sendActivityLogs);
    }
    /**
     * @return Flag specifying if subscription logs should be sent for the Monitor resource.
     * 
     */
    public Optional sendSubscriptionLogs() {
        return Optional.ofNullable(this.sendSubscriptionLogs);
    }

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

    public static Builder builder(LogRulesResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable List filteringTags;
        private @Nullable Boolean sendAadLogs;
        private @Nullable Boolean sendActivityLogs;
        private @Nullable Boolean sendSubscriptionLogs;
        public Builder() {}
        public Builder(LogRulesResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.filteringTags = defaults.filteringTags;
    	      this.sendAadLogs = defaults.sendAadLogs;
    	      this.sendActivityLogs = defaults.sendActivityLogs;
    	      this.sendSubscriptionLogs = defaults.sendSubscriptionLogs;
        }

        @CustomType.Setter
        public Builder filteringTags(@Nullable List filteringTags) {

            this.filteringTags = filteringTags;
            return this;
        }
        public Builder filteringTags(FilteringTagResponse... filteringTags) {
            return filteringTags(List.of(filteringTags));
        }
        @CustomType.Setter
        public Builder sendAadLogs(@Nullable Boolean sendAadLogs) {

            this.sendAadLogs = sendAadLogs;
            return this;
        }
        @CustomType.Setter
        public Builder sendActivityLogs(@Nullable Boolean sendActivityLogs) {

            this.sendActivityLogs = sendActivityLogs;
            return this;
        }
        @CustomType.Setter
        public Builder sendSubscriptionLogs(@Nullable Boolean sendSubscriptionLogs) {

            this.sendSubscriptionLogs = sendSubscriptionLogs;
            return this;
        }
        public LogRulesResponse build() {
            final var _resultValue = new LogRulesResponse();
            _resultValue.filteringTags = filteringTags;
            _resultValue.sendAadLogs = sendAadLogs;
            _resultValue.sendActivityLogs = sendActivityLogs;
            _resultValue.sendSubscriptionLogs = sendSubscriptionLogs;
            return _resultValue;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy