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

com.pulumi.azurenative.apimanagement.outputs.GetDiagnosticResult Maven / Gradle / Ivy

There is a newer version: 2.89.2
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.apimanagement.outputs;

import com.pulumi.azurenative.apimanagement.outputs.PipelineDiagnosticSettingsResponse;
import com.pulumi.azurenative.apimanagement.outputs.SamplingSettingsResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class GetDiagnosticResult {
    /**
     * @return Specifies for what type of messages sampling settings should not apply.
     * 
     */
    private @Nullable String alwaysLog;
    /**
     * @return Diagnostic settings for incoming/outgoing HTTP messages to the Backend
     * 
     */
    private @Nullable PipelineDiagnosticSettingsResponse backend;
    /**
     * @return Diagnostic settings for incoming/outgoing HTTP messages to the Gateway.
     * 
     */
    private @Nullable PipelineDiagnosticSettingsResponse frontend;
    /**
     * @return Sets correlation protocol to use for Application Insights diagnostics.
     * 
     */
    private @Nullable String httpCorrelationProtocol;
    /**
     * @return Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
     * 
     */
    private String id;
    /**
     * @return Log the ClientIP. Default is false.
     * 
     */
    private @Nullable Boolean logClientIp;
    /**
     * @return Resource Id of a target logger.
     * 
     */
    private String loggerId;
    /**
     * @return Emit custom metrics via emit-metric policy. Applicable only to Application Insights diagnostic settings.
     * 
     */
    private @Nullable Boolean metrics;
    /**
     * @return The name of the resource
     * 
     */
    private String name;
    /**
     * @return The format of the Operation Name for Application Insights telemetries. Default is Name.
     * 
     */
    private @Nullable String operationNameFormat;
    /**
     * @return Sampling settings for Diagnostic.
     * 
     */
    private @Nullable SamplingSettingsResponse sampling;
    /**
     * @return The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
     * 
     */
    private String type;
    /**
     * @return The verbosity level applied to traces emitted by trace policies.
     * 
     */
    private @Nullable String verbosity;

    private GetDiagnosticResult() {}
    /**
     * @return Specifies for what type of messages sampling settings should not apply.
     * 
     */
    public Optional alwaysLog() {
        return Optional.ofNullable(this.alwaysLog);
    }
    /**
     * @return Diagnostic settings for incoming/outgoing HTTP messages to the Backend
     * 
     */
    public Optional backend() {
        return Optional.ofNullable(this.backend);
    }
    /**
     * @return Diagnostic settings for incoming/outgoing HTTP messages to the Gateway.
     * 
     */
    public Optional frontend() {
        return Optional.ofNullable(this.frontend);
    }
    /**
     * @return Sets correlation protocol to use for Application Insights diagnostics.
     * 
     */
    public Optional httpCorrelationProtocol() {
        return Optional.ofNullable(this.httpCorrelationProtocol);
    }
    /**
     * @return Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
     * 
     */
    public String id() {
        return this.id;
    }
    /**
     * @return Log the ClientIP. Default is false.
     * 
     */
    public Optional logClientIp() {
        return Optional.ofNullable(this.logClientIp);
    }
    /**
     * @return Resource Id of a target logger.
     * 
     */
    public String loggerId() {
        return this.loggerId;
    }
    /**
     * @return Emit custom metrics via emit-metric policy. Applicable only to Application Insights diagnostic settings.
     * 
     */
    public Optional metrics() {
        return Optional.ofNullable(this.metrics);
    }
    /**
     * @return The name of the resource
     * 
     */
    public String name() {
        return this.name;
    }
    /**
     * @return The format of the Operation Name for Application Insights telemetries. Default is Name.
     * 
     */
    public Optional operationNameFormat() {
        return Optional.ofNullable(this.operationNameFormat);
    }
    /**
     * @return Sampling settings for Diagnostic.
     * 
     */
    public Optional sampling() {
        return Optional.ofNullable(this.sampling);
    }
    /**
     * @return The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
     * 
     */
    public String type() {
        return this.type;
    }
    /**
     * @return The verbosity level applied to traces emitted by trace policies.
     * 
     */
    public Optional verbosity() {
        return Optional.ofNullable(this.verbosity);
    }

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

    public static Builder builder(GetDiagnosticResult defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable String alwaysLog;
        private @Nullable PipelineDiagnosticSettingsResponse backend;
        private @Nullable PipelineDiagnosticSettingsResponse frontend;
        private @Nullable String httpCorrelationProtocol;
        private String id;
        private @Nullable Boolean logClientIp;
        private String loggerId;
        private @Nullable Boolean metrics;
        private String name;
        private @Nullable String operationNameFormat;
        private @Nullable SamplingSettingsResponse sampling;
        private String type;
        private @Nullable String verbosity;
        public Builder() {}
        public Builder(GetDiagnosticResult defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.alwaysLog = defaults.alwaysLog;
    	      this.backend = defaults.backend;
    	      this.frontend = defaults.frontend;
    	      this.httpCorrelationProtocol = defaults.httpCorrelationProtocol;
    	      this.id = defaults.id;
    	      this.logClientIp = defaults.logClientIp;
    	      this.loggerId = defaults.loggerId;
    	      this.metrics = defaults.metrics;
    	      this.name = defaults.name;
    	      this.operationNameFormat = defaults.operationNameFormat;
    	      this.sampling = defaults.sampling;
    	      this.type = defaults.type;
    	      this.verbosity = defaults.verbosity;
        }

        @CustomType.Setter
        public Builder alwaysLog(@Nullable String alwaysLog) {

            this.alwaysLog = alwaysLog;
            return this;
        }
        @CustomType.Setter
        public Builder backend(@Nullable PipelineDiagnosticSettingsResponse backend) {

            this.backend = backend;
            return this;
        }
        @CustomType.Setter
        public Builder frontend(@Nullable PipelineDiagnosticSettingsResponse frontend) {

            this.frontend = frontend;
            return this;
        }
        @CustomType.Setter
        public Builder httpCorrelationProtocol(@Nullable String httpCorrelationProtocol) {

            this.httpCorrelationProtocol = httpCorrelationProtocol;
            return this;
        }
        @CustomType.Setter
        public Builder id(String id) {
            if (id == null) {
              throw new MissingRequiredPropertyException("GetDiagnosticResult", "id");
            }
            this.id = id;
            return this;
        }
        @CustomType.Setter
        public Builder logClientIp(@Nullable Boolean logClientIp) {

            this.logClientIp = logClientIp;
            return this;
        }
        @CustomType.Setter
        public Builder loggerId(String loggerId) {
            if (loggerId == null) {
              throw new MissingRequiredPropertyException("GetDiagnosticResult", "loggerId");
            }
            this.loggerId = loggerId;
            return this;
        }
        @CustomType.Setter
        public Builder metrics(@Nullable Boolean metrics) {

            this.metrics = metrics;
            return this;
        }
        @CustomType.Setter
        public Builder name(String name) {
            if (name == null) {
              throw new MissingRequiredPropertyException("GetDiagnosticResult", "name");
            }
            this.name = name;
            return this;
        }
        @CustomType.Setter
        public Builder operationNameFormat(@Nullable String operationNameFormat) {

            this.operationNameFormat = operationNameFormat;
            return this;
        }
        @CustomType.Setter
        public Builder sampling(@Nullable SamplingSettingsResponse sampling) {

            this.sampling = sampling;
            return this;
        }
        @CustomType.Setter
        public Builder type(String type) {
            if (type == null) {
              throw new MissingRequiredPropertyException("GetDiagnosticResult", "type");
            }
            this.type = type;
            return this;
        }
        @CustomType.Setter
        public Builder verbosity(@Nullable String verbosity) {

            this.verbosity = verbosity;
            return this;
        }
        public GetDiagnosticResult build() {
            final var _resultValue = new GetDiagnosticResult();
            _resultValue.alwaysLog = alwaysLog;
            _resultValue.backend = backend;
            _resultValue.frontend = frontend;
            _resultValue.httpCorrelationProtocol = httpCorrelationProtocol;
            _resultValue.id = id;
            _resultValue.logClientIp = logClientIp;
            _resultValue.loggerId = loggerId;
            _resultValue.metrics = metrics;
            _resultValue.name = name;
            _resultValue.operationNameFormat = operationNameFormat;
            _resultValue.sampling = sampling;
            _resultValue.type = type;
            _resultValue.verbosity = verbosity;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy