The sample for how to use opentelemetry-collector in Java

Overview

opentelemetry-jaeger-prometheus

Introduction

OpenTelemetry Collector+Jaeger+Prometheus的可观测演示案例

  • Load Balance :Nginx
  • 前端:Java SpringBoot Web + OpenTelemetry + Jaeger Trace Exporter + Prometheus Metric Exporter
  • 后端:OpenTelemetry Collector 、Jaeger UI 、Prometheus UI

深入了解可观测体系下Traces、Metrics采集、运行原理
演示地址 http://106.14.209.9/

  • Alt Text

Architecture

image.png

Tracing 效果图

image.png

Prometheus 采集Metric

prometheus.jpg

框架列表

Library/Framework Versions 备注
opentelemetry-api 1.9.1
opentelemetry-sdk 1.9.1
opentelemetry-exporter-jaeger 1.9.1
opentelemetry-semconv 1.9.0-alpha 目前只有alpha版本
jaegertracing all-in-one:1.29 docker镜像
spring-boot 2.6.2 JDK 1.8+
nginx 1.16.1

Compiling project

Linux

  • 下载最新opentelemetry-javaagent.jar 官方 , 在Dockerfile同目录下命名为opentelemetry-javaagent.jar,具体看Dockerfile配置
  • Docker 环境,三个服务部署在一台服务器上,网络Host模式
## down
docker-compose -f /path/docker-compose.yml  down
## start
docker-compose -f /path/docker-compose.yml  up -d

Mac

Mac 用Docker Host 模式很坑,建议网络 bridge模式

networks:
  jaeger:

services:
    jaeger:
        image: jaegertracing/all-in-one:1.29
        networks:
            - jaeger

Documentation

https://github.com/open-telemetry/opentelemetry-java-instrumentation
https://www.jaegertracing.io/docs/1.29/getting-started/
https://opentelemetry.io/docs/
https://github.com/open-telemetry/opentelemetry-java
https://github.com/open-telemetry/opentelemetry-collector

联系

如果有什么疑问和建议,欢迎提交issues,我会第一时间回复

You might also like...

Log analyser / visualiser for Java HotSpot JIT compiler. Inspect inlining decisions, hot methods, bytecode, and assembly. View results in the JavaFX user interface.

JITWatch Log analyser and visualiser for the HotSpot JIT compiler. Video introduction to JITWatch video Slides from my LJC lightning talk on JITWatch

Jan 3, 2023

Java monitoring for the command-line, profiler included

jvmtop is a lightweight console application to monitor all accessible, running jvms on a machine. In a top-like manner, it displays JVM internal metri

Jan 6, 2023

PerfJ is a wrapper of linux perf for java programs.

PerfJ is a wrapper of linux perf for java programs.

PerfJ PerfJ is a wrapper of linux perf for java programs. As Brendan Gregg's words In order to profile java programs, you need a profiler that can sam

Jan 2, 2023

OOM diagnostics for Java.

Polarbear A tool to help diagnose OutOfMemoryError conditions. Polarbear helps track down the root cause of OutOfMemoryError exceptions in Java. When

May 14, 2019

Inline raw ASM instructions in Java

asm-inline At first I thought: Oh, I can make an optimization transformer for Proguard And then this happened. Example: public class Test { public

Dec 8, 2022

Some utility classes around java records

record-util Some utility classes around java records On the menu MapTrait Transform any record to a java.util.Map just by implementing the interface M

Apr 6, 2022

Terminal UI JMX (Java management extension) viewer

Terminal UI JMX (Java management extension) viewer

JMXViewer Terminal UI JMX (Java management extension) viewer Usage java -jar jmxviewer.jar [pid] The PID is optional. If it is not provided, the appli

Sep 15, 2022

The Java agent for Apache SkyWalking

Apache SkyWalking Java Agent SkyWalking-Java: The Java Agent for Apache SkyWalking, which provides the native tracing/metrics/logging abilities for Ja

Jan 5, 2023

Inspect pmap -X output of a java process, requires Java11, likely not 100% accurate

java-pmap-inspector Inspect pmap -X output of a java process, requires Java 11, likely not 100% accurate. Usage examples $ pmap -X pid pmap.txt; jav

Jul 6, 2022
Owner
laziobird
A half fish , a half bird
laziobird
A java agent to generate method mappings to use with the linux `perf` tool

perf-map-agent A java agent to generate /tmp/perf-<pid>.map files for just-in-time(JIT)-compiled methods for use with the Linux perf tools. Build Make

null 1.5k Jan 1, 2023
One file java script for visualizing JDK flight recorder execution logs as flamegraphs without any dependencies except Java and a browser.

Flamegraph from JFR logs Simple one file Java script to generate flamegraphs from Java flight recordings without installing Perl and the Brendan Gregg

Billy Sjöberg 17 Oct 2, 2022
JVM Explorer is a Java desktop application for browsing loaded class files inside locally running Java Virtual Machines.

JVM Explorer JVM Explorer is a Java desktop application for browsing loaded class files inside locally running Java Virtual Machines. Features Browse

null 109 Nov 30, 2022
A Java agent that rewrites bytecode to instrument allocation sites

The Allocation Instrumenter is a Java agent written using the java.lang.instrument API and ASM. Each allocation in your Java program is instrumented;

Google 438 Dec 19, 2022
Java memory allocation profiler

Aprof - Java Memory Allocation Profiler What is it? The Aprof project is a Java Memory Allocation Profiler with very low performance impact on profile

Devexperts 211 Dec 15, 2022
Sampling CPU and HEAP profiler for Java featuring AsyncGetCallTrace + perf_events

async-profiler This project is a low overhead sampling profiler for Java that does not suffer from Safepoint bias problem. It features HotSpot-specifi

null 5.8k Jan 3, 2023
BTrace - a safe, dynamic tracing tool for the Java platform

btrace A safe, dynamic tracing tool for the Java platform Version 2.1.0 Quick Summary BTrace is a safe, dynamic tracing tool for the Java platform. BT

btrace.io 5.3k Jan 9, 2023
Java Agent for Memory Measurements

Overview Jamm provides MemoryMeter, a Java agent for all Java versions to measure actual object memory use including JVM overhead. Use To use MemoryMe

Jonathan Ellis 624 Dec 28, 2022
Get Method Sampling from Java Flight Recorder Dump and convert to FlameGraph compatible format.

Note: Travis has removed the support for Oracle JDK 8. Therefore the build status is removed temporarily. Converting JFR Method Profiling Samples to F

M. Isuru Tharanga Chrishantha Perera 248 Dec 16, 2022
Tool for creating reports from Java Flight Recorder dumps

jfr-report-tool Tool for creating reports from Java Flight Recorder dumps. Influenced by https://github.com/chrishantha/jfr-flame-graph . Kudos to @ch

Lari Hotari 50 Oct 28, 2022