opentelemetry-dotnet-instru.../examples/demo
Paulo Janotti 9754b134c7
Fix examples/demo on arm64 (#4145)
* Fix examples/demo on arm64

* Removed commented lines

* Add matrix to fix runs-on

* Fix typo

* macos runners don't have docker

* Fix typo
2025-04-12 01:05:11 +00:00
..
Client [examples] update demo projects to .NET8 (#3345) 2024-03-29 11:19:01 +00:00
Service Bump Microsoft.Data.SqlClient from 5.2.2 to 6.0.1 (#4012) 2025-02-05 14:59:09 +01:00
Dockerfile Fix examples/demo on arm64 (#4145) 2025-04-12 01:05:11 +00:00
Makefile Improve examples/demo (#2327) 2023-03-15 17:41:01 +00:00
README.md Improve examples/demo (#2327) 2023-03-15 17:41:01 +00:00
docker-compose.yaml Fix examples/demo on arm64 (#4145) 2025-04-12 01:05:11 +00:00
grafana-datasources.yml Add Grafana and Loki to demo (#1882) 2023-01-04 03:01:30 +00:00
otel-config.yaml [chore] Bump OTel Collector and Jaeger in dev and demo (#3063) 2023-11-02 12:37:02 +00:00
prometheus.yml Add AspNetCoreMvc as playground example (#1877) 2023-01-02 16:05:12 +01:00

README.md

Demo

Description

This is a demonstrative example that uses Docker Compose.

It consists of following services:

  1. client - console application that makes a HTTP GET request instrumented with OpenTelemetry .NET Automatic Instrumentation.
  2. service - simple HTTP server using SQL Server. The application additionally has manual instrumentation (traces, metrics, logs) on top of the automatic instrumentation.
  3. sqlserver - Microsoft SQL Server used by service
  4. otel-collector - OpenTelemetry Collector which collects the telemetry send by client and service
  5. jaeger - Jaeger as traces backend
  6. prometheus - Prometheus as metrics backend
  7. loki - Grafana Loki as logs backend
  8. grafana - Grafana as telemetry UI

Usage

Windows (Git Bash):

docker compose up -d --build

macOS and Linux:

make

You can explore the telemetry in Grafana UI.

You can also find the exported telemetry in the log directory.

Cleanup

Windows (Git Bash):

docker compose down --remove-orphans
rm -rf log

macOS and Linux:

make clean