Skip to content

Commit

Permalink
Merge branch 'main' into KIEKER-1978-SpringBoot-Pure
Browse files Browse the repository at this point in the history
  • Loading branch information
DaGeRe authored Feb 5, 2025
2 parents f591580 + 65dc70d commit 4796956
Show file tree
Hide file tree
Showing 515 changed files with 5,186 additions and 2,513 deletions.
2 changes: 1 addition & 1 deletion .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ updates:
- package-ecosystem: "gradle"
directory: "/"
schedule:
interval: "weekly"
interval: "daily"


12 changes: 11 additions & 1 deletion CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,16 @@ authors:
family-names: "van Hoorn"
given-names: "Andre"
orcid: "https://orcid.org/0000-0003-2567-6077"
-
affiliation: "Kiel University"
family-names: Jung
given-names: Reiner
orcid: "https://orcid.org/0000-0002-5464-8561"
-
affiliation: "Lancaster University"
family-names: Reichelt
given-names: David Georg
orcid: "https://orcid.org/0000-0002-1772-1416"
cff-version: "1.1.0"
doi: "10.1016/j.simpa.2020.100019"
keywords:
Expand All @@ -22,4 +32,4 @@ license: "Apache-2.0"
message: "If you use this software, please cite https://doi.org/10.1016/j.simpa.2020.100019"
repository-code: "https://github.com/kieker-monitoring/kieker"
title: Kieker
version: "2.0.0-SNAPSHOT"
version: "2.0.2"
110 changes: 110 additions & 0 deletions HISTORY
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,116 @@ http://kieker-monitoring.net) contains details on the changes.

Please refer to the Kieker User Guide for details on using Kieker.

* 2.0.2 (October 5, 2024)
- Removing unused tool dependencies to reduce release size
- Kieker 2006 r dependencies to opad by @DaGeRe in https://github.com/kieker-monitoring/kieker/pull/683
- Remove unused groovy dependency by @DaGeRe in https://github.com/kieker-monitoring/kieker/pull/684
- Bump org.mockito:mockito-core from 5.14.1 to 5.14.2 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/662
- Bump org.eclipse.jetty.ee10:jetty-ee10-webapp from 12.0.13 to 12.0.14 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/666
- Bump org.junit.jupiter:junit-jupiter from 5.11.0 to 5.11.3 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/667
- Bump org.glassfish.jersey.core:jersey-client from 3.1.7 to 3.1.9 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/665
- Bump ch.qos.logback:logback-classic from 1.5.8 to 1.5.11 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/664
- Bump org.eclipse.jetty:apache-jsp from 11.0.23 to 11.0.24 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/668
- Bump org.eclipse.emf:org.eclipse.emf.ecore from 2.36.0 to 2.37.0 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/669
- Bump org.junit.jupiter:junit-jupiter-api from 5.11.2 to 5.11.3 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/672
- Bump ch.qos.logback:logback-classic from 1.5.11 to 1.5.12 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/675
- Bump org.apache.commons:commons-csv from 1.11.0 to 1.12.0 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/673
- Bump org.glassfish.jersey.core:jersey-common from 3.1.8 to 3.1.9 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/674
- Bump com.fasterxml.jackson.core:jackson-core from 2.17.2 to 2.18.1 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/676
- Remove duplicate jackson-core and jackson in tools dependencies by @DaGeRe in https://github.com/kieker-monitoring/kieker/pull/679
- Bump ch.qos.logback:logback-core from 1.5.6 to 1.5.12 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/677
- Bump org.junit.jupiter:junit-jupiter-engine from 5.11.2 to 5.11.3 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/682
- Bump ch.qos.logback:logback-access from 1.5.11 to 1.5.12 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/681
- Bump com.fasterxml.jackson.core:jackson-databind from 2.17.2 to 2.18.1 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/678
- Bump org.apache.kafka:kafka-clients from 3.8.0 to 3.8.1 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/680

* 2.0.1 (October 19, 2024)
- Rebranding: Name Kieker an obserability tool and mention tracing where necessary (since Kieker always did method execution tracing, but was calling this monitoring)
- Minor fixes
- Only pass ExplorViz token to OpenTelemetry if necessary
- Version updates
- Bump org.apache.kafka:kafka-clients from 3.7.0 to 3.8.0 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/635
- Bump org.apache.commons:commons-lang3 from 3.14.0 to 3.17.0 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/631
- Bump org.apache.groovy:groovy-all from 4.0.22 to 4.0.23 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/634
- Bump org.junit.jupiter:junit-jupiter from 5.10.2 to 5.11.0 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/632
- Bump org.eclipse.jetty.ee10:jetty-ee10-webapp from 12.0.11 to 12.0.13 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/633
- Bump ch.qos.logback:logback-classic from 1.4.14 to 1.5.8 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/642
- Bump io.freefair.aspectj.post-compile-weaving from 8.6 to 8.10 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/640
- Bump org.tukaani:xz from 1.9 to 1.10 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/646
- Bump org.junit.jupiter:junit-jupiter-engine from 5.10.2 to 5.11.1 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/644
- Bump com.rabbitmq:amqp-client from 5.21.0 to 5.22.0 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/645
- Bump commons-io:commons-io from 2.16.1 to 2.17.0 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/639
- Bump org.eclipse.jetty:jetty-server from 12.0.5 to 12.0.13 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/638
- Bump org.eclipse.jetty:jetty-server from 12.0.13 to 12.0.14 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/650
- Bump org.junit.jupiter:junit-jupiter-engine from 5.11.1 to 5.11.2 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/651
- Bump io.freefair.aspectj.post-compile-weaving from 8.10 to 8.10.2 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/652
- Bump org.ow2.asm:asm from 9.7 to 9.7.1 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/649
- Bump org.springframework:spring-web from 6.0.19 to 6.0.23 in /examples/JavaEEServletContainerExample/jetty/webapps/jpetstore/META-INF/maven/org.mybatis/jpetstore by @dependabot in https://github.com/kieker-monitoring/kieker/pull/643
- Bump org.junit.jupiter:junit-jupiter-api from 5.10.2 to 5.11.2 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/654
- Bump org.mockito:mockito-core from 5.13.0 to 5.14.1 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/655
- Bump org.eclipse.emf:org.eclipse.emf.ecore.xmi from 2.37.0 to 2.38.0 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/656
- Bump io.freefair.gradle:aspectj-plugin from 8.10 to 8.10.2 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/661
- Bump org.csveed:csveed from 0.8.1 to 0.8.2 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/658
- Bump ch.qos.logback:logback-access from 1.5.8 to 1.5.11 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/659
- Bump org.glassfish.jersey.core:jersey-server from 3.1.8 to 3.1.9 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/660
- Bump com.github.oshi:oshi-core from 6.4.12 to 6.6.5 by @dependabot in https://github.com/kieker-monitoring/kieker/pull/657

* 2.0.0 (June 23, 2024)
- Refactoring
- Major API changes
- Update Kieker to Java 11; Java 8 is no longer supported
- Replaced all the different graph libraries with one graph library
- Created comprehensive and stable package structure
- Improved code quality: hardcoded time unit values
- Removed obsolete code: DbWriter and deprecated classes
- Update dependencies and provide more modular jars
- Fixed inconsistent naming of reader and writer tests
- Replaced old tools with new ones using TeeTime
- Separated Moobench from Kieker
- Features
- Many improvements to the Kieker Architecture Model, including nested components, dataflow
- Improve component and operation processing in Kieker
- Support for user behavior modeling and clustering
- Support for Java 21
- Separate string registration from serialization in records
- Switch to new TeeTime based pipe and filter framework
- Inclusion of dynamic and static architecture analysis tools from the OceanDSL project
- Improved Build System
- Working local build with docker container
- Rework Gradle build script
- Improve Pipeline Speed
- Jenkins optimization and issue fixing
- Introduce timeouts for stages
- Update to Gradle 8.8
- Release
- Migrated releases to GitHub
- Created check for source and javadoc jars into check script
- Moved Moobench and other Kieker repositories to github
- Removed Feature
- Deprecation of KaxRun and KaxViz
- DbWrite
- Documentation
- Moved documentation to readthedocs
- Improved documentation for use of IRL
- Updated introduction
- Library updates
- Update Teetime to 3.1.0 release
- Update AspectJ to 1.9.19 to support Java 19
- Remove aopalliance dependency
- Updated to new OSHI library to support systems monitoring
- Updated many different library versions

* 1.15.4 (November 15, 2023)
- Update dependencies to avoid security issues:
- Update jersey-server to 3.0.12 (latest Java 8 release)i
- okhttp to 4.12.0
- javaassist to 3.29.2-GA
- groovy-all to 4.0.15

* 1.15.3 (November 6, 2023)
- Fix analysis problem: Allow analysis of multiple files again
- Fix analysis problem: Correctly interpret timeout for maxTraceDuration

* 1.15.2 (July 6, 2022)
- Fix security vulnerability sonatype-2020-0926 by update to guava 31.1-jre

