OpenTelemetry-Matlab

Version 1.7.0 (19.3 MB) by Duncan Po
MATLAB interface to OpenTelemetry
21 Downloads
Updated 23 Apr 2024

MATLAB Interface to OpenTelemetry

View OpenTelemetry-Matlab on File Exchange MATLAB

MATLAB® interface to OpenTelemetry™, based on the OpenTelemetry Specification. OpenTelemetry is an observability framework for creating and managing telemetry data, such as traces, metrics, and logs. This data can then be sent to an observability back-end for monitoring, alerts, and analysis.

Status

  • Tracing, metrics, and logs are all fully supported.
  • Supported and tested on Windows®, Linux®, and macOS.

MathWorks Products (https://www.mathworks.com)

Requires MATLAB release R2022b or newer

3rd Party Products:

Installation

Installation instructions

Installing With Toolbox Package

  1. Under "Assets" of a release, download the toolbox package .mltbx file.
  2. Start MATLAB.
  3. In the Current Folder browser, navigate to the .mltbx file.
  4. Right click on the .mltbx file and select "Install".

Building From Source

Before proceeding, ensure that the below products are installed:

  1. Download, Build and install OpenTelemetry MATLAB
cd <opentelemetry-matlab-root>
cmake -S . -B build -DCMAKE_INSTALL_PREFIX=<opentelemetry-matlab-installdir>
cmake --build build --config Release --target install

  1. Download OpenTelemetry Collector. You can just obtain a pre-built binary for your platform.

Getting Started

  1. Start OpenTelemetry Collector
otelcol --config <otelcol-config-yaml>
  1. Start MATLAB
  2. Add the OpenTelemetry MATLAB install directories to your MATLAB path
>> addpath <OpenTelemetry MATLAB installdir>

Examples

Tracing

  1. Create a default tracer provider and save it.
>> p = opentelemetry.sdk.trace.TracerProvider();
>> setTracerProvider(p);
  1. Start a span
>> tr = opentelemetry.trace.getTracer("My Tracer");
>> sp = tr.startSpan("My Span");
  1. End the span
>> sp.endSpan();
  1. If your collector is configured to display the data, you should see your span displayed.

Metrics

  1. Create a default meter provider and save it.
>> p = opentelemetry.sdk.metrics.MeterProvider();
>> setMeterProvider(p);
  1. Create a counter
>> m = opentelemetry.metrics.getMeter("My Meter");
>> c = m.createCounter("My Counter");
  1. Increment the counter
>> c.add(10);
  1. If your collector is configured to display the data, you should see your counter displayed after 1 minute.

Logs

  1. Create a default logger provider and save it.
>> p = opentelemetry.sdk.logs.LoggerProvider();
>> setLoggerProvider(p);
  1. Create a logger
>> l = opentelemetry.logs.getLogger("My Logger");
  1. Emit a log record with "info" level
>> info(l, "My Message");
  1. If your collector is configured to display the data, you should see your log record displayed.

For more examples, see the "examples" folder.

Help

To view documentation of individual function, type "help <function_name>". For example,

>> help opentelemetry.sdk.trace.TracerProvider

License

The license is available in the License file within this repository

Community Support

MATLAB Central

Copyright 2023-2024 The MathWorks, Inc.

Cite As

Duncan Po (2024). OpenTelemetry-Matlab (https://github.com/mathworks/OpenTelemetry-Matlab/releases/tag/v1.7.0), GitHub. Retrieved .

MATLAB Release Compatibility
Created with R2024a
Compatible with R2022a and later releases
Platform Compatibility
Windows macOS Linux
Tags Add Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

+libmexclass/+proxy

+opentelemetry/+baggage

+opentelemetry/+baggage/+propagation

+opentelemetry/+common

+opentelemetry/+context

+opentelemetry/+context/+propagation

+opentelemetry/+exporters/+otlp

+opentelemetry/+logs

+opentelemetry/+metrics

+opentelemetry/+sdk/+common

+opentelemetry/+sdk/+logs

+opentelemetry/+sdk/+metrics

+opentelemetry/+sdk/+trace

+opentelemetry/+trace

+opentelemetry/+trace/+propagation

Version Published Release Notes
1.7.0

See release notes for this release on GitHub: https://github.com/mathworks/OpenTelemetry-Matlab/releases/tag/v1.7.0

1.6.0

See release notes for this release on GitHub: https://github.com/mathworks/OpenTelemetry-Matlab/releases/tag/v1.6.0

1.5.0

See release notes for this release on GitHub: https://github.com/mathworks/OpenTelemetry-Matlab/releases/tag/v1.5.0

1.4.0.0

See release notes for this release on GitHub: https://github.com/mathworks/OpenTelemetry-Matlab/releases/tag/v1.4.0

1.3.0.0

See release notes for this release on GitHub: https://github.com/mathworks/OpenTelemetry-Matlab/releases/tag/v1.3.0

1.2.0.0

See release notes for this release on GitHub: https://github.com/mathworks/OpenTelemetry-Matlab/releases/tag/v1.2.0

1.1.0.0

See release notes for this release on GitHub: https://github.com/mathworks/OpenTelemetry-Matlab/releases/tag/v1.1.0

1.0.1.0

See release notes for this release on GitHub: https://github.com/mathworks/OpenTelemetry-Matlab/releases/tag/v1.0.1

1.0

To view or report issues in this GitHub add-on, visit the GitHub Repository.
To view or report issues in this GitHub add-on, visit the GitHub Repository.