Treasure Agent (td-agent) is a distribution package of Fluentd — the popular open source unified data collection software — that adds extra support within Treasure Data Service.
Over the past six months, we have been working on a new version of the Treasure Agent streaming data collector. After extensive testing with production workloads, we’re proud to announce the new version of Treasure Agent (td-agent2) is now available.
The new version provides even more reliability, portability, performance, ease of use and available features. The configurations and protocols are completely compatible with older versions. We’ll continue to maintain and provide support for the previous version over the next 12 months, but we recommend that all existing users upgrade to this release. To do so, simply upgrade the package and it’s done.
Summary of Changes
|td-agent2 (New Stable)||td-agent (Old Stable)|
|Fluentd||v0.12 or later||v0.10|
|Cool.io||v1.2 or later||v1.1|
Treasure Agent now additionally supports Ubuntu 14, Debian Squeeze/Wheezy, and Mac OS X. We have switched our build system from in-house scripts to Omnibus. This enables us to generate installers for various environments much easier.
We have made substantial performance optimizations in various layers.
Ruby: Ruby was upgraded from 1.9 to 2.1, which boosts the performance.
MessagePack: We have rewritten MessagePack Ruby, the highly efficient binary serialization format used internally. (MessagePack was invented by Treasure Data co-founder Sada Furuhashi ). Specifically, we introduced an intelligent buffer management system, which yields higher performance with lower memory footprint. The chart below contains the performance comparisons of various serialization libraries, including new/old MessagePack Ruby, using a Twitter JSON data set. As you can see, the new version is 4x faster for serialization and 10% faster for deserialization.
Multi-Process Mode: One of the common inquiries we receive is are how to leverage multiple cores. Now we support a multi-process mode, which leverages multiple CPU cores on the node.
Overall, we have seen 20-40% performance improvements depending on the traffic pattern.
Ease of Use
Treasure Agent now supports configuration done via Web UI, by Fluentd-UI gem. This makes it significantly easier to configure the system. Because Fluentd-UI is simply a config generator, you’re still able to edit the configuration via command line if you prefer.