Improvements:
- Support hyphens in the backup file name pattern
Misc:
- Upgrade dependency versions
Bugfix:
- Fix potential data loss
Improvements:
- Avoid sending buffer chunks larger than
BufferChunkRetentionSize
Misc:
- Build and publish Maven packages using Java 17 with
--release 8
option - Add a new artifact
fluency-fluentd-ext
for Java 16 or later
Features:
- Support UNIX domain socket in
fluency-fluentd-ext
Bugfix:
- Improve error handling for disconnection in TCPSender and SSLSender
Features:
- Add
FluencyBuilderForFluentd#setSslSocketFactory()
Misc:
- Shade jackson-dataformat-msgpack
Bugfix:
- Rebuild with Java 8
Features:
- Add
FluencyBuilderForFluentd#setRecordFormatter()
Features:
- Support mutual TLS authentication
Misc:
- Migrate Gradle build scripts to Kotlin DSL
Bugfixes:
- The ack token is now encoded as string and not as byte array. See #181
Bugfixes:
- Fix a potential memory leak that could happen when Fluentd keeps down for long time
Bugfixes:
- Fix a bug SSLSender sends wrong size data with JVM heap mode enabled
Features:
- Rename
flushIntervalMillis
toflushAttemptIntervalMillis
in fluency-fluentd - Add
senderMaxRetryIntervalMillis
andsenderBaseRetryIntervalMillis
to `FluencyBuilderForFluentd
Security:
- Use jackson-dataformat-msgpack:2.9.9.3 through msgpack-java:0.8.18 to take care of some CVE
Misc:
- Replace JUnit4 tests with JUnit5
Security:
- Use jackson-dataformat-msgpack:2.9.9 through msgpack-java:0.8.17 to take care of CVE-2017-7525 again
Bugfixes:
- Fix a bug small buffered data that doesn't reach
chunkRetentionSize
is unexpectedly flushed - Fix a bug that ignores
waitUntilTerminated
inclose()
Bugfixes:
- Remove logback.xml added unexpectedly
Bugfixes:
- Fix potential socket leaks that could happen with connection failures except
java.net.ConnectException
and so on
Features:
- Support data ingestion to AWS S3
Improvements:
- Set daemon property of executor threads to reduce potential risks that prevent the program from shuting down
Refactoring:
- Divide the Gradle project into subprojects
- Refactor and improve fluency-treasuredata
Features:
- Experimentally support data ingestion to Treasure Data
Refactoring:
- Extract FluencyBuilder from Fluency
- Merge PackedForwardBuffer into Buffer
- Add Ingester class layer
Features:
- Support SSL/TLS
- Update dependencies
Features:
- Add
size
field tooption
section of PackedForward requests
Bugfixes:
- Improve closing sequence after Fluency#close is called
- Call sender.close() at the end to prevent receiver from failing to read socket
- Make TCPSender#close to wait unsent request is flushed
Features:
- Add emit methods to output MessagePack encoded data directly
Features:
- Support custom error handler that is called back when a send error occurs
Bugfixes:
- Fix bug Fluency with SyncFlusher doesn't flush buffered events without manually calling flush()
Features:
Optimizations:
-
Change the following default values
waitUntilBufferFlushed
: 10 -> 60 secondswaitUntilTerminated
: 10 -> 60 seconds
-
Upgrade the version of
msgpack-java
from 0.8.9 to 0.8.11 which fixes some serious bugs
Bugfixes:
- Fix bug that a temporary thread invoked to release resources can prevent the process from exiting immediately
Features:
- Add shadow jar to avoid jackson version incompatibility
- Support Jackson module registration to take care of #30
- Add Fluency.Config#setBufferChunkInitialSize and setBufferChunkRetentionSize
- Add Fluency#waitUntilFlusherTerminated
- Add Fluency.Config#setWaitUntilBufferFlushed and setWaitUntilFlusherTerminated
- Make Flusher appropriately wait until all buffers flushed
Refactoring:
- Rename Fluency#waitUntilFlushingAllBuffer to waitUntilAllBufferFlushed
- Remove ThreadLocal from PackedForwardBuffer
- Move FailureDetector to TCPSender from MultiSender
- Simplify Xxxxx.Config classes to address #33
- Simplify AsyncFlusher
- Improve the close sequence of Flusher, Buffer and Sender
Optimizations:
- Reuse instances and reduce scope of Synchronization PackedForwardBuffer
Bugfixes:
- Fix bug PackedForwardBuffer#append occationally throws BufferOverflow exception
Bugfixes:
- Fix bug PackedForwardBuffer#append occationally throws BufferOverflow exception
Features:
- Add new API
Fluency#getAllocatedBufferSize
to know how much Fluency is allocating memory - Add new API
Fluency#getBufferedDataSize
to know how much Fluency is buffering unsent data in memory - Stop retry in RetryableSender after it is closed
Features:
- Add
backup memory buffer to file
mode that does the followings- Takes backups of unsent memory buffer as file when Fluency is closing
- Sends the backup files when starting
- Add new API
Fluency#isTerminated
to check if the flusher is finished already - Remove
message
format
Bugfixes:
- Fix bug that event transfer to Fluentd occasionally gets stuck with ACK response mode enabled when the Fluentd restarts
Refactoring:
- Make XXXXSender be created from its Config instance like other classes (e.g. Buffer class)
Bugfixes:
- Not block when calling Fluency#emit and buffer is full
Bugfixes:
- Fix the wrong calcuration of memory usage in BufferPool
Features:
- Improve memory consumption with BufferPool
- Improve data transfer performance using writev(2)
Features:
- Support
ack_response
mode - Integrate with Travis CI
- Integrate with Coveralls
- Retry to send data when buffer is full
Features:
- Analyze source code with findbugs
Features:
- Support base features
- PackForword and Message format
- Sync / Async flush
- Failover with multiple fluentds
- TCP / UDP heartbeat