JSPM

  • Created
  • Published
  • Downloads 5913238
  • Score
    100M100P100Q224337F
  • License Apache-2.0

Transform OpenTelemetry SDK data into OTLP

Package Exports

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@opentelemetry/otlp-transformer) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    OpenTelemetry Protocol

    NPM Published Version Apache License

    Note: This package is intended for internal use only.

    Note: This is an experimental package under active development. New releases may include breaking changes.

    This package provides everything needed to serialize OpenTelemetry SDK traces, metrics and logs into the OpenTelemetry Protocol format.

    Quick Start

    To get started you will need to install a compatible OpenTelemetry API.

    Install Peer Dependencies

    npm install @opentelemetry/api

    Serialize Traces/Metrics/Logs

    This module exports serializers to serialize traces, metrics and logs from the OpenTelemetry SDK into protocol buffers or JSON which can be sent over HTTP or gRPC (protobuf-only) to the OpenTelemetry collector or a compatible receiver.

    import {
      JsonLogsSerializer,
      JsonMetricsSerializer,
      JsonTraceSerializer,
      ProtobufLogsSerializer,
      ProtobufMetricsSerializer,
      ProtobufTraceSerializer,
      IExportLogsServiceResponse,
      IExportMetricsServiceResponse,
      IExportTraceServiceResponse,
    } from '@opentelemetry/otlp-transformer';
    
    // serialize to JSON export requests
    const serializedJsonLogs: Uint8Array = JsonLogsSerializer.serializeRequest(readableLogRecords);
    const serializedJsonMetrics: Uint8Array = JsonMetricsSerializer.serializeRequest(resourceMetrics);
    const serializedJsonTraces: Uint8Array = JsonTraceSerializer.serializeRequest(readableSpans);
    
    // serialize to Protobuf export requests
    const serializedProtobufLogs: Uint8Array = ProtobufLogsSerializer.serializeRequest(readableLogRecords);
    const serializedProtobufMetrics: Uint8Array = ProtobufMetricsSerializer.serializeRequest(resourceMetrics);
    const serializedProtobufTraces: Uint8Array = ProtobufTraceSerializer.serializeRequest(readableSpans);
    
    // deserialize JSON export responses
    const deserializedJsonLogResponse: IExportLogsServiceResponse = JsonLogsSerializer.deserializeResponse(jsonLogResponse);
    const deserializedJsonMetricsResponse: IExportMetricsServiceResponse = JsonMetricsSerializer.deserializeResponse(jsonMetricsResponse);
    const deserializedJsonTraceResponse: IExportTraceServiceResponse = JsonTraceSerializer.deserializeResponse(jsonTraceResponse);
    
    // deserialize Protobuf export responses
    const deserializedProtobufLogResponse: IExportLogsServiceResponse = ProtobufLogsSerializer.deserializeResponse(protobufLogResponse);
    const deserializedProtobufMetricsResponse: IExportMetricsServiceResponse = ProtobufMetricsSerializer.deserializeResponse(protobufMetricsResponse);
    const deserializedProtobufTraceResponse: IExportTraceServiceResponse = ProtobufTraceSerializer.deserializeResponse(protobufTraceResponse);

    License

    Apache 2.0 - See LICENSE for more information.