@splunk/otel
Version:
The Splunk distribution of OpenTelemetry Node Instrumentation provides a Node agent that automatically instruments your Node application to capture and report distributed traces to Splunk APM.
1,335 lines • 117 kB
TypeScript
/**
* This file was automatically generated by json-schema-to-typescript.
* DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
* and run json-schema-to-typescript to regenerate this file.
*/
/**
* Configure exporter to be OTLP with HTTP transport.
*/
export type OtlpHttpExporter = {
/**
* Configure endpoint, including the signal specific path.
* If omitted or null, the http://localhost:4318/v1/{signal} (where signal is 'traces', 'logs', or 'metrics') is used.
*
*/
endpoint?: string | null;
tls?: HttpTls;
/**
* Configure headers. Entries have higher priority than entries from .headers_list.
* If an entry's .value is null, the entry is ignored.
*
*
* @minItems 1
*/
headers?: [NameStringValuePair, ...NameStringValuePair[]];
/**
* Configure headers. Entries have lower priority than entries from .headers.
* The value is a list of comma separated key-value pairs matching the format of OTEL_EXPORTER_OTLP_HEADERS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#configuration-options for details.
* If omitted or null, no headers are added.
*
*/
headers_list?: string | null;
/**
* Configure compression.
* Values include: gzip, none. Implementations may support other compression algorithms.
* If omitted or null, none is used.
*
*/
compression?: string | null;
/**
* Configure max time (in milliseconds) to wait for each export.
* Value must be non-negative. A value of 0 indicates no limit (infinity).
* If omitted or null, 10000 is used.
*
*/
timeout?: number | null;
/**
* Configure the encoding used for messages.
* Values include: protobuf, json. Implementations may not support json.
* If omitted or null, protobuf is used.
*
*/
encoding?: ("protobuf" | "json") | null;
} & ({
/**
* Configure endpoint, including the signal specific path.
* If omitted or null, the http://localhost:4318/v1/{signal} (where signal is 'traces', 'logs', or 'metrics') is used.
*
*/
endpoint?: string | null;
tls?: HttpTls;
/**
* Configure headers. Entries have higher priority than entries from .headers_list.
* If an entry's .value is null, the entry is ignored.
*
*
* @minItems 1
*/
headers?: [NameStringValuePair, ...NameStringValuePair[]];
/**
* Configure headers. Entries have lower priority than entries from .headers.
* The value is a list of comma separated key-value pairs matching the format of OTEL_EXPORTER_OTLP_HEADERS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#configuration-options for details.
* If omitted or null, no headers are added.
*
*/
headers_list?: string | null;
/**
* Configure compression.
* Values include: gzip, none. Implementations may support other compression algorithms.
* If omitted or null, none is used.
*
*/
compression?: string | null;
/**
* Configure max time (in milliseconds) to wait for each export.
* Value must be non-negative. A value of 0 indicates no limit (infinity).
* If omitted or null, 10000 is used.
*
*/
timeout?: number | null;
/**
* Configure the encoding used for messages.
* Values include: protobuf, json. Implementations may not support json.
* If omitted or null, protobuf is used.
*
*/
encoding?: ("protobuf" | "json") | null;
} | null) & {
/**
* Configure endpoint, including the signal specific path.
* If omitted or null, the http://localhost:4318/v1/{signal} (where signal is 'traces', 'logs', or 'metrics') is used.
*
*/
endpoint?: string | null;
tls?: HttpTls;
/**
* Configure headers. Entries have higher priority than entries from .headers_list.
* If an entry's .value is null, the entry is ignored.
*
*
* @minItems 1
*/
headers?: [NameStringValuePair, ...NameStringValuePair[]];
/**
* Configure headers. Entries have lower priority than entries from .headers.
* The value is a list of comma separated key-value pairs matching the format of OTEL_EXPORTER_OTLP_HEADERS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#configuration-options for details.
* If omitted or null, no headers are added.
*
*/
headers_list?: string | null;
/**
* Configure compression.
* Values include: gzip, none. Implementations may support other compression algorithms.
* If omitted or null, none is used.
*
*/
compression?: string | null;
/**
* Configure max time (in milliseconds) to wait for each export.
* Value must be non-negative. A value of 0 indicates no limit (infinity).
* If omitted or null, 10000 is used.
*
*/
timeout?: number | null;
/**
* Configure the encoding used for messages.
* Values include: protobuf, json. Implementations may not support json.
* If omitted or null, protobuf is used.
*
*/
encoding?: ("protobuf" | "json") | null;
} & ({
/**
* Configure endpoint, including the signal specific path.
* If omitted or null, the http://localhost:4318/v1/{signal} (where signal is 'traces', 'logs', or 'metrics') is used.
*
*/
endpoint?: string | null;
tls?: HttpTls;
/**
* Configure headers. Entries have higher priority than entries from .headers_list.
* If an entry's .value is null, the entry is ignored.
*
*
* @minItems 1
*/
headers?: [NameStringValuePair, ...NameStringValuePair[]];
/**
* Configure headers. Entries have lower priority than entries from .headers.
* The value is a list of comma separated key-value pairs matching the format of OTEL_EXPORTER_OTLP_HEADERS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#configuration-options for details.
* If omitted or null, no headers are added.
*
*/
headers_list?: string | null;
/**
* Configure compression.
* Values include: gzip, none. Implementations may support other compression algorithms.
* If omitted or null, none is used.
*
*/
compression?: string | null;
/**
* Configure max time (in milliseconds) to wait for each export.
* Value must be non-negative. A value of 0 indicates no limit (infinity).
* If omitted or null, 10000 is used.
*
*/
timeout?: number | null;
/**
* Configure the encoding used for messages.
* Values include: protobuf, json. Implementations may not support json.
* If omitted or null, protobuf is used.
*
*/
encoding?: ("protobuf" | "json") | null;
} | null);
/**
* Configure TLS settings for the exporter.
*/
export type HttpTls = {
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
} & ({
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
} | null) & {
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
} & ({
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
} | null) & {
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
} & ({
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
} | null) & {
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
} & ({
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
} | null);
/**
* Configure exporter to be OTLP with gRPC transport.
*/
export type OtlpGrpcExporter = {
/**
* Configure endpoint.
* If omitted or null, http://localhost:4317 is used.
*
*/
endpoint?: string | null;
tls?: GrpcTls;
/**
* Configure headers. Entries have higher priority than entries from .headers_list.
* If an entry's .value is null, the entry is ignored.
*
*
* @minItems 1
*/
headers?: [NameStringValuePair, ...NameStringValuePair[]];
/**
* Configure headers. Entries have lower priority than entries from .headers.
* The value is a list of comma separated key-value pairs matching the format of OTEL_EXPORTER_OTLP_HEADERS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#configuration-options for details.
* If omitted or null, no headers are added.
*
*/
headers_list?: string | null;
/**
* Configure compression.
* Values include: gzip, none. Implementations may support other compression algorithms.
* If omitted or null, none is used.
*
*/
compression?: string | null;
/**
* Configure max time (in milliseconds) to wait for each export.
* Value must be non-negative. A value of 0 indicates no limit (infinity).
* If omitted or null, 10000 is used.
*
*/
timeout?: number | null;
} & ({
/**
* Configure endpoint.
* If omitted or null, http://localhost:4317 is used.
*
*/
endpoint?: string | null;
tls?: GrpcTls;
/**
* Configure headers. Entries have higher priority than entries from .headers_list.
* If an entry's .value is null, the entry is ignored.
*
*
* @minItems 1
*/
headers?: [NameStringValuePair, ...NameStringValuePair[]];
/**
* Configure headers. Entries have lower priority than entries from .headers.
* The value is a list of comma separated key-value pairs matching the format of OTEL_EXPORTER_OTLP_HEADERS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#configuration-options for details.
* If omitted or null, no headers are added.
*
*/
headers_list?: string | null;
/**
* Configure compression.
* Values include: gzip, none. Implementations may support other compression algorithms.
* If omitted or null, none is used.
*
*/
compression?: string | null;
/**
* Configure max time (in milliseconds) to wait for each export.
* Value must be non-negative. A value of 0 indicates no limit (infinity).
* If omitted or null, 10000 is used.
*
*/
timeout?: number | null;
} | null) & {
/**
* Configure endpoint.
* If omitted or null, http://localhost:4317 is used.
*
*/
endpoint?: string | null;
tls?: GrpcTls;
/**
* Configure headers. Entries have higher priority than entries from .headers_list.
* If an entry's .value is null, the entry is ignored.
*
*
* @minItems 1
*/
headers?: [NameStringValuePair, ...NameStringValuePair[]];
/**
* Configure headers. Entries have lower priority than entries from .headers.
* The value is a list of comma separated key-value pairs matching the format of OTEL_EXPORTER_OTLP_HEADERS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#configuration-options for details.
* If omitted or null, no headers are added.
*
*/
headers_list?: string | null;
/**
* Configure compression.
* Values include: gzip, none. Implementations may support other compression algorithms.
* If omitted or null, none is used.
*
*/
compression?: string | null;
/**
* Configure max time (in milliseconds) to wait for each export.
* Value must be non-negative. A value of 0 indicates no limit (infinity).
* If omitted or null, 10000 is used.
*
*/
timeout?: number | null;
} & ({
/**
* Configure endpoint.
* If omitted or null, http://localhost:4317 is used.
*
*/
endpoint?: string | null;
tls?: GrpcTls;
/**
* Configure headers. Entries have higher priority than entries from .headers_list.
* If an entry's .value is null, the entry is ignored.
*
*
* @minItems 1
*/
headers?: [NameStringValuePair, ...NameStringValuePair[]];
/**
* Configure headers. Entries have lower priority than entries from .headers.
* The value is a list of comma separated key-value pairs matching the format of OTEL_EXPORTER_OTLP_HEADERS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#configuration-options for details.
* If omitted or null, no headers are added.
*
*/
headers_list?: string | null;
/**
* Configure compression.
* Values include: gzip, none. Implementations may support other compression algorithms.
* If omitted or null, none is used.
*
*/
compression?: string | null;
/**
* Configure max time (in milliseconds) to wait for each export.
* Value must be non-negative. A value of 0 indicates no limit (infinity).
* If omitted or null, 10000 is used.
*
*/
timeout?: number | null;
} | null);
/**
* Configure TLS settings for the exporter.
*/
export type GrpcTls = {
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
/**
* Configure client transport security for the exporter's connection.
* Only applicable when .endpoint is provided without http or https scheme. Implementations may choose to ignore .insecure.
* If omitted or null, false is used.
*
*/
insecure?: boolean | null;
} & ({
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
/**
* Configure client transport security for the exporter's connection.
* Only applicable when .endpoint is provided without http or https scheme. Implementations may choose to ignore .insecure.
* If omitted or null, false is used.
*
*/
insecure?: boolean | null;
} | null) & {
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
/**
* Configure client transport security for the exporter's connection.
* Only applicable when .endpoint is provided without http or https scheme. Implementations may choose to ignore .insecure.
* If omitted or null, false is used.
*
*/
insecure?: boolean | null;
} & ({
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
/**
* Configure client transport security for the exporter's connection.
* Only applicable when .endpoint is provided without http or https scheme. Implementations may choose to ignore .insecure.
* If omitted or null, false is used.
*
*/
insecure?: boolean | null;
} | null) & {
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
/**
* Configure client transport security for the exporter's connection.
* Only applicable when .endpoint is provided without http or https scheme. Implementations may choose to ignore .insecure.
* If omitted or null, false is used.
*
*/
insecure?: boolean | null;
} & ({
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
/**
* Configure client transport security for the exporter's connection.
* Only applicable when .endpoint is provided without http or https scheme. Implementations may choose to ignore .insecure.
* If omitted or null, false is used.
*
*/
insecure?: boolean | null;
} | null) & {
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
/**
* Configure client transport security for the exporter's connection.
* Only applicable when .endpoint is provided without http or https scheme. Implementations may choose to ignore .insecure.
* If omitted or null, false is used.
*
*/
insecure?: boolean | null;
} & ({
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
/**
* Configure client transport security for the exporter's connection.
* Only applicable when .endpoint is provided without http or https scheme. Implementations may choose to ignore .insecure.
* If omitted or null, false is used.
*
*/
insecure?: boolean | null;
} | null);
/**
* Configure exporter to be OTLP with file transport.
*
*/
export type ExperimentalOtlpFileExporter = {
/**
* Configure output stream.
* Values include stdout, or scheme+destination. For example: file:///path/to/file.jsonl.
* If omitted or null, stdout is used.
*
*/
output_stream?: string | null;
} & ({
/**
* Configure output stream.
* Values include stdout, or scheme+destination. For example: file:///path/to/file.jsonl.
* If omitted or null, stdout is used.
*
*/
output_stream?: string | null;
} | null) & {
/**
* Configure output stream.
* Values include stdout, or scheme+destination. For example: file:///path/to/file.jsonl.
* If omitted or null, stdout is used.
*
*/
output_stream?: string | null;
} & ({
/**
* Configure output stream.
* Values include stdout, or scheme+destination. For example: file:///path/to/file.jsonl.
* If omitted or null, stdout is used.
*
*/
output_stream?: string | null;
} | null);
/**
* Configure exporter to be console.
*/
export type ConsoleExporter = {} | null;
/**
* Configure exporter to be OTLP with HTTP transport.
*
*/
export type OtlpHttpMetricExporter = {
/**
* Configure endpoint.
* If omitted or null, http://localhost:4318/v1/metrics is used.
*
*/
endpoint?: string | null;
tls?: HttpTls1;
/**
* Configure headers. Entries have higher priority than entries from .headers_list.
* If an entry's .value is null, the entry is ignored.
*
*
* @minItems 1
*/
headers?: [NameStringValuePair, ...NameStringValuePair[]];
/**
* Configure headers. Entries have lower priority than entries from .headers.
* The value is a list of comma separated key-value pairs matching the format of OTEL_EXPORTER_OTLP_HEADERS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#configuration-options for details.
* If omitted or null, no headers are added.
*
*/
headers_list?: string | null;
/**
* Configure compression.
* Values include: gzip, none. Implementations may support other compression algorithms.
* If omitted or null, none is used.
*
*/
compression?: string | null;
/**
* Configure max time (in milliseconds) to wait for each export.
* Value must be non-negative. A value of 0 indicates no limit (infinity).
* If omitted or null, 10000 is used.
*
*/
timeout?: number | null;
/**
* Configure the encoding used for messages.
* Values include: protobuf, json. Implementations may not support json.
* If omitted or null, protobuf is used.
*
*/
encoding?: ("protobuf" | "json") | null;
/**
* Configure temporality preference.
* Values include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
* If omitted or null, cumulative is used.
*
*/
temporality_preference?: ("cumulative" | "delta" | "low_memory") | null;
/**
* Configure default histogram aggregation.
* Values include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
* If omitted or null, explicit_bucket_histogram is used.
*
*/
default_histogram_aggregation?: ("explicit_bucket_histogram" | "base2_exponential_bucket_histogram") | null;
} & ({
/**
* Configure endpoint.
* If omitted or null, http://localhost:4318/v1/metrics is used.
*
*/
endpoint?: string | null;
tls?: HttpTls1;
/**
* Configure headers. Entries have higher priority than entries from .headers_list.
* If an entry's .value is null, the entry is ignored.
*
*
* @minItems 1
*/
headers?: [NameStringValuePair, ...NameStringValuePair[]];
/**
* Configure headers. Entries have lower priority than entries from .headers.
* The value is a list of comma separated key-value pairs matching the format of OTEL_EXPORTER_OTLP_HEADERS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#configuration-options for details.
* If omitted or null, no headers are added.
*
*/
headers_list?: string | null;
/**
* Configure compression.
* Values include: gzip, none. Implementations may support other compression algorithms.
* If omitted or null, none is used.
*
*/
compression?: string | null;
/**
* Configure max time (in milliseconds) to wait for each export.
* Value must be non-negative. A value of 0 indicates no limit (infinity).
* If omitted or null, 10000 is used.
*
*/
timeout?: number | null;
/**
* Configure the encoding used for messages.
* Values include: protobuf, json. Implementations may not support json.
* If omitted or null, protobuf is used.
*
*/
encoding?: ("protobuf" | "json") | null;
/**
* Configure temporality preference.
* Values include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
* If omitted or null, cumulative is used.
*
*/
temporality_preference?: ("cumulative" | "delta" | "low_memory") | null;
/**
* Configure default histogram aggregation.
* Values include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
* If omitted or null, explicit_bucket_histogram is used.
*
*/
default_histogram_aggregation?: ("explicit_bucket_histogram" | "base2_exponential_bucket_histogram") | null;
} | null);
/**
* Configure TLS settings for the exporter.
*/
export type HttpTls1 = {
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
} & ({
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
} | null) & {
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
} & ({
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
} | null);
/**
* Configure exporter to be OTLP with gRPC transport.
*
*/
export type OtlpGrpcMetricExporter = {
/**
* Configure endpoint.
* If omitted or null, http://localhost:4317 is used.
*
*/
endpoint?: string | null;
tls?: GrpcTls1;
/**
* Configure headers. Entries have higher priority than entries from .headers_list.
* If an entry's .value is null, the entry is ignored.
*
*
* @minItems 1
*/
headers?: [NameStringValuePair, ...NameStringValuePair[]];
/**
* Configure headers. Entries have lower priority than entries from .headers.
* The value is a list of comma separated key-value pairs matching the format of OTEL_EXPORTER_OTLP_HEADERS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#configuration-options for details.
* If omitted or null, no headers are added.
*
*/
headers_list?: string | null;
/**
* Configure compression.
* Values include: gzip, none. Implementations may support other compression algorithms.
* If omitted or null, none is used.
*
*/
compression?: string | null;
/**
* Configure max time (in milliseconds) to wait for each export.
* Value must be non-negative. A value of 0 indicates no limit (infinity).
* If omitted or null, 10000 is used.
*
*/
timeout?: number | null;
/**
* Configure temporality preference.
* Values include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
* If omitted or null, cumulative is used.
*
*/
temporality_preference?: ("cumulative" | "delta" | "low_memory") | null;
/**
* Configure default histogram aggregation.
* Values include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
* If omitted or null, explicit_bucket_histogram is used.
*
*/
default_histogram_aggregation?: ("explicit_bucket_histogram" | "base2_exponential_bucket_histogram") | null;
} & ({
/**
* Configure endpoint.
* If omitted or null, http://localhost:4317 is used.
*
*/
endpoint?: string | null;
tls?: GrpcTls1;
/**
* Configure headers. Entries have higher priority than entries from .headers_list.
* If an entry's .value is null, the entry is ignored.
*
*
* @minItems 1
*/
headers?: [NameStringValuePair, ...NameStringValuePair[]];
/**
* Configure headers. Entries have lower priority than entries from .headers.
* The value is a list of comma separated key-value pairs matching the format of OTEL_EXPORTER_OTLP_HEADERS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#configuration-options for details.
* If omitted or null, no headers are added.
*
*/
headers_list?: string | null;
/**
* Configure compression.
* Values include: gzip, none. Implementations may support other compression algorithms.
* If omitted or null, none is used.
*
*/
compression?: string | null;
/**
* Configure max time (in milliseconds) to wait for each export.
* Value must be non-negative. A value of 0 indicates no limit (infinity).
* If omitted or null, 10000 is used.
*
*/
timeout?: number | null;
/**
* Configure temporality preference.
* Values include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
* If omitted or null, cumulative is used.
*
*/
temporality_preference?: ("cumulative" | "delta" | "low_memory") | null;
/**
* Configure default histogram aggregation.
* Values include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
* If omitted or null, explicit_bucket_histogram is used.
*
*/
default_histogram_aggregation?: ("explicit_bucket_histogram" | "base2_exponential_bucket_histogram") | null;
} | null);
/**
* Configure TLS settings for the exporter.
*/
export type GrpcTls1 = {
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
/**
* Configure client transport security for the exporter's connection.
* Only applicable when .endpoint is provided without http or https scheme. Implementations may choose to ignore .insecure.
* If omitted or null, false is used.
*
*/
insecure?: boolean | null;
} & ({
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
/**
* Configure client transport security for the exporter's connection.
* Only applicable when .endpoint is provided without http or https scheme. Implementations may choose to ignore .insecure.
* If omitted or null, false is used.
*
*/
insecure?: boolean | null;
} | null) & {
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
/**
* Configure client transport security for the exporter's connection.
* Only applicable when .endpoint is provided without http or https scheme. Implementations may choose to ignore .insecure.
* If omitted or null, false is used.
*
*/
insecure?: boolean | null;
} & ({
/**
* Configure certificate used to verify a server's TLS credentials.
* Absolute path to certificate file in PEM format.
* If omitted or null, system default certificate verification is used for secure connections.
*
*/
ca_file?: string | null;
/**
* Configure mTLS private client key.
* Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
* If omitted or null, mTLS is not used.
*
*/
key_file?: string | null;
/**
* Configure mTLS client certificate.
* Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
* If omitted or null, mTLS is not used.
*
*/
cert_file?: string | null;
/**
* Configure client transport security for the exporter's connection.
* Only applicable when .endpoint is provided without http or https scheme. Implementations may choose to ignore .insecure.
* If omitted or null, false is used.
*
*/
insecure?: boolean | null;
} | null);
/**
* Configure exporter to be OTLP with file transport.
*
*/
export type ExperimentalOtlpFileMetricExporter = {
/**
* Configure output stream.
* Values include stdout, or scheme+destination. For example: file:///path/to/file.jsonl.
* If omitted or null, stdout is used.
*
*/
output_stream?: string | null;
/**
* Configure temporality preference.
* Values include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
* If omitted or null, cumulative is used.
*
*/
temporality_preference?: ("cumulative" | "delta" | "low_memory") | null;
/**
* Configure default histogram aggregation.
* Values include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
* If omitted or null, explicit_bucket_histogram is used.
*
*/
default_histogram_aggregation?: ("explicit_bucket_histogram" | "base2_exponential_bucket_histogram") | null;
} & ({
/**
* Configure output stream.
* Values include stdout, or scheme+destination. For example: file:///path/to/file.jsonl.
* If omitted or null, stdout is used.
*
*/
output_stream?: string | null;
/**
* Configure temporality preference.
* Values include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
* If omitted or null, cumulative is used.
*
*/
temporality_preference?: ("cumulative" | "delta" | "low_memory") | null;
/**
* Configure default histogram aggregation.
* Values include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
* If omitted or null, explicit_bucket_histogram is used.
*
*/
default_histogram_aggregation?: ("explicit_bucket_histogram" | "base2_exponential_bucket_histogram") | null;
} | null);
/**
* Configure exporter to be console.
*
*/
export type ConsoleMetricExporter = {
/**
* Configure temporality preference.
* Values include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
* If omitted or null, cumulative is used.
*
*/
temporality_preference?: ("cumulative" | "delta" | "low_memory") | null;
/**
* Configure default histogram aggregation.
* Values include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
* If omitted or null, explicit_bucket_histogram is used.
*
*/
default_histogram_aggregation?: ("explicit_bucket_histogram" | "base2_exponential_bucket_histogram") | null;
} & ({
/**
* Configure temporality preference.
* Values include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
* If omitted or null, cumulative is used.
*
*/
temporality_preference?: ("cumulative" | "delta" | "low_memory") | null;
/**
* Configure default histogram aggregation.
* Values include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
* If omitted or null, explicit_bucket_histogram is used.
*
*/
default_histogram_aggregation?: ("explicit_bucket_histogram" | "base2_exponential_bucket_histogram") | null;
} | null);
/**
* Configure metric producer to be opencensus.
*/
export type OpenCensusMetricProducer = {} | null;
/**
* Configure exporter to be prometheus.
*
*/
export type ExperimentalPrometheusMetricExporter = {
/**
* Configure host.
* If omitted or null, localhost is used.
*
*/
host?: string | null;
/**
* Configure p