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

com.microsoft.azure.sdk.build.tool.implementation.models.TelemetryItem Maven / Gradle / Ivy

// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.

package com.microsoft.azure.sdk.build.tool.implementation.models;

import com.azure.core.annotation.Fluent;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.time.OffsetDateTime;
import java.util.Map;

/** System variables for a telemetry item. */
@Fluent
public final class TelemetryItem {
    /*
     * Envelope version. For internal use only. By assigning this the default,
     * it will not be serialized within the payload unless changed to a value
     * other than #1.
     */
    @JsonProperty(value = "ver")
    private Integer version;

    /*
     * Type name of telemetry data item.
     */
    @JsonProperty(value = "name", required = true)
    private String name;

    /*
     * Event date time when telemetry item was created. This is the wall clock
     * time on the client when the event was generated. There is no guarantee
     * that the client's time is accurate. This field must be formatted in UTC
     * ISO 8601 format, with a trailing 'Z' character, as described publicly on
     * https://en.wikipedia.org/wiki/ISO_8601#UTC. Note: the number of decimal
     * seconds digits provided are variable (and unspecified). Consumers should
     * handle this, i.e. managed code consumers should not use format 'O' for
     * parsing as it specifies a fixed length. Example:
     * 2009-06-15T13:45:30.0000000Z.
     */
    @JsonProperty(value = "time", required = true)
    private OffsetDateTime time;

    /*
     * Sampling rate used in application. This telemetry item represents 100 /
     * sampleRate actual telemetry items.
     */
    @JsonProperty(value = "sampleRate")
    private Float sampleRate;

    /*
     * Sequence field used to track absolute order of uploaded events.
     */
    @JsonProperty(value = "seq")
    private String sequence;

    /*
     * The instrumentation key of the Application Insights resource.
     */
    @JsonProperty(value = "iKey")
    private String instrumentationKey;

    /*
     * Key/value collection of context properties. See ContextTagKeys for
     * information on available properties.
     */
    @JsonProperty(value = "tags")
    private Map tags;

    /*
     * Telemetry data item.
     */
    @JsonProperty(value = "data")
    private MonitorBase data;

    /**
     * Get the version property: Envelope version. For internal use only. By assigning this the default, it will not be
     * serialized within the payload unless changed to a value other than #1.
     *
     * @return the version value.
     */
    public Integer getVersion() {
        return this.version;
    }

    /**
     * Set the version property: Envelope version. For internal use only. By assigning this the default, it will not be
     * serialized within the payload unless changed to a value other than #1.
     *
     * @param version the version value to set.
     * @return the TelemetryItem object itself.
     */
    public TelemetryItem setVersion(Integer version) {
        this.version = version;
        return this;
    }

    /**
     * Get the name property: Type name of telemetry data item.
     *
     * @return the name value.
     */
    public String getName() {
        return this.name;
    }

    /**
     * Set the name property: Type name of telemetry data item.
     *
     * @param name the name value to set.
     * @return the TelemetryItem object itself.
     */
    public TelemetryItem setName(String name) {
        this.name = name;
        return this;
    }

    /**
     * Get the time property: Event date time when telemetry item was created. This is the wall clock time on the client
     * when the event was generated. There is no guarantee that the client's time is accurate. This field must be
     * formatted in UTC ISO 8601 format, with a trailing 'Z' character, as described publicly on
     * https://en.wikipedia.org/wiki/ISO_8601#UTC. Note: the number of decimal seconds digits provided are variable (and
     * unspecified). Consumers should handle this, i.e. managed code consumers should not use format 'O' for parsing as
     * it specifies a fixed length. Example: 2009-06-15T13:45:30.0000000Z.
     *
     * @return the time value.
     */
    public OffsetDateTime getTime() {
        return this.time;
    }

    /**
     * Set the time property: Event date time when telemetry item was created. This is the wall clock time on the client
     * when the event was generated. There is no guarantee that the client's time is accurate. This field must be
     * formatted in UTC ISO 8601 format, with a trailing 'Z' character, as described publicly on
     * https://en.wikipedia.org/wiki/ISO_8601#UTC. Note: the number of decimal seconds digits provided are variable (and
     * unspecified). Consumers should handle this, i.e. managed code consumers should not use format 'O' for parsing as
     * it specifies a fixed length. Example: 2009-06-15T13:45:30.0000000Z.
     *
     * @param time the time value to set.
     * @return the TelemetryItem object itself.
     */
    public TelemetryItem setTime(OffsetDateTime time) {
        this.time = time;
        return this;
    }

    /**
     * Get the sampleRate property: Sampling rate used in application. This telemetry item represents 100 / sampleRate
     * actual telemetry items.
     *
     * @return the sampleRate value.
     */
    public Float getSampleRate() {
        return this.sampleRate;
    }

    /**
     * Set the sampleRate property: Sampling rate used in application. This telemetry item represents 100 / sampleRate
     * actual telemetry items.
     *
     * @param sampleRate the sampleRate value to set.
     * @return the TelemetryItem object itself.
     */
    public TelemetryItem setSampleRate(Float sampleRate) {
        this.sampleRate = sampleRate;
        return this;
    }

    /**
     * Get the sequence property: Sequence field used to track absolute order of uploaded events.
     *
     * @return the sequence value.
     */
    public String getSequence() {
        return this.sequence;
    }

    /**
     * Set the sequence property: Sequence field used to track absolute order of uploaded events.
     *
     * @param sequence the sequence value to set.
     * @return the TelemetryItem object itself.
     */
    public TelemetryItem setSequence(String sequence) {
        this.sequence = sequence;
        return this;
    }

    /**
     * Get the instrumentationKey property: The instrumentation key of the Application Insights resource.
     *
     * @return the instrumentationKey value.
     */
    public String getInstrumentationKey() {
        return this.instrumentationKey;
    }

    /**
     * Set the instrumentationKey property: The instrumentation key of the Application Insights resource.
     *
     * @param instrumentationKey the instrumentationKey value to set.
     * @return the TelemetryItem object itself.
     */
    public TelemetryItem setInstrumentationKey(String instrumentationKey) {
        this.instrumentationKey = instrumentationKey;
        return this;
    }

    /**
     * Get the tags property: Key/value collection of context properties. See ContextTagKeys for information on
     * available properties.
     *
     * @return the tags value.
     */
    public Map getTags() {
        return this.tags;
    }

    /**
     * Set the tags property: Key/value collection of context properties. See ContextTagKeys for information on
     * available properties.
     *
     * @param tags the tags value to set.
     * @return the TelemetryItem object itself.
     */
    public TelemetryItem setTags(Map tags) {
        this.tags = tags;
        return this;
    }

    /**
     * Get the data property: Telemetry data item.
     *
     * @return the data value.
     */
    public MonitorBase getData() {
        return this.data;
    }

    /**
     * Set the data property: Telemetry data item.
     *
     * @param data the data value to set.
     * @return the TelemetryItem object itself.
     */
    public TelemetryItem setData(MonitorBase data) {
        this.data = data;
        return this;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy