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

com.pulumi.azure.appplatform.SpringCloudNewRelicApplicationPerformanceMonitoringArgs Maven / Gradle / Ivy

Go to download

A Pulumi package for creating and managing Microsoft Azure cloud resources, based on the Terraform azurerm provider. We recommend using the [Azure Native provider](https://github.com/pulumi/pulumi-azure-native) to provision Azure infrastructure. Azure Native provides complete coverage of Azure resources and same-day access to new resources and resource updates.

There is a newer version: 6.10.0-alpha.1731737215
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.azure.appplatform;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final SpringCloudNewRelicApplicationPerformanceMonitoringArgs Empty = new SpringCloudNewRelicApplicationPerformanceMonitoringArgs();

    /**
     * Specifies whether enable the agent. Defaults to `true`.
     * 
     */
    @Import(name="agentEnabled")
    private @Nullable Output agentEnabled;

    /**
     * @return Specifies whether enable the agent. Defaults to `true`.
     * 
     */
    public Optional> agentEnabled() {
        return Optional.ofNullable(this.agentEnabled);
    }

    /**
     * Specifies the application name used to report data to New Relic.
     * 
     */
    @Import(name="appName", required=true)
    private Output appName;

    /**
     * @return Specifies the application name used to report data to New Relic.
     * 
     */
    public Output appName() {
        return this.appName;
    }

    /**
     * Specifies the port number to differentiate JVMs for the same app on the same machine.
     * 
     */
    @Import(name="appServerPort")
    private @Nullable Output appServerPort;

    /**
     * @return Specifies the port number to differentiate JVMs for the same app on the same machine.
     * 
     */
    public Optional> appServerPort() {
        return Optional.ofNullable(this.appServerPort);
    }

    /**
     * Specifies whether enable plain text logging of all data sent to New Relic to the agent logfile. Defaults to `false`.
     * 
     */
    @Import(name="auditModeEnabled")
    private @Nullable Output auditModeEnabled;

    /**
     * @return Specifies whether enable plain text logging of all data sent to New Relic to the agent logfile. Defaults to `false`.
     * 
     */
    public Optional> auditModeEnabled() {
        return Optional.ofNullable(this.auditModeEnabled);
    }

    /**
     * Specifies whether enable the reporting of data separately for each web app. Defaults to `false`.
     * 
     */
    @Import(name="autoAppNamingEnabled")
    private @Nullable Output autoAppNamingEnabled;

    /**
     * @return Specifies whether enable the reporting of data separately for each web app. Defaults to `false`.
     * 
     */
    public Optional> autoAppNamingEnabled() {
        return Optional.ofNullable(this.autoAppNamingEnabled);
    }

    /**
     * Specifies whether enable the component-based transaction naming. Defaults to `true`.
     * 
     */
    @Import(name="autoTransactionNamingEnabled")
    private @Nullable Output autoTransactionNamingEnabled;

    /**
     * @return Specifies whether enable the component-based transaction naming. Defaults to `true`.
     * 
     */
    public Optional> autoTransactionNamingEnabled() {
        return Optional.ofNullable(this.autoTransactionNamingEnabled);
    }

    /**
     * Specifies whether enable all instrumentation using an `{@literal @}Trace` annotation. Disabling this causes `{@literal @}Trace` annotations to be ignored. Defaults to `true`.
     * 
     */
    @Import(name="customTracingEnabled")
    private @Nullable Output customTracingEnabled;

    /**
     * @return Specifies whether enable all instrumentation using an `{@literal @}Trace` annotation. Disabling this causes `{@literal @}Trace` annotations to be ignored. Defaults to `true`.
     * 
     */
    public Optional> customTracingEnabled() {
        return Optional.ofNullable(this.customTracingEnabled);
    }

    /**
     * Specifies whether the Spring Cloud Application Performance Monitoring resource for Application Insights is enabled globally. Defaults to `false`.
     * 
     */
    @Import(name="globallyEnabled")
    private @Nullable Output globallyEnabled;

    /**
     * @return Specifies whether the Spring Cloud Application Performance Monitoring resource for Application Insights is enabled globally. Defaults to `false`.
     * 
     */
    public Optional> globallyEnabled() {
        return Optional.ofNullable(this.globallyEnabled);
    }

    /**
     * Specifies a mapping of labels to be added to the New Relic application.
     * 
     */
    @Import(name="labels")
    private @Nullable Output> labels;

    /**
     * @return Specifies a mapping of labels to be added to the New Relic application.
     * 
     */
    public Optional>> labels() {
        return Optional.ofNullable(this.labels);
    }

    /**
     * Specifies the license key associated with the New Relic account. This key binds your agent's data to your account in New Relic service.
     * 
     */
    @Import(name="licenseKey", required=true)
    private Output licenseKey;

    /**
     * @return Specifies the license key associated with the New Relic account. This key binds your agent's data to your account in New Relic service.
     * 
     */
    public Output licenseKey() {
        return this.licenseKey;
    }

    /**
     * The name which should be used for this Spring Cloud Application Performance Monitoring resource for New Relic. Changing this forces a new resource to be created.
     * 
     */
    @Import(name="name")
    private @Nullable Output name;

    /**
     * @return The name which should be used for this Spring Cloud Application Performance Monitoring resource for New Relic. Changing this forces a new resource to be created.
     * 
     */
    public Optional> name() {
        return Optional.ofNullable(this.name);
    }

    /**
     * The ID of the Spring Cloud Service. Changing this forces a new resource to be created.
     * 
     */
    @Import(name="springCloudServiceId", required=true)
    private Output springCloudServiceId;

    /**
     * @return The ID of the Spring Cloud Service. Changing this forces a new resource to be created.
     * 
     */
    public Output springCloudServiceId() {
        return this.springCloudServiceId;
    }

    private SpringCloudNewRelicApplicationPerformanceMonitoringArgs() {}

    private SpringCloudNewRelicApplicationPerformanceMonitoringArgs(SpringCloudNewRelicApplicationPerformanceMonitoringArgs $) {
        this.agentEnabled = $.agentEnabled;
        this.appName = $.appName;
        this.appServerPort = $.appServerPort;
        this.auditModeEnabled = $.auditModeEnabled;
        this.autoAppNamingEnabled = $.autoAppNamingEnabled;
        this.autoTransactionNamingEnabled = $.autoTransactionNamingEnabled;
        this.customTracingEnabled = $.customTracingEnabled;
        this.globallyEnabled = $.globallyEnabled;
        this.labels = $.labels;
        this.licenseKey = $.licenseKey;
        this.name = $.name;
        this.springCloudServiceId = $.springCloudServiceId;
    }

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

    public static final class Builder {
        private SpringCloudNewRelicApplicationPerformanceMonitoringArgs $;

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

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

        /**
         * @param agentEnabled Specifies whether enable the agent. Defaults to `true`.
         * 
         * @return builder
         * 
         */
        public Builder agentEnabled(@Nullable Output agentEnabled) {
            $.agentEnabled = agentEnabled;
            return this;
        }

        /**
         * @param agentEnabled Specifies whether enable the agent. Defaults to `true`.
         * 
         * @return builder
         * 
         */
        public Builder agentEnabled(Boolean agentEnabled) {
            return agentEnabled(Output.of(agentEnabled));
        }

        /**
         * @param appName Specifies the application name used to report data to New Relic.
         * 
         * @return builder
         * 
         */
        public Builder appName(Output appName) {
            $.appName = appName;
            return this;
        }

        /**
         * @param appName Specifies the application name used to report data to New Relic.
         * 
         * @return builder
         * 
         */
        public Builder appName(String appName) {
            return appName(Output.of(appName));
        }

        /**
         * @param appServerPort Specifies the port number to differentiate JVMs for the same app on the same machine.
         * 
         * @return builder
         * 
         */
        public Builder appServerPort(@Nullable Output appServerPort) {
            $.appServerPort = appServerPort;
            return this;
        }

        /**
         * @param appServerPort Specifies the port number to differentiate JVMs for the same app on the same machine.
         * 
         * @return builder
         * 
         */
        public Builder appServerPort(Integer appServerPort) {
            return appServerPort(Output.of(appServerPort));
        }

        /**
         * @param auditModeEnabled Specifies whether enable plain text logging of all data sent to New Relic to the agent logfile. Defaults to `false`.
         * 
         * @return builder
         * 
         */
        public Builder auditModeEnabled(@Nullable Output auditModeEnabled) {
            $.auditModeEnabled = auditModeEnabled;
            return this;
        }

        /**
         * @param auditModeEnabled Specifies whether enable plain text logging of all data sent to New Relic to the agent logfile. Defaults to `false`.
         * 
         * @return builder
         * 
         */
        public Builder auditModeEnabled(Boolean auditModeEnabled) {
            return auditModeEnabled(Output.of(auditModeEnabled));
        }

        /**
         * @param autoAppNamingEnabled Specifies whether enable the reporting of data separately for each web app. Defaults to `false`.
         * 
         * @return builder
         * 
         */
        public Builder autoAppNamingEnabled(@Nullable Output autoAppNamingEnabled) {
            $.autoAppNamingEnabled = autoAppNamingEnabled;
            return this;
        }

        /**
         * @param autoAppNamingEnabled Specifies whether enable the reporting of data separately for each web app. Defaults to `false`.
         * 
         * @return builder
         * 
         */
        public Builder autoAppNamingEnabled(Boolean autoAppNamingEnabled) {
            return autoAppNamingEnabled(Output.of(autoAppNamingEnabled));
        }

        /**
         * @param autoTransactionNamingEnabled Specifies whether enable the component-based transaction naming. Defaults to `true`.
         * 
         * @return builder
         * 
         */
        public Builder autoTransactionNamingEnabled(@Nullable Output autoTransactionNamingEnabled) {
            $.autoTransactionNamingEnabled = autoTransactionNamingEnabled;
            return this;
        }

        /**
         * @param autoTransactionNamingEnabled Specifies whether enable the component-based transaction naming. Defaults to `true`.
         * 
         * @return builder
         * 
         */
        public Builder autoTransactionNamingEnabled(Boolean autoTransactionNamingEnabled) {
            return autoTransactionNamingEnabled(Output.of(autoTransactionNamingEnabled));
        }

        /**
         * @param customTracingEnabled Specifies whether enable all instrumentation using an `{@literal @}Trace` annotation. Disabling this causes `{@literal @}Trace` annotations to be ignored. Defaults to `true`.
         * 
         * @return builder
         * 
         */
        public Builder customTracingEnabled(@Nullable Output customTracingEnabled) {
            $.customTracingEnabled = customTracingEnabled;
            return this;
        }

        /**
         * @param customTracingEnabled Specifies whether enable all instrumentation using an `{@literal @}Trace` annotation. Disabling this causes `{@literal @}Trace` annotations to be ignored. Defaults to `true`.
         * 
         * @return builder
         * 
         */
        public Builder customTracingEnabled(Boolean customTracingEnabled) {
            return customTracingEnabled(Output.of(customTracingEnabled));
        }

        /**
         * @param globallyEnabled Specifies whether the Spring Cloud Application Performance Monitoring resource for Application Insights is enabled globally. Defaults to `false`.
         * 
         * @return builder
         * 
         */
        public Builder globallyEnabled(@Nullable Output globallyEnabled) {
            $.globallyEnabled = globallyEnabled;
            return this;
        }

        /**
         * @param globallyEnabled Specifies whether the Spring Cloud Application Performance Monitoring resource for Application Insights is enabled globally. Defaults to `false`.
         * 
         * @return builder
         * 
         */
        public Builder globallyEnabled(Boolean globallyEnabled) {
            return globallyEnabled(Output.of(globallyEnabled));
        }

        /**
         * @param labels Specifies a mapping of labels to be added to the New Relic application.
         * 
         * @return builder
         * 
         */
        public Builder labels(@Nullable Output> labels) {
            $.labels = labels;
            return this;
        }

        /**
         * @param labels Specifies a mapping of labels to be added to the New Relic application.
         * 
         * @return builder
         * 
         */
        public Builder labels(Map labels) {
            return labels(Output.of(labels));
        }

        /**
         * @param licenseKey Specifies the license key associated with the New Relic account. This key binds your agent's data to your account in New Relic service.
         * 
         * @return builder
         * 
         */
        public Builder licenseKey(Output licenseKey) {
            $.licenseKey = licenseKey;
            return this;
        }

        /**
         * @param licenseKey Specifies the license key associated with the New Relic account. This key binds your agent's data to your account in New Relic service.
         * 
         * @return builder
         * 
         */
        public Builder licenseKey(String licenseKey) {
            return licenseKey(Output.of(licenseKey));
        }

        /**
         * @param name The name which should be used for this Spring Cloud Application Performance Monitoring resource for New Relic. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder name(@Nullable Output name) {
            $.name = name;
            return this;
        }

        /**
         * @param name The name which should be used for this Spring Cloud Application Performance Monitoring resource for New Relic. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder name(String name) {
            return name(Output.of(name));
        }

        /**
         * @param springCloudServiceId The ID of the Spring Cloud Service. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder springCloudServiceId(Output springCloudServiceId) {
            $.springCloudServiceId = springCloudServiceId;
            return this;
        }

        /**
         * @param springCloudServiceId The ID of the Spring Cloud Service. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder springCloudServiceId(String springCloudServiceId) {
            return springCloudServiceId(Output.of(springCloudServiceId));
        }

        public SpringCloudNewRelicApplicationPerformanceMonitoringArgs build() {
            if ($.appName == null) {
                throw new MissingRequiredPropertyException("SpringCloudNewRelicApplicationPerformanceMonitoringArgs", "appName");
            }
            if ($.licenseKey == null) {
                throw new MissingRequiredPropertyException("SpringCloudNewRelicApplicationPerformanceMonitoringArgs", "licenseKey");
            }
            if ($.springCloudServiceId == null) {
                throw new MissingRequiredPropertyException("SpringCloudNewRelicApplicationPerformanceMonitoringArgs", "springCloudServiceId");
            }
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy