-
Notifications
You must be signed in to change notification settings - Fork 41
/
HISTORY
411 lines (383 loc) · 19.5 KB
/
HISTORY
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
This document summarizes changes made in all releases starting with 0.90.
Starting with version 1.4, the Kieker ticket system (accessible via
http://kieker-monitoring.net) contains details on the changes.
Please refer to the Kieker User Guide for details on using Kieker.
* 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
* 1.15.1 (February 4, 2022)
- Bugfixes
- Extended PatternParser to handle 'default' modifier
- Updated model and fixed assembly and deployment metamodel issues with interfaces.
- Correctly close directory reader stream in DirectoryReaderStage
* 1.15 (November 8, 2021)
- New features (selection)
- Migration of analysis stages to the TeeTime-based Kieker analysis.
- Added new analysis stages from the iObserve research project
- Improvements and refactorings
- Improved AspectJ probes, e.g., by introducing before/after advices for cflow pointcuts, OpenJDK 11 support
- Refactored the file system writer
- Build scripts and infrastructure
- Replaced additional local Jar dependencies by using the Maven dependencies
- Converted Kieker tools to multi-project builds
- Use of GitHub actions to test common platforms (Linux, Mac, Windows) and Java versions
- Documentation
- Migrated the deprecated LaTeX-based user guide to Read The Docs (https://kieker-monitoring.readthedocs.io/en/latest/)
- Bug fixes and improvements to code, performance, tests, documentation,
examples
* 1.14 (May 12, 2020)
- New features (selection)
- Integration of a novel pipes-and-filter framework and filters in
Kieker.Analysis based on TeeTime (teetime-framework.github.io
version 3.0). Additional documentation will be added. Currently, the
TeeTime-based framework and filters exist in parallel to the
existing infrastructure. The long-term plan is that the
TeeTime-based infrastructure replaces the existing one.
- New file system writer to replace the existing ones in the next
Kieker release
- Generic file writer supporting different compression types
- Monitoring support for Spring-based REST communication with AspectJ
- Support for enums in IRL
- Support for additional compression algorithms in the file writers
and readers
- New TeeTime reader stages with common interface to use them in
tools
- Introduced new Kieker tool framework covering commandline and
configurations file evaluation (see Writing Tools and Services)
- Added monitoring of database calls (including the SQL statement)
- Introduced new data bridge tool, called collector
- Ensuring support for Java 7, 8, 9, and 10
- Improvements and refactorings
- Moved the Kafka readers and writers into a separate Gradle module.
This is supposed to be a schematic example and other technology-specific
modules are to follow. The goal is to improve the dependency management.
- Many cleanups and improved test coverage
- Restructuring of sub-projects tools have now separate projects and
shared tool features can be found in kieker-tools
- Infrastructure
- Included Clover test coverage tool, migrated from FindBugs to
SpotBugs
- Replacing Jar file dependencies to Maven Central dependencies
(ongoing)
- Switched to Jenkins declarative pipeline
- Updated the build system to provide separate bundles for all tools
- Documentation
- Updated and new documetation are now located in the Kieker wiki
https://kieker-monitoring.atlassian.net/wiki/spaces/DOC/overview
- Bug fixes and improvements to code, performance, tests, documentation,
examples
* 1.13 (October 4, 2017)
- New features (selection)
- Kafka writer and reader
- Records provide API access to property names
- SpringBoot REST interceptors
- Improvements and refactorings
- Performance improvements in the monitoring component (including
API changes to the writers)
- Refined architecture including minor (internal) API changes
to records
- Library updates
- Dropped features
- Database (SQL) writer and reader
- Explicit support for HornetQ and OpenJMS
(may be still be used via the JMS API)
- Java 7 (or higher) required
- Infrastructure
- Migration to Atlassian Cloud (Confluence and Jira)
- Jenkins-based continuous delivery pipeline integrated with GitHub
- Docker containers for examples (JPetStore livedemo, RSS example),
build containers
- Bug fixes and improvements to code, performance, tests,
documentation, examples
* 1.12 (October 1, 2015)
- New features (selection)
- Monitoring of system-level statistics based on the Sigar API:
- New probes and corresponding records for network and
disk usage; load average
- New servlet filter to start the Sigar-based samplers
(previously only a servlet for CPU, memory/swap)
- Standalone tool for resource monitoring
- New reader and writer for Advanced Message Queuing Protocol
(AMQP)
- Probes for collecting distributed traces in REST-based
environments with Jersey.
- Example for monitoring traces in distributed applications
based on the RESTful Netflix OSS RSS Reader Recipe,
provided via container-based virtualization (Docker).
- Bug fixes and improvements to code, performance, tests,
documentation, examples
* 1.11 (April 1, 2015)
- New features (selection)
- HTTP PUT/REST API for data bridge
- Trace analysis: automatic repair of broken traces
- Improved OPAD examples
- Migrated to Gradle for build automation
- Bug fixes and improvements to code, performance, tests,
documentation, examples
* 1.10 (October 15, 2014)
- New features (selection)
- Instrumentation record language
- Various samplers to collect data from the JVM
- Major refinements and extensions to TSLib and OPAD
(e.g., various forecasters based on R)
- Filter for session reconstruction
- Updateable filters
- Additional examples
- Support for Java 1.8 (via AspectJ)
- Bug fixes and improvements to code, performance, tests, build scripts,
documentation, examples
* 1.9 (April 16, 2014)
- New features (selection)
- Binary monitoring writers using Java NIO
- Support for DiSL probes
- Writer for exporting records to the ExplorViz tool for online
trace visualization
- Trace Analysis GUI (beta)
- TSLib: time series analysis library (beta)
- OPAD: online performance anomaly detection filters (beta)
- Live demo part of the Java EE example
- TraceAnalysis: coloring of components and operations based on
response times
- API change:
- Kieker's AspectJ weaver Jar now uses a default aop.xml when
no other aop.xml found. Should be disabled in multi-classloader
environments (Java EE, OSGi, etc.) by using a new configuration
parameter; alternatively, AspectJ's weaver agent can be used.
- Bug fixes and improvements to code, performance, tests, build scripts,
documentation, examples
- Improvements to the WebGUI (see separate `HISTORY` file)
* 1.8 (October 16, 2013)
- New features (selection)
- Data Bridge: Facility to connect Kieker's Java core with other platforms
- New reader plugin that provides the current system time in regular intervals
- New TCP writer and reader
- Acceleration/slow-down factor for real-time replayer
- Minor changes to the record API
- Additional method for binary (de)serialization
- `TYPES` field now public
- Many record types no longer `final` (eases custom extensions)
- Bug fixes and improvements to code, performance, tests, build scripts,
documentation, examples
- Various improvements to the WebGUI (see separate `HISTORY` file)
* 1.7 (April 17, 2013)
- Major changes
- Adaptive monitoring: extended set of (de)activation patterns to
support adaptive monitoring for custom probes. Before: limited
to (de)activate monitoring for operation signature patterns.
- New file system writers supporting (ZIP) compression
- Minor modifications to the Kieker.Analysis API:
1. Removed the `register` methods. Registration now implicit by
passing context information to the plugin constructors.
A legacy mode for the previous API is included in this version.
2. Analysis projects can now have properties available to the plugins.
- Bug fixes and improvements to code, tests, documentation, examples
- Various improvements to the WebGUI (see separate `HISTORY` file)
- Infrastructure:
- Kieker releases now also published via Maven Central Repository
(http://search.maven.org/)
- Completely redesigned web site: http://kieker-monitoring.net
- Live demo at http://demo.kieker-monitoring.net
* 1.6 (October 17, 2012)
- Major changes
- Web-based UI for editing and running analysis projects (beta version)
- Adaptive monitoring: (De)activate monitoring on method signature level
at runtime based on signature patterns
- Restructured and extended graph/visualization filters (trace coloring,
tooltips etc.)
- Log rotation for file system writer
- Logging API: SLF4J support and logger selection via JVM argument
- Many new AspectJ-based probes for detailed event-based tracing
- Refactored realtime replayer based on new re-usable filters (realtime delay,
record logger etc.)
- Java EE example: Now included in core binary release archive and based
on MyBatis JPetStore deployed to Jetty server
- Definition of configuration properties and default values for analysis
plugins and repositories now annotation-based
- Removed legacy control servlet (JMX interface should be used instead)
- Quality
- Bug fixes
- Added a number of (JUnit) tests
* 1.5 (April 13, 2012)
- Major new features
- Completely reworked pipe-and-filter framework in Kieker.Analysis
- Use of Java annotations to specify plugins, repositories,
input/output ports etc.
- Support for multiple readers
- Load and save configurations from/to .kax files
(based on a new meta-model specified using Ecore)
- Basic tools to execute/visualize .kax files
- New database writer/reader supporting arbitrary record types
- Support for immutable record types
- New binary filesystem writer/reader
- New print stream writer
- New re-usable filters (tee, counting, timestamp etc.)
- Complete method signatures used in probes/records for control-flow tracing
- New record types/probes for event-based tracing
(method call, entry, exit etc.)
- Re-enabled Java 5 support
- Removed dependency to commons.logging
- Additional Kieker Jar usable as javaagent for AspectJ-based instrumentation
- Quality
- Bug fixes
- Added a number of (JUnit) tests
* 1.4 (October 14, 2011)
- Features:
- JMX monitoring reader and writer
- JMS support for ActiveMQ and HornetQ (in addition to OpenJMS)
- Enable/disable flushing of FS Writers
- Configurable shutdown delay for asynchronous writers
- Configurable Servlet parameters for periodic samplers
- Direct support for asynchronous analysis
- Java 5 no longer supported
- Refined Microbenchmark (+ SPEC macro-benchmark configuration)
- Bug fixes/Improvements to sources and documentation
- Code quality
- Code cleanup
- Coding conventions
- Javadoc cleanup
- Integrated static analysis tools Findbugs, Checkstyle, and PMD
- Integrated test coverage tool
- Resolved Java warnings
- Licensing
- Added license headers to source files
- Added licenses for third-party libs
- Documentation
- Extended Java EE Servlet container example to Windows
- Fixes in user guide (examples)
- Extended JMS example to ActiveMQ and HornetQ (including Windows)
- Release archives
- Eclipse project files (Kieker project can be imported without copying the
default files)
* 1.3 (May 19, 2011)
- Added support for periodic samplers
- Added support for monitoring system-level statistics based on the Sigar API
- MonitoringController no longer restricted to singleton instance
- Added support for custom time sources
- Improved configuration management
- Added named pipe reader/writer (for passing monitoring records directly within
same JVM)
- MonitoringController accessible as JMX MBean
- API changes
- The format of the kieker.monitoring.properties changed!
- Custom writers will need to be adjusted to a changed interface
- Minor changes in the MonitoringController interface
* 1.2 (Sep 8, 2010)
- Minor bug-fixes and refactorings
(e.g., renaming Kieker.Tpmon/Tpan->Kieker.Monitoring/Analysis )
- Further enancements to trace analysis tool
(e.g., analysis and visualization features providing software
assembly- and deployment-level views)
- Improved documentation, e.g., brand-new user guide with examples!
- Improved Windows support (e.g., wrapper scripts)
* 1.1 (March 04, 2010)
- Improved implementation of trace analysis tool
- internal meta-model, on-the-fly trace reconstruction, ...
- Analysis features: Output of reconstructed system model, computation
of trace equivalence classes, ...
- Enhaced visualization features, e.g.,
- hierarchical dependency graphs (operation-, component-, container-level),
- call graphs
* 1.0 (Nov 18, 2009)
- Minor changes to Kieker's architecture
- Bug fixes
* 0.95a (Jul 09, 2009)
- Considerable improvements to Kieker's architecture, e.g.
- Generalized/extensible monitoring record model (more than executions)
- Generalized/extensible writer model (more than database and filesystem)
- Integration of monitoring and analysis data model
- Major refactorings
- First release containing core parts of the analysis component Tpan
* 0.91 (Apr 27, 2009)
- Aspects are in @Aspect style
- Adapted to operate with Java 6
- Maven build support
- Monitoring support for the spring framework with soap, CXF WebService stuff
- More efficient internal data structures and processing
- Distributed monitoring
* 0.6 (Jul 30, 2008)
- Added a new test for load-time weaving without Java annotation using full
instrumentation
* 0.5 (May 08, 2008)
- first sourceforge release