
Release Notes - Apache Eagle 0.4.0 (incubating)

** Highlights **
    * JBDC Metadata Storage Extension
    * Topology management in remote mode including start/stop/status operations
    * Auditlogparser for MapR's audit log
    * Oozie auditlog integration for Oozie security monitoring
    * Add applicaiton "maprFSAuditLog"
    * Refactor bin/eagle-sandbox-starter.sh to make it easier to use

** New Feature
    * [EAGLE-169] - Dynamic security event correlation in Eagle
    * [EAGLE-203] - Metrics feature support merge chart
    * [EAGLE-225] - Create eagle bootstrap scripts for examples 
    * [EAGLE-226] - Refactor Eagle scripts to avoid heavily depending on Hortonworks Sandbox
    * [EAGLE-232] - Create local Kafka/Zookeeper/Storm runner tools for quickstart examples and add related scripts to start/top zk/kafka
    * [EAGLE-238] - Support scheduling topology in local mode including start/stop/status operations
    * [EAGLE-266] - Integrate MkDocs for eagle-docs: http://www.mkdocs.org/
    * [EAGLE-271] - Topology management in remote mode including start/stop/status operations
    * [EAGLE-272] - Support topology management in UI including creating topology and monitoring status
    * [EAGLE-282] - Auditlogparser for MapR's audit log 
    * [EAGLE-284] - Connect to MapR's CLDB service
    * [EAGLE-298] - Oozie auditlog integration for Oozie security monitoring
    * [EAGLE-307] - Add applicaiton "maprFSAuditLog" 

** Improvement
    * [EAGLE-103] - add comments to readme to tell users: currently, eagle is tested under jdk1.7.x, may have compile error with jdk1.8.x
    * [EAGLE-182] - Replace Legacy "dataSource" field with "application" in UI request
    * [EAGLE-185] - UI create cache after building
    * [EAGLE-190] - JBDC Metadata Storage Extension
    * [EAGLE-193] - UI metric dashboard support sortable
    * [EAGLE-194] - UI show exception alert if service error
    * [EAGLE-195] - policy metric display with interval of 5 min or customized interval
    * [EAGLE-196] - eagle-topology.sh should have jar file path as parameter
    * [EAGLE-201] - Change maven group name to org.apache.eagle instead of eagle
    * [EAGLE-205] - Metric dashboard support multi metrics
    * [EAGLE-207] - Management page add tips
    * [EAGLE-208] - UI metric dashboard should support order & rename
    * [EAGLE-216] - Added RM Policy and GC Policies in Resource
    * [EAGLE-223] - Notification plugin to enable multiple instance of given alert plugin 
    * [EAGLE-237] - Add development tools for quickly starting zookeeper, kafka and webservice without depending on sandbox
    * [EAGLE-248] - Rename directories according industrial common sense
    * [EAGLE-287] - Make EagleStore as the default notification method
    * [EAGLE-288] - Need to add "Alert De-Dup Interval" setting in "PolicyObjectBase" 
    * [EAGLE-295] - Add configuration value to enable application Manager
    * [EAGLE-303] - Refactor message format in the email template.
    * [EAGLE-305] - Add a config tip to the document for "Application Manager Tutorial" - setting "appCommandLoaderEnabled=true"
    * [EAGLE-306] - add metadata for showing "Topology" tab in left-nav by default
    * [EAGLE-315] - Add tutorial for mapr audit log monitoring
    * [EAGLE-316] - Feature topology should not be added into an application
    * [EAGLE-339] - Create HBase tables if not exists 
    * [EAGLE-340] - refactor bin/eagle-sandbox-starter.sh to make it easier to use 

** Bug
    * [EAGLE-8] - In eagle-check-env.sh shell , Itbad way to check kafka installation
    * [EAGLE-18] - Follow up with infra about website creation
    * [EAGLE-157] - policy metric should be refreshed every minute
    * [EAGLE-171] - Policy listing table is messed up by too long policy name.
    * [EAGLE-172] - Scripting string is allowed to create policy rules.
    * [EAGLE-173] - Mark/Un-mark a sensitivity type does not sync status mark in the table list.
    * [EAGLE-176] - Metric dashboard UI keep api refresh after page switch
    * [EAGLE-192] - Uncaught ReferenceError: damControllers is not defined (doc.js:7628)
    * [EAGLE-200] - GC Log Monitoring  Not Working
    * [EAGLE-210] - UI application group not display correctly
    * [EAGLE-211] - Fix sometime unit test failing at TestSiddhiStateSnapshotAndRestore
    * [EAGLE-212] - Fix AlertDataSourceEntity Bug in Hive web
    * [EAGLE-213] - Updates fail for MySql  
    * [EAGLE-214] - Policy edit page need auto switch application
    * [EAGLE-217] - Fix unstable unit tests about state snapshot management
    * [EAGLE-224] - Column not found to EAGLE_METRIC when using JDBC
    * [EAGLE-227] - java.lang.NoClassDefFoundError: org/apache/commons/pool/impl/CursorableLinkedList$ListIter
    * [EAGLE-228] - org.apache.eagle.notification.plugin.NotificationPluginManagerImpl - fail invoking plugin's onAlert, continue  java.lang.NullPointerException: null
    * [EAGLE-229] - java.lang.IncompatibleClassChangeError: class net.sf.extcos.internal.JavaResourceAccessor$AnnotatedClassVisitor has interface org.objectweb.asm.ClassVisitor as super class
    * [EAGLE-230] - Exception in persisting entitiesService side exception: org.codehaus.jackson.map.JsonMappingException: Conflicting setter definitions for property "alertContext"
    * [EAGLE-235] - org.codehaus.jackson.map.JsonMappingException: Conflicting setter definitions for property "alertContext"
    * [EAGLE-239] - Alert list and details are not correctly displayed
    * [EAGLE-240] - java.lang.ArrayIndexOutOfBoundsException thrown by MetricKeyCodeDecoder
    * [EAGLE-242] -  Import the notification plugin metadata when initializing
    * [EAGLE-254] - HdfsAuditLog topology keeps alerting for one piece of log
    * [EAGLE-258] - Automatically add apache-github and apache-git in pr tools
    * [EAGLE-269] - Comparisons between 'LONG VARCHAR (UCS_BASIC)' and 'LONG VARCHAR (UCS_BASIC)' are not supported
    * [EAGLE-270] - JDBC: Create table fail for some of the tables
    * [EAGLE-273] -  Issue with creating MySql tables , only 14 were created out of 24, reason being varchar(30000) for multiple columns lead to exceeding the maximum row size of 65,535 bytes.
    * [EAGLE-274] - 2016-04-15 15:50:20 b.s.d.worker [ERROR] Error on initialization of server mk-worker java.lang.RuntimeException: java.lang.ClassNotFoundException: org.slf4j.impl.Log4jLoggerAdapter
    * [EAGLE-275] - Eagle email alert bug: $elem["dataSource"] Alert Detected
    * [EAGLE-291] - JDBC: Update transactions fail in PostgreSQL
    * [EAGLE-292] - Updated hbase policy failed: Data too long for column 'policyDef' when using mysql storage
    * [EAGLE-294] - If a policy metadata field is not set, null attributes can not be able to add into input stream for SiddhiCEP 
    * [EAGLE-297] - Email with authentication can not be validated and sent out.
    * [EAGLE-300] - Disable spring debug log by default in webservice
    * [EAGLE-301] - Tables omitted for using mysql
    * [EAGLE-304] - Enable Advanced dedup configuration in policy definition 
    * [EAGLE-308] - Consistency issue: deleting a topology doesn't delete existing topology-execution bound to it.
    * [EAGLE-310] - already existing active topology status not displayed when a deleted topology+execution re-created with same name
    * [EAGLE-311] - operations of items listed on topology-management monitoring page require buffering loading approaches
    * [EAGLE-313] - normally stopped topology-execution shows error message in the description column
    * [EAGLE-319] - java.sql.SQLSyntaxErrorException caught when querying from table topologyExecutionEntity
    * [EAGLE-321] - java.lang.NoSuchMethodError: com.google.protobuf.LazyStringList.getUnmodifiableView
    * [EAGLE-326] - typo found in eagle documentation
    * [EAGLE-327] - java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer
    * [EAGLE-330] - Hive ql.Parser can't parser a hive query sql with keywords
    * [EAGLE-338] - fix topology-assembly build issue because of module name change
    * [EAGLE-346] - ClassNotFoundException thrown out when topology is executing
    * [EAGLE-355] - UI advanced policy expression can't parse
    * [EAGLE-356] - Fix Authentication problem to query resource manager web service

** Task
    * [EAGLE-73] - Put docker steps to site tutorial
    * [EAGLE-221] - Support cusomized notification type in policy editor
    * [EAGLE-222] - Documentation for eagle alert plugin mechnism
    * [EAGLE-280] - Update logstash-kafka-conf.md
    * [EAGLE-309] - Add code formatter template

** Sub-task
    * [EAGLE-219] - Use PUT method for updating request when possible in front-end.



