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

com.pulumi.azurenative.monitor.inputs.SchemaMapArgs 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.monitor.inputs;

import com.pulumi.azurenative.monitor.inputs.RecordMapArgs;
import com.pulumi.azurenative.monitor.inputs.ResourceMapArgs;
import com.pulumi.azurenative.monitor.inputs.ScopeMapArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * Schema map for azure monitor for logs.
 * 
 */
public final class SchemaMapArgs extends com.pulumi.resources.ResourceArgs {

    public static final SchemaMapArgs Empty = new SchemaMapArgs();

    /**
     * Record Map.
     * 
     */
    @Import(name="recordMap", required=true)
    private Output> recordMap;

    /**
     * @return Record Map.
     * 
     */
    public Output> recordMap() {
        return this.recordMap;
    }

    /**
     * Resource Map captures information about the entity for which telemetry is recorded. For example, metrics exposed by a Kubernetes container can be linked to a resource that specifies the cluster, namespace, pod, and container name.Resource may capture an entire hierarchy of entity identification. It may describe the host in the cloud and specific container or an application running in the process.
     * 
     */
    @Import(name="resourceMap")
    private @Nullable Output> resourceMap;

    /**
     * @return Resource Map captures information about the entity for which telemetry is recorded. For example, metrics exposed by a Kubernetes container can be linked to a resource that specifies the cluster, namespace, pod, and container name.Resource may capture an entire hierarchy of entity identification. It may describe the host in the cloud and specific container or an application running in the process.
     * 
     */
    public Optional>> resourceMap() {
        return Optional.ofNullable(this.resourceMap);
    }

    /**
     * A scope map is a logical unit of the application code with which the emitted telemetry can be associated.
     * 
     */
    @Import(name="scopeMap")
    private @Nullable Output> scopeMap;

    /**
     * @return A scope map is a logical unit of the application code with which the emitted telemetry can be associated.
     * 
     */
    public Optional>> scopeMap() {
        return Optional.ofNullable(this.scopeMap);
    }

    private SchemaMapArgs() {}

    private SchemaMapArgs(SchemaMapArgs $) {
        this.recordMap = $.recordMap;
        this.resourceMap = $.resourceMap;
        this.scopeMap = $.scopeMap;
    }

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

    public static final class Builder {
        private SchemaMapArgs $;

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

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

        /**
         * @param recordMap Record Map.
         * 
         * @return builder
         * 
         */
        public Builder recordMap(Output> recordMap) {
            $.recordMap = recordMap;
            return this;
        }

        /**
         * @param recordMap Record Map.
         * 
         * @return builder
         * 
         */
        public Builder recordMap(List recordMap) {
            return recordMap(Output.of(recordMap));
        }

        /**
         * @param recordMap Record Map.
         * 
         * @return builder
         * 
         */
        public Builder recordMap(RecordMapArgs... recordMap) {
            return recordMap(List.of(recordMap));
        }

        /**
         * @param resourceMap Resource Map captures information about the entity for which telemetry is recorded. For example, metrics exposed by a Kubernetes container can be linked to a resource that specifies the cluster, namespace, pod, and container name.Resource may capture an entire hierarchy of entity identification. It may describe the host in the cloud and specific container or an application running in the process.
         * 
         * @return builder
         * 
         */
        public Builder resourceMap(@Nullable Output> resourceMap) {
            $.resourceMap = resourceMap;
            return this;
        }

        /**
         * @param resourceMap Resource Map captures information about the entity for which telemetry is recorded. For example, metrics exposed by a Kubernetes container can be linked to a resource that specifies the cluster, namespace, pod, and container name.Resource may capture an entire hierarchy of entity identification. It may describe the host in the cloud and specific container or an application running in the process.
         * 
         * @return builder
         * 
         */
        public Builder resourceMap(List resourceMap) {
            return resourceMap(Output.of(resourceMap));
        }

        /**
         * @param resourceMap Resource Map captures information about the entity for which telemetry is recorded. For example, metrics exposed by a Kubernetes container can be linked to a resource that specifies the cluster, namespace, pod, and container name.Resource may capture an entire hierarchy of entity identification. It may describe the host in the cloud and specific container or an application running in the process.
         * 
         * @return builder
         * 
         */
        public Builder resourceMap(ResourceMapArgs... resourceMap) {
            return resourceMap(List.of(resourceMap));
        }

        /**
         * @param scopeMap A scope map is a logical unit of the application code with which the emitted telemetry can be associated.
         * 
         * @return builder
         * 
         */
        public Builder scopeMap(@Nullable Output> scopeMap) {
            $.scopeMap = scopeMap;
            return this;
        }

        /**
         * @param scopeMap A scope map is a logical unit of the application code with which the emitted telemetry can be associated.
         * 
         * @return builder
         * 
         */
        public Builder scopeMap(List scopeMap) {
            return scopeMap(Output.of(scopeMap));
        }

        /**
         * @param scopeMap A scope map is a logical unit of the application code with which the emitted telemetry can be associated.
         * 
         * @return builder
         * 
         */
        public Builder scopeMap(ScopeMapArgs... scopeMap) {
            return scopeMap(List.of(scopeMap));
        }

        public SchemaMapArgs build() {
            if ($.recordMap == null) {
                throw new MissingRequiredPropertyException("SchemaMapArgs", "recordMap");
            }
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy