Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
f6cbfad
init release branch 3.0.0
EddeCCC Sep 2, 2025
7c37759
Prometheus exporter uses OTel metrics (#73)
EddeCCC Sep 2, 2025
06941ab
Remove opencensus-influx-exporter (#74)
EddeCCC Sep 2, 2025
1adb9fd
fix package naming
EddeCCC Sep 2, 2025
cb5b108
Fully replace OpenCensus metrics with OpenTelemetry (#75)
EddeCCC Sep 16, 2025
6a83b94
Remove visibility modifiers from tests (#76)
EddeCCC Sep 16, 2025
0ecc70e
Check if metrics are enabled
EddeCCC Sep 17, 2025
687723f
fix ViewManager
EddeCCC Sep 17, 2025
b8c83cb
update README
EddeCCC Sep 17, 2025
80d658a
add trace subchapter
EddeCCC Sep 17, 2025
cee54e9
update apache client
EddeCCC Sep 17, 2025
d0f135b
fix typo
EddeCCC Sep 17, 2025
953dad2
rename quantiles to percentiles
EddeCCC Sep 17, 2025
f3ea4d8
update spring
EddeCCC Sep 17, 2025
7a60644
update dependencies
EddeCCC Sep 17, 2025
a8e9fa8
rename selfmonitoring metrics
EddeCCC Sep 18, 2025
b544861
rename percentiles back to quantiles
EddeCCC Sep 18, 2025
4561220
use self-monitoring prefix for views
EddeCCC Sep 18, 2025
bf483d7
little fixes
EddeCCC Sep 18, 2025
2322af4
add release environment
EddeCCC Sep 18, 2025
e0f47e8
add default
EddeCCC Sep 18, 2025
cad13ef
make cached expressions thread-safe
EddeCCC Sep 18, 2025
d9bc6d1
filter for active views before registration
EddeCCC Sep 22, 2025
4f2b5a9
add default views
EddeCCC Sep 30, 2025
ed77266
add WindowedDoubleQueueTest
EddeCCC Sep 30, 2025
97ad681
update workflow
EddeCCC Oct 6, 2025
3697de3
Merge branch 'main' into 3.0.0
EddeCCC Oct 13, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/workflows/eumserver_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ jobs:
build_and_release:
name: Build and release EUM Server
runs-on: ubuntu-latest
environment: release
container: openjdk:21-jdk-slim
needs: [test_eum_server]
steps:
Expand All @@ -24,7 +25,7 @@ jobs:
run: ./gradlew assemble -PbuildVersion=${{ github.ref_name }}
# copy jar into Docker folder
- name: Prepare Docker artifact
run: ./gradlew copyServerJar
run: ./gradlew copyServerJar -PbuildVersion=${{ github.ref_name }}
- name: Upload Docker artifact
uses: actions/upload-artifact@v4
with:
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/eumserver_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,14 @@ on:
push:
branches:
- main
- '3.0.0'
paths-ignore:
- '**.md'
- '.github/**'
pull_request:
branches:
- main
- '3.0.0'
paths-ignore:
- '**.md'
- '.github/**'
Expand Down
342 changes: 195 additions & 147 deletions README.md

Large diffs are not rendered by default.

40 changes: 15 additions & 25 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ import com.github.benmanes.gradle.versions.updates.DependencyUpdatesTask

plugins {
id "org.springframework.boot" version "${springBootVersion}"
id "org.cyclonedx.bom" version "${cyclonedxBomVersion}"
id "io.spring.dependency-management" version "${springDependencyManangementVersion}"
id "org.cyclonedx.bom" version "${cyclonedxBomVersion}"
id "org.owasp.dependencycheck" version "${owaspDependencyCheckVersion}"
id "com.github.ben-manes.versions" version "${versionsPlugin}"
}
Expand All @@ -13,7 +13,6 @@ repositories {
}

apply plugin: "java"
apply plugin: "jacoco"

group = "rocks.inspectit.ocelot"

Expand Down Expand Up @@ -55,7 +54,7 @@ tasks.register('generateVersionFile') {
doLast {
def currentDate = new Date().toString()
ext.versionFile.withWriter("UTF-8") { writer ->
writer << "$version\n$currentDate\n$boomerangVersion"
writer << "$version\n$currentDate\n$boomerangVersion\n$openTelemetryVersion"
}
}
}
Expand All @@ -82,7 +81,7 @@ bootJar {
}

manifest {
attributes "Start-Class": "rocks.inspectit.oce.eum.server.EUMServerApplication"
attributes "Start-Class": "rocks.inspectit.ocelot.eum.server.EUMServerApplication"
}

// include version file
Expand Down Expand Up @@ -120,61 +119,52 @@ test {

dependencies {
implementation(
// spring boot
"org.springframework.boot:spring-boot-starter-web",
"org.springframework.boot:spring-boot-starter-actuator",
"org.springframework.boot:spring-boot-starter-validation",
"org.springframework.boot:spring-boot-starter-security",

"org.yaml:snakeyaml:${snakeYamlVersion}",
// Has to be included, but is transitive to spring
// has to be included, but is transitive to spring
"com.fasterxml.jackson.dataformat:jackson-dataformat-yaml",

// pin Prometheus client to 0.6.0 to prevent auto prefixing counter metrics with "_total"
// see: https://github.com/prometheus/client_java/issues/640, https://github.com/prometheus/client_java/pull/653
"io.prometheus:simpleclient:${prometheusClientVersion}",
"io.prometheus:simpleclient_common:${prometheusClientVersion}",
"io.prometheus:simpleclient_httpserver:${prometheusClientVersion}",

"io.opencensus:opencensus-api:${openCensusVersion}",
"io.opencensus:opencensus-impl:${openCensusVersion}",
"io.opencensus:opencensus-exporter-stats-prometheus:${openCensusVersion}",
"rocks.inspectit:opencensus-influxdb-exporter:${openCensusInfluxdbExporterVersion}",

"io.grpc:grpc-context:${grpcVersion}",

// opentelemetry
platform("io.opentelemetry:opentelemetry-bom-alpha:${openTelemetryAlphaVersion}"),
platform("io.opentelemetry:opentelemetry-bom:${openTelemetryVersion}"),
"io.opentelemetry:opentelemetry-sdk:${openTelemetryVersion}",
"io.opentelemetry:opentelemetry-api:${openTelemetryVersion}",
"io.opentelemetry:opentelemetry-sdk-metrics:${openTelemetryVersion}",
"io.opentelemetry:opentelemetry-exporter-otlp:${openTelemetryVersion}",
"io.opentelemetry:opentelemetry-exporter-prometheus:${openTelemetryAlphaVersion}",
"io.opentelemetry.semconv:opentelemetry-semconv:${openTelemetrySemConvVersion}",
"io.opentelemetry.proto:opentelemetry-proto:${openTelemetryProtoVersion}",

// also opentelemetry related
"com.google.protobuf:protobuf-java:${protobufVersion}",
"com.google.protobuf:protobuf-java-util:${protobufVersion}",

// utils
"com.google.guava:guava:${guavaVersion}",
"com.maxmind.geoip2:geoip2:${geoip2Version}",
"commons-net:commons-net:${commonsNetVersion}",
"org.apache.commons:commons-lang3:${commonsLang3Version}",
"org.apache.commons:commons-math3:${commonsMath3Version}",
"commons-io:commons-io:${commonsIoVersion}",

"org.influxdb:influxdb-java:${influxdbJavaVersion}",
"commons-io:commons-io:${commonsIoVersion}"
)

compileOnly "org.projectlombok:lombok:${lombokVersion}"
annotationProcessor "org.projectlombok:lombok:${lombokVersion}"

testImplementation(
"org.springframework.boot:spring-boot-starter-test",
"io.opencensus:opencensus-impl:${openCensusVersion}",
"org.apache.httpcomponents:httpclient:${httpClientVersion}",
"org.apache.httpcomponents.client5:httpclient5:${httpClientVersion}",

// ServerExtension
// server-extension
"com.linecorp.armeria:armeria-junit5:${armeriaVersion}",
"com.linecorp.armeria:armeria-grpc-protocol:${armeriaVersion}",

// for docker test containers
// docker test containers
"org.testcontainers:testcontainers:${testContainersVersion}",
"org.testcontainers:junit-jupiter:${testContainersVersion}"
)
Expand Down
13 changes: 9 additions & 4 deletions dependencyCheckSuppression.xml
Original file line number Diff line number Diff line change
@@ -1,11 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<suppressions xmlns="https://jeremylong.github.io/DependencyCheck/dependency-suppression.1.3.xsd">
<suppress>
<notes><![CDATA[
False positive in opentelemetry-exporter-prometheus.jar due to the prometheus name
]]></notes>
<cve>CVE-2019-3826</cve>
</suppress>
<suppress>
<notes><![CDATA[
False positive in opencensus-exporter-stats-prometheus-0.31.1.jar due to the prometheus name.
]]></notes>
<sha1>e5bc2949679b6214e8d9a1e5b707f2b42bb3fa13</sha1>
<cve>CVE-2019-3826</cve>
We do not use Spring Framework 5.0.5.RELEASE, but version 6+
]]></notes>
<cve>CVE-2018-1258</cve>
</suppress>
<suppress>
<notes><![CDATA[
Expand Down
26 changes: 7 additions & 19 deletions gradle.properties
Original file line number Diff line number Diff line change
@@ -1,47 +1,35 @@
# The boomerang version to ship with the EUM server
# the boomerang version to ship with the EUM server
boomerangVersion=1.815.1
# The OpenTelemetry-Boomerang version to ship with the EUM server
# the OpenTelemetry-Boomerang-Plugin version to ship with the EUM server
boomerangOpenTelemetryPluginVersion=2.0.0-2

springBootVersion=3.5.5
snakeYamlVersion=2.5

openCensusVersion=0.31.1
openCensusInfluxdbExporterVersion=1.2
grpcVersion=1.75.0

# @pin Prometheus client to 0.6.0 to prevent auto prefixing counter metrics with "_total"
# see: https://github.com/prometheus/client_java/issues/640, https://github.com/prometheus/client_java/pull/653
# additionally, the version 1.* introduced breaking changes
prometheusClientVersion = 0.6.0
# Keep the OpenTelemetry versions consistent, take a look at Spring
# keep the OpenTelemetry versions consistent, take a look at Spring
openTelemetryVersion=1.49.0
openTelemetryAlphaVersion=1.49.0-alpha
openTelemetrySemConvVersion=1.34.0
openTelemetryProtoVersion=1.7.0-alpha
# Keep an eye on OTel proto version
# keep an eye on OTel proto version
protobufVersion=4.31.0

# utils
guavaVersion=33.4.8-jre
geoip2Version=4.4.0
httpClientVersion=4.5.14
commonsNetVersion=3.12.0
commonsMath3Version=3.6.1
commonsLang3Version=3.18.0
commonsIoVersion=2.20.0

influxdbJavaVersion=2.25

# testing
armeriaVersion=1.32.5
testContainersVersion=1.21.3
httpClientVersion=5.5

### gradle plugin versions
### Check for newer version at https://plugins.gradle.org/
# io.spring.dependency-management
springDependencyManangementVersion=1.1.7
# org.owasp.dependencycheck
owaspDependencyCheckVersion=12.1.3
# org.cyclonedx.bom
cyclonedxBomVersion=2.3.1
versionsPlugin=0.52.0
lombokVersion=1.18.40
Loading