Release Notes - Apache Eagle 0.3.1 (incubating)

** Highlights **
    * Hadoop JMX metric monitoring.
    * NameNode log monitoring for GC alerts.
    * Eagle UI Modularization (With new customizable UI options).
    * Generic Notification Plugin Framework for integrating alerts with various third parties.
    * Docker Image for Eagle.
    * Provide analytic DSL support.

** New Feature
    * [EAGLE-15] - HBase auditlog integration for HBase security monitoring
    * [EAGLE-17] - HDFS security log integration for HDFS security monitoring
    * [EAGLE-46] - track the work before moving code to apache site
    * [EAGLE-47] - Ability to audit who made changes to Eagle policies
    * [EAGLE-53] - Docker Image for Eagle
    * [EAGLE-79] - Provide analytic DSL support
    * [EAGLE-81] - Notification Plugin Framework
    * [EAGLE-100] - provide tools to collect hadoop jmx metrics
    * [EAGLE-122] - Create a generic notification plugin for integrating alerts

** Bug
    * [EAGLE-4] - configure parallelism with bolt/spout friendly name
    * [EAGLE-6] - group-by user between bolts and spouts for hdfs/hive audit log monitoring
    * [EAGLE-10] - Bad way to check kafka installation in eagle-check-env.sh
    * [EAGLE-28] - Znode root should be configurable.
    * [EAGLE-30] - Topology run in storm local mode should not terminate after Integer.MAX_VALUE milliseconds
    * [EAGLE-41] - Eagle policy engine supports customizable ExceptionHandler instead of using FetalExceptionHandler
    * [EAGLE-48] - Alert message time is wrong in some cases
    * [EAGLE-56] - Building failed for artifact jdk.tools:jdk.tools:jar:1.7 not found
    * [EAGLE-69] - http 404 bug in accessing http://localhost:9099/eagle-service
    * [EAGLE-70] - Fix Goovy into Groovy in pom
    * [EAGLE-74] - in sandbox setup, change package name from eagle. to org.apache.eagle
    * [EAGLE-76] - Disable creating newStream for common user role
    * [EAGLE-85] - Fix unit test failure.
    * [EAGLE-94] - fix the bug of eagle docker in Mac
    * [EAGLE-95] - DAM HDFS topology fails to start, if there is invalid policy.
    * [EAGLE-104] - Fix the unit test TestHDFSSecuritylogParser
    * [EAGLE-118] - Siddhi contains is neither a function extension nor an aggregated attribute extension
    * [EAGLE-119] - fix unit testing bugs
    * [EAGLE-125] - Add LICENSE in eagle external
    * [EAGLE-128] - Fix unit test failure
    * [EAGLE-141] - fix some unit testing exception which is thrown within annoymous class
    * [EAGLE-142] - Replace AlertDefinitionDAOImpl with PolicyDefinitionDAOImpl
    * [EAGLE-148] - Master build failure due to siddhi ql test
    * [EAGLE-163] - HDFS topology not working.

** Improvement
    * [EAGLE-7] - expose storm config as individual eagle topology config
    * [EAGLE-13] - Eagle machine learning no longer needs hourly aggregation
    * [EAGLE-14] - Re-assemble high level hdfs commands for better policy
    * [EAGLE-24] - Load skew issue when partition by user
    * [EAGLE-29] - Update Alert page for display more infomation
    * [EAGLE-38] - reminder for Alerts in the UI
    * [EAGLE-40] - Policy detail page support alert list display
    * [EAGLE-42] - Customized partition support for Kafka spout
    * [EAGLE-44] - previous page should be reloaded after login session is timed out and re-login
    * [EAGLE-50] - Eagle internal metric framework
    * [EAGLE-52] - Eagle framework should support custom group by function in addition to group by fields
    * [EAGLE-55] - JobCompletedConfigServiceURLBuilderImpl in hive running spout miss anonymous paramter
    * [EAGLE-58] - Enhance Hive query parse model
    * [EAGLE-62] - Add jshint for front end UI building
    * [EAGLE-66] - Eagle TypeSafe Stream Processing DSL
    * [EAGLE-80] - remove httpd directory
    * [EAGLE-86] - Rewrite HDFSAuditLogParser to a non-regular expression version
    * [EAGLE-88] - Eagle web-service should have status url
    * [EAGLE-99] - policy distribution statistics to be printed in log
    * [EAGLE-106] - UI use same chart component
    * [EAGLE-107] - Build Status Icon has been enabled for our github repo, please apply it to readme.md
    * [EAGLE-108] - a tool tests performace between mongodb3.0 and couchDB1.6.1
    * [EAGLE-109] - add hdfs related ports mapping from docker container to host
    * [EAGLE-112] - Should support sum aggregation in front end for slide window function
    * [EAGLE-114] - Enable RAT check and fix missing license headers
    * [EAGLE-138] - Extend JMX Collector to support "hadoop.namenode.JournalTransaction"
    * [EAGLE-143] - Create Eagle release 0.3.1
    * [EAGLE-149] - Enable hadoop jmx metric cases
    * [EAGLE-152] - hadoop-metric monitoring automation script
    * [EAGLE-158] - Disable org.apache.eagle.datastream.EagleTuple
    * [EAGLE-166] - Enhance metric collector script to extract hadoop ha status as metric

** Task
    * [EAGLE-83] - Integrate Jenkins with GitHub for checking pull requests
    * [EAGLE-84] - Create scripts for merging PRs automatically
    * [EAGLE-102] - ask jenkins-admin's help to setup "Embeddable Build Status Plugin" and make the status visible in Readme.md of incubator-eagle.git
    * [EAGLE-117] - update Build Status Link and make it point to CI job building upon master
    * [EAGLE-131] - make eagle main CI build pass
    * [EAGLE-136] - Setup hadoop metric application
    * [EAGLE-154] - hadoop-metric monitoring sandbox starter script
    * [EAGLE-164] - Tutorial for setting up the development environment on mac
    * [EAGLE-165] - Add more jmx metric cases

** Sub-task
    * [EAGLE-51] - Clean and manage external licensed static resource dependencies in eagle web with npm and grunt
    * [EAGLE-60] - HBase sensitivity UI
    * [EAGLE-63] - Improve docker image for quick preview
    * [EAGLE-64] - Push eagle docker image to docker hub
    * [EAGLE-65] - Eagle docker consistent port mapping
    * [EAGLE-71] - Fix eagle docker run command
    * [EAGLE-75] - Leverage dropwizard metrics for generating Eagle Topology and DataSource Metrics
    * [EAGLE-78] - eagle-lib.sh script not work for mac osx and windows
    * [EAGLE-130] - Eagle Pipeline DSL: Parser, Compiler, Runner
    * [EAGLE-140] - Eagle Pipeline Package and Script



Release Notes - Apache Eagle 0.3.0 (incubating)

** Highlights **
    * Hadoop JMX metric monitoring.
    * NameNode log monitoring for GC alerts.
    * Eagle UI Modularization (With new customizable UI options).
    * Generic Notification Plugin Framework for integrating alerts with various third parties.
    * Docker Image for Eagle.
    * Provide analytic DSL support.

** New Feature
    * [EAGLE-15] - HBase auditlog integration for HBase security monitoring
    * [EAGLE-17] - HDFS security log integration for HDFS security monitoring
    * [EAGLE-46] - track the work before moving code to apache site
    * [EAGLE-47] - Ability to audit who made changes to Eagle policies
    * [EAGLE-53] - Docker Image for Eagle
    * [EAGLE-79] - Provide analytic DSL support
    * [EAGLE-81] - Notification Plugin Framework
    * [EAGLE-100] - provide tools to collect hadoop jmx metrics
    * [EAGLE-122] - Create a generic notification plugin for integrating alerts

** Bug
    * [EAGLE-4] - configure parallelism with bolt/spout friendly name
    * [EAGLE-6] - group-by user between bolts and spouts for hdfs/hive audit log monitoring
    * [EAGLE-10] - Bad way to check kafka installation in eagle-check-env.sh
    * [EAGLE-28] - Znode root should be configurable.
    * [EAGLE-30] - Topology run in storm local mode should not terminate after Integer.MAX_VALUE milliseconds
    * [EAGLE-41] - Eagle policy engine supports customizable ExceptionHandler instead of using FetalExceptionHandler
    * [EAGLE-48] - Alert message time is wrong in some cases
    * [EAGLE-56] - Building failed for artifact jdk.tools:jdk.tools:jar:1.7 not found
    * [EAGLE-69] - http 404 bug in accessing http://localhost:9099/eagle-service
    * [EAGLE-70] - Fix Goovy into Groovy in pom
    * [EAGLE-74] - in sandbox setup, change package name from eagle. to org.apache.eagle
    * [EAGLE-76] - Disable creating newStream for common user role
    * [EAGLE-85] - Fix unit test failure.
    * [EAGLE-94] - fix the bug of eagle docker in Mac
    * [EAGLE-95] - DAM HDFS topology fails to start, if there is invalid policy.
    * [EAGLE-104] - Fix the unit test TestHDFSSecuritylogParser
    * [EAGLE-118] - Siddhi contains is neither a function extension nor an aggregated attribute extension
    * [EAGLE-119] - fix unit testing bugs
    * [EAGLE-125] - Add LICENSE in eagle external
    * [EAGLE-128] - Fix unit test failure
    * [EAGLE-141] - fix some unit testing exception which is thrown within annoymous class
    * [EAGLE-142] - Replace AlertDefinitionDAOImpl with PolicyDefinitionDAOImpl
    * [EAGLE-148] - Master build failure due to siddhi ql test
    * [EAGLE-163] - HDFS topology not working.

