Version 3.0.3 (2010-03-12) ========================== * Mac OS X application package was missing required data directory (866) * HTTPTypes::url_encode() crashes when input string has negative char (877) * TCPConnection::write() was not passing error_code by reference (878) Version 3.0.1 (2010-03-01) ========================== * Full design refresh of the Pion UI for 3.0 release (855) * Pion Community Edition has been renamed to Pion Core (803) * Pion now supports user access controls for the various UI tabs (741) * Pion web services can now be updated dynamically via config API (834) * Fixed various UI problems occurring only in Internet Explorer (856) * Error messages in UI now display links to Pion Knowledge Base (813) * Fixed errors caused when storing NULL or empty fields to databases (852) * Reactor running states were being removed with configuration updates (863) * Added scrollbars for Reactor configuration grids that can be very long (849) * Added named signal/slots support to Pion Core Reactor API (751) * Added ability to dynamically remove resources from HTTPServers (834) * Added support to HTTPParser for saving the raw HTTP headers (842) * HTTPParser now uses a default status code of 0 instead of 200 (817) * Removed build numbers from Unix library names (861) Version 2.2.12 (2010-02-16) =========================== * Updated HTTPProtocol config so that it extracts JSON responses (839) * Made HTTP query parameter map case-insensitive (836) Version 2.2.10 (2010-01-20) =========================== * Fixed various memory leaks within PythonReactor (818) * Fixed deadlocks when using multiple PythonReactors in same data flow (824) * TransformReactor now allows assignments from any type, not just strings (811) * TransformReactor now continues evaluating rules after is-(not-)defined (791) * TransformReactor rules now stop when the first condition matches (797) * Added new cs-cookie and sc-cookie extraction rules for HTTPProtocol (796) * Added EventsQueued statistic to ReactionEngine /config/reactors/stats (823) * Added new visitor-status field to clickstream vocabulary (785) * HTTPParser will now ignore attributes from Set-Cookie HTTP headers (808) * Disabled default building of static libraries in Unix autoconf scripts (825) Version 2.2.8 (2009-12-04) ========================== * Fixed exceptions in pget.py when reactor names or comments were empty (773) * HTTP client library not sending payload content that started with NULL (777) * Added support for newer Boost releases (through 1.41) and for gcc 4.4 (780) Version 2.2.6 (2009-11-25) ========================== * Windows installer no longer attempts to start/stop the Pion service (758) * Windows installer now makes backups of configuration files (759) * Pion now includes its version number in all configuration files (760) * Updated Webtrends (IIS) Codec to include support for substatus field (761) Version 2.2.4 (2009-10-27) ========================== * Updated "start_pion.bat" on Windows to start Pion as an application (739) * Multiple Pion instances were able to bind to the same port on Windows (707) * Linux RPM installer used the wrong permissions for /var/log/pion (746) Version 2.2.2 (2009-10-09) ========================== * Added a new PythonReactor that allows you to build Reactors using Python (651) * Reactor connections can now be easily deleted by just clicking on them (682) * Added new cp-rtt and ps-rtt "round trip time" performance metrics (660) * Fixed broken handling of zblob data type in various Codec plug-ins (724) * HTTPProtocol now defaults to using case-sensitive regular expressions (686) * Improved Windows installer to be much simpler and better integrated (668, 680) * Added pget.py and pmon.py scripts for monitoring and managing Pion (593, 604) * Added -M pion executable option to lock memory usage on Unix platforms (371) * Updated UI "restore default" and "delete" buttons to be consistent (733) * Updated Pion user interface to use Dojo 1.3.2 (558) * HTTPParser query parameter parsing failed on LF & CR characters (681) * Improved autoconf detection for support of Boost.Lockfree library (692) * Improved error handling in PluginManager when loading fails (736) * Fixed "make install" on Unix platforms using autoconf (378) * Pion's unit tests now use random port numbers (690) Version 2.1.12 (2009-10-07) =========================== * DatabaseOutputReactor queued events indefinitely when DB open failed (728) * SQLite default page cache sizes were causing ~4GB memory usage (730) * HTTPProtocol was not handling "100 Continue" responses properly (737) Version 2.1.10 (2009-09-25) =========================== * Made ConfigManager::xml_encode() more robust when given binary data (726) Version 2.1.8 (2009-09-16) ========================== * Fixed occasional LogInputReactor unit test failures on Unix (273) * Increased default SQLite cache sizes to improve insert performance (717) * Updated default config file to use localtime instead of GMT for logging (722) Version 2.1.6 (2009-08-28) ========================== * TransformReactor was not working for numeric & date source terms (705) * LogOutputReactor with ELFCodec was not reliably writing log headers (696) * Changes to HTTPProtocol configurations via UI was not working properly (701) * Protocol configuration updates via UI was sending too many requests (702) Version 2.1.4 (2009-07-31) ========================== * Switched default logging to use log4cplus 1.0.3 instead of log4cxx (274, 514) * Updated and merged in the latest version of the boost.lockfree library (647) * Added PionId class to replace dependency on the OSSP UUID library (515) * The Unix build scripts now auto-detect everything correctly (591) * Fixed copy methods for HTTPMessage, HTTPRequest & HTTPResponse (590) * Added setMaxContentLength() method to HTTPServer (589) * Added detailed documentation and screenshots for all Pion reactors (315) * A new MSI installer now automates installation of Pion on Windows (276) * Pion now runs as a service on Windows and logs to the OS Event Log (211, 284) * Updated the JSONCodec to use YAJL library version 1.0.5 (646) * Reduced the default stack size of threads in the start_pion script (570) * Created a new DatabaseInserter class based upon DBOR refactoring (612) * Replaced string storage in Events with reference-counting PionBlob (252) * DatabaseInserter support for indexed field mappings (605, 659) * DatabaseInserter support for unique index cache (658 * DatabaseInserter no longer stops the Reactor if database is busy (656) * Fixed various concurrency bugs in PionPerformanceTests (648) Version 2.0.10 (2009-06-29) =========================== * TransformReactor rules were sometimes updating the wrong term value (617) * Transform & Filter reactors did not allow empty string comparisons (615) * Setting a term value to an empty string now removes it from the event (625) * HTTPProtocol now checks X-Forwarded-For for client IP, if available (619) * Added proxy-ip, which is defined if an X-Forwarded-For header is found (619) * Fixed slow load of DatabaseOutputReactor UI when opened several times (632) Version 2.0.8 (2009-06-05) ========================== * ServiceManager shutdown was sometimes causing segmentation faults (597) * Updated DatabaseOutputReactor so that database writes are asynchronous (599) * Drastically improved the insert performance of SQLiteDatabase (600) * Fixed bug with "./configure --with-debug" failing on boost thread tests (598) Version 2.0.6 (2009-05-26) ========================== * Improved TransformReactor error handling for bad regular expressions (581) * Fixed UI bugs in IE that caused accordion grid contents to spill out (559) * UI login page no longer sends/displays password in browser URL field (580) * "Match All Comparisons" checkbox in FilterReactor UI was incorrect (576) * Added DebugMode flag to platform.xml for alternative testing behaviors (586) * HTTPParser exception thrown when Content-Length had leading whitespace (585) * Miscellaneous improvements to Windows MSVC build projects (564) Version 2.0.4 (2009-05-01) ========================== * Added a time zone offset feature to LogCodec (545) * Added the first user manual documentation for Pion (551) * Resolved SQLite linking problems on RHEL5 & OSX via log4cxx rebuild (547) * Fixed date/time data storage when using a SQLiteDatabase engine (526) * Fixed crashes due to NULL/empty event fields with SQLiteDatabase (550) * SQLiteDatabase now using _v2 calls and mutexes for better concurrency (548) * Added FullQuery and getMore functionality to Database classes (549) Version 1.2.6 (2009-04-03) ========================== * Added a urlencode configuration option to LogCodec field mappings (513) * Updated Webtrends log codec to use url-encoding for certain fields (441) Version 1.2.4 (2009-03-27) ========================== * New FissionReactor for splitting a single event into many (442, 457) * Added Atom & RSS Vocabularies, Codecs and examples (458, 459, 476, 487, 491) * LogOutputReactor now ignores events when their type does not match Codec (485) * HTTPProtocol now supports gzip/deflate decoding of payload content (465) * TransformReactor supports CSV import/export for lookup key-value pairs (453) * Updated ScriptReactor to work much better on Windows (440) * Added input and output feeds to the Reactor Connection grids (451) * Made XMLCodec more flexible & configurable for both input and ouput (455) * Vocabulary terms are now sorted in the TermSelectors & can filter types (447) * Fixed display of server errors in UI to escape HTML characters (479) * Fixed spurious events in/out reactor counters (484) * Added clickstream#content-type vocabulary term & support in HTTPProtocol (488) * Added DataDirectory to platform.xml, now default location for databases (519) * Improved OpenSSL initialization on Windows platforms (480) * Removed dependencies on sqlite since it is now embedded into platform (475) * HTTPParser dropping requests when TCP connection contained 304 responses (481) * Updated PionLockedQueue so that it now always keeps track of the size (469) Version 1.1.4 (2009-02-16) ========================== * New ScriptReactor (232) * TransformReactor -- refactored with all new features (385, 386, 424) * All new term selection tool for UI (359, 405, 95) * FilterReactor UI supports MatchAllValues (383) * TransformReactor supports MatchAllValues (384, 386) * Log parsing error no longer skips rest of the log file (311) * Build updated to Boost 1.36 & 1.37 (314, 270) * Overall speed improvement due to non-locking config changes (341, 145) * Fixed unit tests (419, 423) * Replace "filtering" selects with regular selects in UI (428) * Count and track errors in HTTPRequestSender (436) Version 1.0.12 (2009-02-10) =========================== * Added additional clickstream request and response time stamps (434) * Added support to HTTPProtocol for digest HTTP authentication (429) * Added support to HTTPProtocol for data center and end user times (433) * Added support to HTTPProtocol for various packet counters (430) Version 1.0.10 (2009-01-22) =========================== * Added new cs-ack-time and sc-ack-time clickstream vocabulary terms (410) * HTTPProtocol now populates the urn:vocab:clickstream#authuser term (411) * Added support to LogOutputReactor for rotation triggered by QueryService (88) * Fixed broken DatabaseOutputReactor UI that prevented mapping of fields (402) * Failures to backup configuration files will no longer throw exceptions (395) * Updated HTTPProtocol to recover from missing packets and other errors (407) * LogInputReactor was spawning additional threads after reading each file (417) * Refactored RuleChain class out from FilterReactor into platform library (414) * Updated bytes, cs-bytes and sc-bytes clickstream terms to be 64-bits (418) * Fixed occasional checkDatabaseOutputReactor unit test failures (215) * Added support and unit tests for maximum HTTP payload content sizes (399) * Updated HTTPParser to recover from missing packets and other errors (407) * TCPServer can now bind to privileged ports when running as setuid (522) * Fixed occasional crashes in pion-net unit tests on multi-core systems (528) Version 1.0.8 (2008-12-17) ========================== * FilterReactor now has "Match All Comparisons" (382) * TransformReactor supports full regex output formatting (380) * TransformReactor uses Replace Term instead of Add Term (380) * UI now XML escapes all fields, allowing for &<>'" characters (389,391) * DatabaseOutputReactor validates column names (388) * Renaming a workspace updates the configuration of its reactors (350) * MySQL test in ./configure is removed (348) * "make check" now has dependency on "make docs" (379) * TransformReactor has option to suppress delivering original if new event is created (380) * Build/make enhancements for docs Version 1.0.6 (2008-11-21) ========================== * Faster vocabulary pane loading * Update to Dojo 1.2.1 for UI (280) * Context menus now available on Firefox/MacOSX * Robot field in clickstream vocabulary (345) * SQLite engine refactored; configurability, read/write (271) * Database class reads SQL configuration from dbengines.xml (271) * Works with Safari 3.1 and earlier with debugging mode disabled (352) * Debugging mode is now off by default (352) * Now correctly destroying dialogs * DateTime now handled correctly in TransformReactor and FilterReactor * Reactor start/stop status persisted across shutdown (110) * Moving (visually) reactors no longer restarts reactors (342) * autoconf/autogen fixed for RHEL/CentOS < 5.0 (347) Version 1.0.4 (2008-10-17) ========================== * LogCodec supports configurable separators, terminators, c-style escapes * Database class has the stubs for supporting read values for a SELECT statement * Event class has copyValues(), set(), and write() members * A new Protocol configuration page * Optional fields for LogCodec * Tweaks to make IE work better * LogCodec UI changes to accomodate new functionality * HTTPProtocol has new content extraction * XML for codecs/dbs/reactors/connections can now be pasted in * HTTP protocol now stores request packets timestamp (#300) * Fixed make_binary.pl for Mac (#325) * PionLockedQueue::pop() fixed (#304) Version 1.0.2 (2008-09-26) ========================== * If LogInputReactor::readFromLog() catches an exception, it now adds the log file to the list of consumed files, so it doesn't keep trying to read it. * Replaced r667 with new patch that works for any field delimiter * Cache files for LogInputReactor are now written to the config directory instead of the log file directory. * Reverting changes made in revision 656 (in preparation for Dojo 1.2), because they don't work in IE. * Added support in LogInputReactor for optional 'tail -f' behavior when reading log files. * Added --version command line parameter to pion server executable * Added "EventsQueued" statistic to DatabaseOutputReactor::query() * Added 'tail -f' option in the LogInputReactor UI and did some refactoring. * Added Reactor context menu item to show the Reactor's configuration as raw XML. (The XML can be copied, but not changed.) * Fixed ReactionScheduler so that if io_service users throw it should no longer crash Pion * Updated query stats returned by LogInputReactor to include ConsumedLog and CurrentLog elements * Updated LogInputReactor to stop itself if it unable to write cache files to the input directory * Shift-double-clicking on a Reactor now gives you a dialog with the results of /query/reactors/. * Updated Reactor::query() so that default returns reactor statistics info Misc refactoring of reactor stats code * Added a Komodo project file for Pion UI code. * QueryService (Reactor/ReactionEngine) * Added QueueTimeout field in DatabaseOutputReactorDialog. * Added QueueTimeout parameter to DatabaseOutputReactor (default is 10 seconds) * Updated ServiceManager to send ascii text 500 server error responses * Added patch for LogInputReactor crashing when removed Version 0.6.0 (2008-08-29) ========================== * LogInputReactor keeps track of which logs it has consumed & how much (89) * LogInputReactor supports reading gzip and bzip2 log files natively (93) * Added "About" user interface page with license & third party libs (264) * Added MaxThreads and MultiThreadBranches ReactionEngine parameters (251) * Misc Vocabulary and Codec updates for managing clickstream traffic (202) * Fixed user interface for browser languages other than English (255) * Fixed bug with is-defined and is-not-defined Comparison types (275) * Fixed failures within the checkDatabaseOutputReactor unit test (215) * Fixed bug with the --disable-logging configure option breaking build (254) * Updated HTTPParser::parseCookieHeader() to be usable for char[] as well * Only HTML documentation is now build with Doxygen when using "make docs" * The boost.iostreams, gzip (zlib) and bzip2 libraries are now required Version 0.5.8 (2008-07-18) ========================== * Added new XML and JSON Codecs for event serialization (74, 104) * Added a new Transform Reactor for data cleansing, normalizing, etc. (105) * Added a new "Protocol" plugin type, for sniffing network traffic (182) * Fixed bug in regex comparisons that caused Pion to crash (212) * Regex comparisons no longer require the entire value to match (214) * Updated LogInputReactor's JustOne feature so that it handles restarts (216) * UI dialog boxes now provide scrollbars if they cannot fit on Desktop (219) * Fixed crash caused when Reactor connections were removed at runtime (238) * Updated UI so that it better auto-detects which plugins are available (244) * Pion now listens to port 8888, and SSL is disabled (126, 218) * Added support to the UI for the Safari web browser (165) * Added --with-boost-extension option to Unix configure script (217) * Misc updates to get things building on gcc 4.2 and gcc 4.3 (241) * See also the Pion Network Library ChangeLog for 0.5.8 Version 0.5.6 (2008-05-02) ========================== * Added support for user authentication and user management in the UI * Added support for adding, changing and deleting Vocabularies in the UI * Updated UI to support the Internet Explorer 7; Safari is still broken * Improved performance of Event memory operations & ReactionEngine scheduling * Made SQLite external: use --with-sqlite to enable support for Unix builds * Fixed compatibility problems with RHEL5 that was causing unit tests to fail * Added "JustOne" parameter to LogInputReactor for performance/load testing * Vocabulary locks in the UI should now correctly prevent any modifications * Fixed some bugs with the display of Comparisons in FilterReactors dialogs * Fixed a bug that displayed non-existing connections to deleted Reactors * Fixed problems with using multiple Reactor workspaces in the UI * Deleting a Reactor workspace in the UI now deletes all Reactors it contains * Updated JavaScript to use Dojo 1.1.1 and optimized UI code for size/speed * Added a "stocks" vocabulary and code, to server as another metadata example * Added "make docs" Unix build option that uses Doxygen to build all the docs * Unix build scripts now support dynamic versions of the Boost.UnitTest libs * Boost 1.35.0 or later is now REQUIRED (it includes ASIO); see README.boost Version 0.5.4 (2008-03-07) ========================== * First functional alpha preview release