Expand Down
67 changes: 57 additions & 10 deletions Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ pipeline {
stage('Default Docker Stages') {
agent {
docker {
image 'kieker/kieker-build:openjdk11'
image 'kieker/kieker-build:temurin17'
alwaysPull false
args env.DOCKER_ARGS
}
Expand Down Expand Up @@ -83,11 +83,58 @@ pipeline {

stage('Unit Test') {
steps {
sh './gradlew --parallel test jacocoTestReport'
jacoco(
sourcePattern: '**/src/**',
exclusionPattern: '**/test/**'
)
sh 'export JAVA_OPTS="-Djava.util.prefs.systemRoot=$WORKSPACE/.java -Djava.util.prefs.userRoot=$WORKSPACE/.java/.userPrefs"; ./gradlew --info --parallel test jacocoTestReport'
recordCoverage(tools: [[parser: 'JACOCO', pattern: '**/jacocoTestReport.xml']],
id: 'jacoco', name: 'JaCoCo Coverage',
sourceCodeRetention: 'EVERY_BUILD',
sourceDirectories: [[path: './tools/sar/src'],
[path: './tools/fxca/src'],
[path: './tools/maa/src'],
[path: './tools/behavior-analysis/src'],
[path: './tools/cmi/src'],
[path: './tools/restructuring/src'],
[path: './tools/mvis/src'],
[path: './tools/mktable/src'],
[path: './tools/convert-logging-timestamp/src'],
[path: './tools/rewrite-log-entries/src'],
[path: './tools/trace-analysis/src'],
[path: './tools/src'],
[path: './tools/resource-monitor/src'],
[path: './tools/otel-transformer/src'],
[path: './tools/allen-upper-limit/src'],
[path: './tools/mop/src'],
[path: './tools/delta/src'],
[path: './tools/mt/src'],
[path: './tools/opad/src'],
[path: './tools/trace-analysis-gui/src'],
[path: './tools/relabel/src'],
[path: './tools/collector/src'],
[path: './tools/runtime-analysis/src'],
[path: './tools/log-replayer/src'],
[path: './tools/dar/src'],
[path: './extension-kafka/src'],
[path: './analysis/src'],
[path: './model/src'],
[path: './common/src'],
[path: './monitoring/disl/src'],
[path: './monitoring/aspectj/src'],
[path: './monitoring/aspectj/integrationTest-resources/example-projects-aspectj/example-beforeafteroperationevent/src'],
[path: './monitoring/aspectj/integrationTest-resources/example-projects-aspectj/example-beforeafterconstructorevent/src'],
[path: './monitoring/aspectj/integrationTest-resources/example-projects-aspectj/example-operationexecutionrecord/src'],
[path: './monitoring/aspectj/integrationTest-resources/example-projects-aspectj/example-pure/src'],
[path: './monitoring/javassist/src'],
[path: './monitoring/spring/src'],
[path: './monitoring/core/src'],
[path: './monitoring/bytebuddy/src'],
[path: './extension-cassandra/src'],
[path: './tools/restructuring/src-gen'],
[path: './tools/opad/src-gen'],
[path: './analysis/src-gen'],
[path: './model/src-gen'],
[path: './common/src-gen']])
// Generated by:
// for folder in $(find . -name "src" | grep -v "examples"); do echo " [path: '"$folder"'],"; done
// for folder in $(find . -name "src-gen" | grep -v "examples"); do echo " [path: '"$folder"'],"; done
}
post {
always {
Expand All @@ -98,7 +145,7 @@ pipeline {

stage('Distribution Build') {
steps {
sh './gradlew -x test -x signMavenJavaPublication build publishToMavenLocal distribute'
sh './gradlew -x test -x signMavenJavaPublication -x signArchives build publishToMavenLocal distribute'
sh 'bin/dev/assemble-tools.sh'
stash includes: 'build/libs/*.jar', name: 'jarArtifacts'
stash includes: 'build/distributions/*', name: 'distributions'
Expand Down Expand Up @@ -146,7 +193,7 @@ pipeline {
}
}
steps {
sh './gradlew publishToMavenLocal'
sh './gradlew -x signMavenJavaPublication -x signArchives build publishToMavenLocal'
unstash 'distributions'
sh 'bin/dev/release-check-extended.sh'
}
Expand Down Expand Up @@ -226,7 +273,7 @@ pipeline {
passwordVariable: 'kiekerMavenPassword'
)
]) {
sh './gradlew publish'
sh './gradlew -x signMavenJavaPublication -x signArchives publish'
}
}
post {
Expand Down Expand Up @@ -255,7 +302,7 @@ pipeline {
unstash 'jarArtifacts'
withCredentials([
usernamePassword(
credentialsId: 'artifactupload',
credentialsId: 'OSSRH-Token',
usernameVariable: 'kiekerMavenUser',
passwordVariable: 'kiekerMavenPassword'
),
Expand Down
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Kieker Monitoring Framework
# Kieker Observability Framework

The internal behavior of large-scale software systems cannot be determined on the
basis of static (e.g., source code) analysis alone. Kieker provides complementary
dynamic analysis capabilities, i.e., monitoring and analyzing a software system’s
runtime behavior — enabling application performance monitoring and architecture
discovery.
dynamic analysis capabilities, i.e., tracing, monitoring and analyzing a software
system’s runtime behavior — enabling application performance monitoring and
architecture discovery.

Detailed information about Kieker is provided at http://kieker-monitoring.net/
and its documentation site https://kieker-monitoring.readthedocs.io/en/latest/
Expand Down
16 changes: 10 additions & 6 deletions analysis/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -21,16 +21,20 @@ project.artifacts {
testArchives project.jarTest
}

javadoc {
exclude 'kieker/analysis/model/analysisMetaModel/**'
}

dependencies {
api project(':common')
api project(':monitoring:core')
api project(':model')

api "org.apache.cxf:cxf:$libCxfVersion" // cxf-bundle

api "org.eclipse.emf:org.eclipse.emf.common:2.31.0"
api "org.eclipse.emf:org.eclipse.emf.ecore.xmi:2.37.0"
api "org.eclipse.emf:org.eclipse.emf.ecore:2.36.0"
api "org.eclipse.emf:org.eclipse.emf.common:2.40.0"
api "org.eclipse.emf:org.eclipse.emf.ecore.xmi:2.38.0"
api "org.eclipse.emf:org.eclipse.emf.ecore:2.38.0"

api "com.rabbitmq:amqp-client:$libAmqpVersion"
api "nz.ac.waikato.cms.weka:weka-stable:3.8.6" // used by behavior analysis
Expand All @@ -46,7 +50,7 @@ dependencies {
api "org.apache.commons:commons-compress:1.27.1"
api "org.nanohttpd:nanohttpd:2.3.1"
api "com.carrotsearch:hppc:0.10.0"
api "org.csveed:csveed:0.8.1"
api "org.csveed:csveed:0.8.2"
api "org.yaml:snakeyaml:2.3"
api "org.mosim.refactorlizar:architecture-evaluation-tool:0.0.4"

Expand All @@ -60,8 +64,8 @@ dependencies {
// this project depends on the tests of common, e.g., it requires the class AbstractKiekerTest
testImplementation project (path: ':common', configuration: 'testArchives')
// Use JUnit test framework
testImplementation "org.junit.jupiter:junit-jupiter-api:5.10.2"
testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:5.10.2"
testImplementation "org.junit.jupiter:junit-jupiter-api:5.11.3"
testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:5.11.3"
testImplementation "de.cau.cs.se.teetime:teetime:${libTeetimeVersion}:test"

testRuntimeOnly "org.apache.derby:derby:10.17.1.0" // (10.17.1.0 and above require Java 8, 10.15.2.0 requires Java 11+ and should therefore currently not be used)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ public TcpProbeController() {
}

/**
* Convenience method for {@link AbstractControlEvent control events}.
* Convenience method for {@link BasicTcpControlEvent} control events.
*
* @param event
* The event that contains the information for remote control
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/***************************************************************************
* Copyright 2023 Kieker Project (http://kieker-monitoring.net)
* Copyright 2022 Kieker Project (http://kieker-monitoring.net)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/***************************************************************************
* Copyright 2023 Kieker Project (http://kieker-monitoring.net)
* Copyright 2022 Kieker Project (http://kieker-monitoring.net)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/***************************************************************************
* Copyright 2023 Kieker Project (http://kieker-monitoring.net)
* Copyright 2022 Kieker Project (http://kieker-monitoring.net)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/***************************************************************************
* Copyright 2023 Kieker Project (http://kieker-monitoring.net)
* Copyright 2022 Kieker Project (http://kieker-monitoring.net)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/***************************************************************************
* Copyright 2023 Kieker Project (http://kieker-monitoring.net)
* Copyright 2022 Kieker Project (http://kieker-monitoring.net)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/***************************************************************************
* Copyright 2023 Kieker Project (http://kieker-monitoring.net)
* Copyright 2022 Kieker Project (http://kieker-monitoring.net)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down
Loading

0 comments on commit 4796956

Please sign in to comment.