** Improvement
    * [EAGLE-7] - expose storm config as individual eagle topology config
    * [EAGLE-13] - Eagle machine learning no longer needs hourly aggregation
    * [EAGLE-14] - Re-assemble high level hdfs commands for better policy
    * [EAGLE-24] - Load skew issue when partition by user
    * [EAGLE-29] - Update Alert page for display more infomation
    * [EAGLE-38] - reminder for Alerts in the UI
    * [EAGLE-40] - Policy detail page support alert list display
    * [EAGLE-42] - Customized partition support for Kafka spout
    * [EAGLE-44] - previous page should be reloaded after login session is timed out and re-login
    * [EAGLE-50] - Eagle internal metric framework
    * [EAGLE-52] - Eagle framework should support custom group by function in addition to group by fields
    * [EAGLE-55] - JobCompletedConfigServiceURLBuilderImpl in hive running spout miss anonymous paramter
    * [EAGLE-58] - Enhance Hive query parse model
    * [EAGLE-62] - Add jshint for front end UI building
    * [EAGLE-66] - Eagle TypeSafe Stream Processing DSL
    * [EAGLE-80] - remove httpd directory
    * [EAGLE-86] - Rewrite HDFSAuditLogParser to a non-regular expression version
    * [EAGLE-88] - Eagle web-service should have status url
    * [EAGLE-99] - policy distribution statistics to be printed in log
    * [EAGLE-106] - UI use same chart component
    * [EAGLE-107] - Build Status Icon has been enabled for our github repo, please apply it to readme.md
    * [EAGLE-108] - a tool tests performace between mongodb3.0 and couchDB1.6.1
    * [EAGLE-109] - add hdfs related ports mapping from docker container to host
    * [EAGLE-112] - Should support sum aggregation in front end for slide window function
    * [EAGLE-114] - Enable RAT check and fix missing license headers
    * [EAGLE-138] - Extend JMX Collector to support "hadoop.namenode.JournalTransaction"
    * [EAGLE-143] - Create Eagle release 0.3.0
    * [EAGLE-149] - Enable hadoop jmx metric cases
    * [EAGLE-152] - hadoop-metric monitoring automation script
    * [EAGLE-158] - Disable org.apache.eagle.datastream.EagleTuple
    * [EAGLE-166] - Enhance metric collector script to extract hadoop ha status as metric

** Task
    * [EAGLE-83] - Integrate Jenkins with GitHub for checking pull requests
    * [EAGLE-84] - Create scripts for merging PRs automatically
    * [EAGLE-102] - ask jenkins-admin's help to setup "Embeddable Build Status Plugin" and make the status visible in Readme.md of incubator-eagle.git
    * [EAGLE-117] - update Build Status Link and make it point to CI job building upon master
    * [EAGLE-131] - make eagle main CI build pass
    * [EAGLE-136] - Setup hadoop metric application
    * [EAGLE-154] - hadoop-metric monitoring sandbox starter script
    * [EAGLE-164] - Tutorial for setting up the development environment on mac
    * [EAGLE-165] - Add more jmx metric cases

** Sub-task
    * [EAGLE-51] - Clean and manage external licensed static resource dependencies in eagle web with npm and grunt
    * [EAGLE-60] - HBase sensitivity UI
    * [EAGLE-63] - Improve docker image for quick preview
    * [EAGLE-64] - Push eagle docker image to docker hub
    * [EAGLE-65] - Eagle docker consistent port mapping
    * [EAGLE-71] - Fix eagle docker run command
    * [EAGLE-75] - Leverage dropwizard metrics for generating Eagle Topology and DataSource Metrics
    * [EAGLE-78] - eagle-lib.sh script not work for mac osx and windows
    * [EAGLE-130] - Eagle Pipeline DSL: Parser, Compiler, Runner
    * [EAGLE-140] - Eagle Pipeline Package and Script

