@azure/monitor-opentelemetry
Version:
Azure Monitor OpenTelemetry (Node.js)
265 lines • 14 kB
TypeScript
/**
* This file contains only generated model types and their (de)serializers.
* Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input.
*/
/** Monitoring data point coming from the client, which includes metrics, documents and other metadata info. */
export interface MonitoringDataPoint {
/** Application Insights SDK version. */
version: string;
/** Version/generation of the data contract (MonitoringDataPoint) between SDK and Live Metrics. */
invariantVersion: number;
/** Service instance name where Application Insights SDK lives. */
instance: string;
/** Service role name. */
roleName: string;
/** Computer name where Application Insights SDK lives. */
machineName: string;
/** Identifies an Application Insights SDK as a trusted agent to report metrics and documents. */
streamId: string;
/** Data point generation timestamp. */
timestamp?: Date;
/** Timestamp when the client transmits the metrics and documents to Live Metrics. */
transmissionTime?: Date;
/** True if the current application is an Azure Web App. */
isWebApp: boolean;
/** True if performance counters collection is supported. */
performanceCollectionSupported: boolean;
/** An array of metric data points. */
metrics?: MetricPoint[];
/** An array of documents of a specific type {Request}, {RemoteDependency}, {Exception}, {Event}, or {Trace} */
documents?: DocumentIngressUnion[];
/** An array of top cpu consumption data point. */
topCpuProcesses?: ProcessCpuData[];
/** An array of error while SDK parses and applies the {CollectionConfigurationInfo} provided by Live Metrics. */
collectionConfigurationErrors?: CollectionConfigurationError[];
}
export declare function monitoringDataPointSerializer(item: MonitoringDataPoint): any;
export declare function metricPointArraySerializer(result: Array<MetricPoint>): any[];
/** Metric data point. */
export interface MetricPoint {
/** Metric name. */
name: string;
/** Metric value. */
value: number;
/** Metric weight. */
weight: number;
}
export declare function metricPointSerializer(item: MetricPoint): any;
export declare function documentIngressUnionArraySerializer(result: Array<DocumentIngressUnion>): any[];
/** A document of a specific type: Request, RemoteDependency, Exception, Event, or Trace. */
export interface DocumentIngress {
/** Telemetry type. Types not defined in enum will get replaced with a 'Unknown' type. */
/** The discriminator possible values: Request, RemoteDependency, Exception, Event, Trace */
documentType: DocumentType;
/** An array of document streaming ids. Each id identifies a flow of documents customized by UX customers. */
documentStreamIds?: string[];
/** Collection of custom properties. */
properties?: KeyValuePairStringString[];
}
export declare function documentIngressSerializer(item: DocumentIngress): any;
/** Alias for DocumentIngressUnion */
export type DocumentIngressUnion = Request | RemoteDependency | Exception | Event | Trace | DocumentIngress;
export declare function documentIngressUnionSerializer(item: DocumentIngressUnion): any;
/** Document type */
export type DocumentType = "Request" | "RemoteDependency" | "Exception" | "Event" | "Trace" | "Unknown";
export declare function keyValuePairStringStringArraySerializer(result: Array<KeyValuePairStringString>): any[];
/** Key-value pair of string and string. */
export interface KeyValuePairStringString {
/** Key of the key-value pair. */
key: string;
/** Value of the key-value pair. */
value: string;
}
export declare function keyValuePairStringStringSerializer(item: KeyValuePairStringString): any;
/** Request document type. */
export interface Request extends DocumentIngress {
/** Telemetry type for Request. */
documentType: "Request";
/** Name of the request, e.g., 'GET /values/{id}'. */
name?: string;
/** Request URL with all query string parameters. */
url?: string;
/** Result of a request execution. For http requests, it could be some HTTP status code. */
responseCode?: string;
/** Request duration in ISO 8601 duration format, i.e., P[n]Y[n]M[n]DT[n]H[n]M[n]S or P[n]W. */
duration?: string;
}
export declare function requestSerializer(item: Request): any;
/** RemoteDependency document type. */
export interface RemoteDependency extends DocumentIngress {
/** Telemetry type for RemoteDependency. */
documentType: "RemoteDependency";
/** Name of the command initiated with this dependency call, e.g., GET /username. */
name?: string;
/** URL of the dependency call to the target, with all query string parameters. */
commandName?: string;
/** Result code of a dependency call. Examples are SQL error code and HTTP status code. */
resultCode?: string;
/** Request duration in ISO 8601 duration format, i.e., P[n]Y[n]M[n]DT[n]H[n]M[n]S or P[n]W. */
duration?: string;
}
export declare function remoteDependencySerializer(item: RemoteDependency): any;
/** Exception document type. */
export interface Exception extends DocumentIngress {
/** Telemetry type for Exception. */
documentType: "Exception";
/** Exception type name. */
exceptionType?: string;
/** Exception message. */
exceptionMessage?: string;
}
export declare function exceptionSerializer(item: Exception): any;
/** Event document type. */
export interface Event extends DocumentIngress {
/** Telemetry type for Event. */
documentType: "Event";
/** Event name. */
name?: string;
}
export declare function eventSerializer(item: Event): any;
/** Trace document type. */
export interface Trace extends DocumentIngress {
/** Telemetry type for Trace. */
documentType: "Trace";
/** Trace message. */
message?: string;
}
export declare function traceSerializer(item: Trace): any;
export declare function processCpuDataArraySerializer(result: Array<ProcessCpuData>): any[];
/** CPU consumption datapoint. */
export interface ProcessCpuData {
/** Process name. */
processName: string;
/** CPU consumption percentage. */
cpuPercentage: number;
}
export declare function processCpuDataSerializer(item: ProcessCpuData): any;
export declare function collectionConfigurationErrorArraySerializer(result: Array<CollectionConfigurationError>): any[];
/** Represents an error while SDK parses and applies an instance of CollectionConfigurationInfo. */
export interface CollectionConfigurationError {
/** Error type. */
collectionConfigurationErrorType: CollectionConfigurationErrorType;
/** Error message. */
message: string;
/** Exception that led to the creation of the configuration error. */
fullException: string;
/** Custom properties to add more information to the error. */
data: KeyValuePairStringString[];
}
export declare function collectionConfigurationErrorSerializer(item: CollectionConfigurationError): any;
/** Collection configuration error type reported by the client SDK. */
export type CollectionConfigurationErrorType = "Unknown" | "PerformanceCounterParsing" | "PerformanceCounterUnexpected" | "PerformanceCounterDuplicateIds" | "DocumentStreamDuplicateIds" | "DocumentStreamFailureToCreate" | "DocumentStreamFailureToCreateFilterUnexpected" | "MetricDuplicateIds" | "MetricTelemetryTypeUnsupported" | "MetricFailureToCreate" | "MetricFailureToCreateFilterUnexpected" | "FilterFailureToCreateUnexpected" | "CollectionConfigurationFailureToCreateUnexpected";
/** Represents the collection configuration - a customizable description of performance counters, metrics, and full telemetry documents to be collected by the client SDK. */
export interface CollectionConfigurationInfo {
/** An encoded string that indicates whether the collection configuration is changed. */
eTag: string;
/** An array of metric configuration info. */
metrics: DerivedMetricInfo[];
/** An array of document stream configuration info. */
documentStreams: DocumentStreamInfo[];
/** Controls document quotas to be sent to Live Metrics. */
quotaInfo?: QuotaConfigurationInfo;
}
export declare function collectionConfigurationInfoSerializer(item: CollectionConfigurationInfo): any;
export declare function collectionConfigurationInfoDeserializer(item: any): CollectionConfigurationInfo;
export declare function derivedMetricInfoArraySerializer(result: Array<DerivedMetricInfo>): any[];
export declare function derivedMetricInfoArrayDeserializer(result: Array<DerivedMetricInfo>): any[];
/** A metric configuration set by UX to scope the metrics it's interested in. */
export interface DerivedMetricInfo {
/** metric configuration identifier. */
id: string;
/** Telemetry type. */
telemetryType: string;
/** A collection of filters to scope metrics that UX needs. */
filterGroups: FilterConjunctionGroupInfo[];
/** Telemetry's metric dimension whose value is to be aggregated. Example values: Duration, Count(),... */
projection: string;
/** Aggregation type. This is the aggregation done from everything within a single server. */
aggregation: AggregationType;
/** Aggregation type. This Aggregation is done across the values for all the servers taken together. */
backEndAggregation: AggregationType;
}
export declare function derivedMetricInfoSerializer(item: DerivedMetricInfo): any;
export declare function derivedMetricInfoDeserializer(item: any): DerivedMetricInfo;
export declare function filterConjunctionGroupInfoArraySerializer(result: Array<FilterConjunctionGroupInfo>): any[];
export declare function filterConjunctionGroupInfoArrayDeserializer(result: Array<FilterConjunctionGroupInfo>): any[];
/** An AND-connected group of FilterInfo objects. */
export interface FilterConjunctionGroupInfo {
/** An array of filters. */
filters: FilterInfo[];
}
export declare function filterConjunctionGroupInfoSerializer(item: FilterConjunctionGroupInfo): any;
export declare function filterConjunctionGroupInfoDeserializer(item: any): FilterConjunctionGroupInfo;
export declare function filterInfoArraySerializer(result: Array<FilterInfo>): any[];
export declare function filterInfoArrayDeserializer(result: Array<FilterInfo>): any[];
/** A filter set on UX */
export interface FilterInfo {
/** dimension name of the filter */
fieldName: string;
/** Operator of the filter */
predicate: PredicateType;
/** Comparand of the filter */
comparand: string;
}
export declare function filterInfoSerializer(item: FilterInfo): any;
export declare function filterInfoDeserializer(item: any): FilterInfo;
/** Enum representing the different types of predicates. */
export type PredicateType = "Equal" | "NotEqual" | "LessThan" | "GreaterThan" | "LessThanOrEqual" | "GreaterThanOrEqual" | "Contains" | "DoesNotContain";
/** Aggregation type. */
export type AggregationType = "Avg" | "Sum" | "Min" | "Max";
export declare function documentStreamInfoArraySerializer(result: Array<DocumentStreamInfo>): any[];
export declare function documentStreamInfoArrayDeserializer(result: Array<DocumentStreamInfo>): any[];
/** Configurations/filters set by UX to scope the document/telemetry it's interested in. */
export interface DocumentStreamInfo {
/** Identifier of the document stream initiated by a UX. */
id: string;
/** Gets or sets an OR-connected collection of filter groups. */
documentFilterGroups: DocumentFilterConjunctionGroupInfo[];
}
export declare function documentStreamInfoSerializer(item: DocumentStreamInfo): any;
export declare function documentStreamInfoDeserializer(item: any): DocumentStreamInfo;
export declare function documentFilterConjunctionGroupInfoArraySerializer(result: Array<DocumentFilterConjunctionGroupInfo>): any[];
export declare function documentFilterConjunctionGroupInfoArrayDeserializer(result: Array<DocumentFilterConjunctionGroupInfo>): any[];
/** A collection of filters for a specific telemetry type. */
export interface DocumentFilterConjunctionGroupInfo {
/** Telemetry type. */
telemetryType: TelemetryType;
/** An array of filter groups. */
filters: FilterConjunctionGroupInfo;
}
export declare function documentFilterConjunctionGroupInfoSerializer(item: DocumentFilterConjunctionGroupInfo): any;
export declare function documentFilterConjunctionGroupInfoDeserializer(item: any): DocumentFilterConjunctionGroupInfo;
/** Telemetry type. */
export type TelemetryType = "Request" | "Dependency" | "Exception" | "Event" | "Metric" | "PerformanceCounter" | "Trace";
/** Controls document quotas to be sent to Live Metrics. */
export interface QuotaConfigurationInfo {
/** Initial quota */
initialQuota?: number;
/** Max quota */
maxQuota: number;
/** Quota accrual rate per second */
quotaAccrualRatePerSec: number;
}
export declare function quotaConfigurationInfoSerializer(item: QuotaConfigurationInfo): any;
export declare function quotaConfigurationInfoDeserializer(item: any): QuotaConfigurationInfo;
/** Optional http response body, whose existence carries additional error descriptions. */
export interface ServiceError {
/** A globally unique identifier to identify the diagnostic context. It defaults to the empty GUID. */
requestId: string;
/** Service error response date time. */
responseDateTime: string;
/** Error code. */
code: string;
/** Error message. */
message: string;
/** Message of the exception that triggers the error response. */
exception: string;
}
export declare function serviceErrorDeserializer(item: any): ServiceError;
/** Live Metrics service versions. */
export declare enum KnownVersions {
/** The 2024-04-01-preview version of the Live Metrics service. */
V20240401Preview = "2024-04-01-preview"
}
export declare function monitoringDataPointArraySerializer(result: Array<MonitoringDataPoint>): any[];
//# sourceMappingURL=models.d.ts.map