Skip to content

intersystems-ib/iris-opentelemetry

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenTelemetry Configuration Project

This is a project for training purposes. The main goal is to show how to configure Open Telemetry for an InterSystems IRIS instance.

What do you need to install?

Docker images

The project deploys four docker containers:

Setup

Build the image that we will use during the workshop:

$ git clone https://github.com/intersystems-ib/iris-opentelemetry
$ cd iris-opentelemetry
$ docker compose build

Now we just need to deploy the containers:

$ docker compose up -d

If you are using Docker Desktop you should see a screen similar to this:

image

Already ready!

Monitoring tools:

Prometheus

Prometheus docker image provide a web interface accessible from this url. From the web interface you will be able to get all metrics available from IRIS instance, if you want to know more about these metrics check it here. To get any metrics you only have to write the name of the metric and Prometheus will show all metrics to fetch. image

image

Jaeger

Jaeger is an Open Source software to monitorize traces from your solutions. As Prometheus, Jaeger has a web interface published here.

In our example we are going to use the method TestTraces() from SYS.Monitor.OTel class (more info here). To execute this method you only have to open a terminal season from your Visual Studio Code (if your local project in VSCode is connected to the IRIS Server in Docker) image.

As soon as Jaeger receives a trace on OpenTelemetry Collector it will be available for consultancy from the web interface: image.

By default, a Service is created with the name irisotel when a trace from IRIS is received by OpenTelemetry Collector.

IRIS configuration

To enable IRIS notifications to OpenTelemetry Collector we have to enable it from Monitor Settings configuration: image.

For our example we are going to enable OTel Metrics to report the IRIS metrics to the collector and OTel Logs...but we are not going to use it. We have configured OTel Exporter Interval to 10 seconds, so each 10 seconds we are going to send our metrics into OpenTelemetry Collector.

About

Configuration of OpenTelemetry in IRIS instance

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published