CHANGES
=======

1.1.22
------

* Monasca VMWare vCenter plugin to monitor ESX clusters
* Changing service name Baremetal to baremetal

1.1.21
------

* Porting Supervisord check from DataDog
* Fix disk rollup metric names
* Update Agent Requirements.txt
* Add the ability to grab processes checks by user

1.1.20
------

* Remove vendor-specific paths on LBaaS agent executables
* neutron-l2gateway-agent needs monitoring
* Add process checks for monasca API and Persister
* Display collection time for each check
* FIX detection plugin for handling None object
* Drop MANIFEST.in - it's not needed with PBR
* py26 is no longer supported by Infra's CI
* Add ability to run ping tests against VMs
* FIX debug message to support multi-byte name
* Adding liberty versions of oslo to requirements.txt
* Change last of the URLs from stackforge to openstack
* Change the detailed process check
* Switch Agent thread count test to global threshold
* Improve output of host_alive plugin's ping tests
* Delete python bytecode before every test run
* Add Designate process detection
* Add missing keystone process name
* Make Apache detection work on CentOS
* Include existing system PATH in nagios_wrapper
* Fix the value meta for http_status metrics
* Expire old VMs from libvirt metrics cache
* Replace host_alive test with hypervisor VM states
* Fix use of collection frequency
* Speed up libvirt cache writes, fix corruption
* Add infomation for RabbitMQ Checks Description of the metrics for "RabbitMQ Checks" in the Monasca document is added
* Detection plugin for Barbican service
* Allow overriding values using args in ServicePlugin
* Allow config file 'instances' to be empty
* Document libvirt ping check limitations
* libvirt detection plugin adds bad instances
* Handle additional server options in ntp.conf

1.1.19
------

* Fix kafka collection
* Make process check error messages more accurate
* Add detection args to the apache plugin
* Add scale_group dimension to libvirt plug-in
* Pass in all credentials to monclient for monclient token renewal
* Support the format of crash dump directory for RHEL7.1 and CentOS7.1
* Add Plugins descriptions for Monasca document
* Update .gitreview for new namespace
* Speed up kafka plugin
* Add service name to watch process calls in detection

1.1.18
------

* Adding additional process to Cue detection plugin
* Add setup option to skip all service/user config
* Libvirt nova: use internalURL endpoint, fix entry
* Do not collect disk stats on cdrom

1.1.17
------

* The metrics table for "Host Alive Checks" is missing
* Changed the way in which attrs were checked
* Add service dimension to monasca.emit_time_sec
* Removed limits on rabbitmq metric collection
* Rabbitmq reporting too many metrics
* Detect and correct invalid libvirt plugin caches
* Fix a description for "use_keystone" in the "http_checks.yaml"
* Add flavor caching to libvirt
* Add Plugins descriptions for Monasca document
* Speed up process check
* Change remaining megabytes to Mbytes

1.1.16
------

* Fixed pattern matching
* Fix statsd daemon
* Added service dimension to internal agent metrics
* Added service key to some HA proxy metrics
* Fix typo
* Accept Numerical Password
* Ignore negative libvirt samples and log for further investigation
* Change to a Dynamic Whitelist of Persister Metrics
* ADD description about MariaDB support and metrics semantics in "MySQL Checks"
* Unify unit expression for Monasca description
* Fix unit expression for Monasca description
* Fix Unit of Monasca document
* Limit libvirt Nova calls to the local compute node
* Modifed http_check to init keystone clients and re-use
* Add options to limit certain metrics
* Treat detection of processes as a string not as a list of arguments
* Adds ceph service detection plugin
* Truncate Nagios detail output to <2048 characters
* Update component names for monasca
* Adding detection plugin for Trove
* Reduce nova calls when rebuilding libvirt instance cache
* Add Ironic Service detection plugin
* CINDER-65 cinder monitoring

1.1.15
------

* Fixing oslo.serialization requirement
* Allow apostrophes in dimension names and values
* Adding timeout parameter to client initialization
* Don't fail when /etc/monasca/api-config.yml is not found
* Adding stricter requirements
* Added process checks for Vertica and InfluxDB

1.1.14
------

* add support for (user-) domain_id/name
* Remove watchdog from the agent
* FIX the log message for VMs in the probation period
* Fixed default process metrics
* Accept Unicode in the Aggregator
* Add aggregator checks for the collecter to match the api
* Updating unit tests
* Updating unit tests
* Add VM memory metrics to libvirt plugin
* Exclude the tap device from the default list for the Network checks
* Fix libvirt plugin bug for newly created VMs
* Differentiate heat-api from heat-api-* services
* Fix for reading partition number from kafka
* Fixing keystone singleton problem
* Make the Config class be a singleton
* Allow the kafka consumer to use arguments that specify consumers
* FIX the judge condition for "device_blacklist_re" of Disk Checks
* Add process monitoring for LBaaS agents
* FIX apache checks
* Adding detection plugin for Cue
* Strip extra whitespace found in /etc/haproxy/haproxy.cfg

1.1.12
------

* Fix some circular imports
* Fix for multiple hostnames and the host_alive plugin
* Normalize the observer hostname
* Fixing flake8 errors now that tox is working again
* Keep the full url when choosing a non-localhost port
* Handle the situation where detection plugin args is a dict

1.1.11
------

* ovsvapp process name changed impacting monasca detection plugin
* Drop target_host and just set it to the hostname for host_alive plugin
* Add reasonable default timeouts for host_alive
* Minor service plugin code cleanup
* Add information for Zookeeper checks
* Clean up check_mk_local plugin
* Reduce the amount of metrics coming from haproxy in the default case
* Remove pylint from the dependencies
* Add infomation for Kafka Checks
* Updated the document for Apache Web Server Checks
* Allow a comma separated list of hosts for host_alive detection plugin
* Filtering bad metrics in the aggregator
* Added process openvswitch-ovsdb for monitoring and modified the process name from service name. Modified the group name
* Mitigates job_status dict change during iteration
* Ensure libvirt's hostnames are used by collector
* Added the ability to remove configuration and did various cleanup
* psutil 3.1+ is broken
* This detection plugin will monitor OVSvApp daemons as part of OVSvApp service VM functionality for ESX compute host.Removed the logging process
* Added dry run mode to monasca-setup
* Skip processes that have disappeared since the loop begun
* Add heat service detection plugin
* + elasticsearch.thread_pool.<pool>.rejected metrics
* VM up/down status metrics, other libvirt changes

1.1.10
------

* Log and ignore vms not known to nova
* Ensure password field is valid yaml
* add support for (user-) domain_id/name
* Compare flavors as lower case
* args should be optional
* Corrected process name in keystone plugin
* Add documentation for the crash check plugin
* Added an haproxy detection plugin

1.1.9
-----

* Add a detection plugin for the crash check plugin
* Cleanup the rabbitmq detection plugin and add parsing of arguments
* Be more explicit about which keystone processes to watch
* Documentation and all service_plugins get disable_http_check functionality
* Remove value-meta checking when queuing metrics
* Change metric_type to a metric class for the aggregator
* Making sure ntp does not point to localhost
* Added back in the libvirt metrics to the docs
* Check for local crash dumps
* Add correct checks_d path before attempting to load modules
* Lower default collection time from 60 seconds to 30
* Update search pattern for Keystone setup plugin
* Allow hostname set by a plugin in dimensions to be used in a metric
* Create dropwizard plugin for collecting metrics via http
* Change service plugin to choose an alternate ip if needed
* Exclude a number of network devices from the default config
* Allow additional customization of HttpCheck
* Add cinder-backup to the list of services monitored
* Fix the ntp and postfix detection bugs
* Clean up metric pipline

1.1.8
-----

* Add l3-agent to process checks in neutron plugin
* Reduced kafka metrics in the default case

1.1.7
-----

* Add the args parameter
* Add wait time to refresh tokens

1.1.6
-----

* Refactors swift metrics into separate check
* Misc doc fixes
* Fix network excluded interfaces check
* Added disable_http_check option to the nova detection plugin
* Save last_check_data before return on nagios check
* Only setup the http check for machines with neutron-server
* mysql plugin fix
* Change the default log level to WARN
* Removed swift diag commands that aren't in the standard swift deploy
* Fix libvirt id lookup

1.1.5
-----

* Add dimensions support to the argument based detection plugins

1.1.4
-----

* Detect the port of the api before setting up an http check
* Better handling of an invalid zookeeper path in the kafka plugin
* Warn when detection fails for a specificly called out plugin
* Cleaned up detection of Monasca components

1.1.3
-----

* Fixed detection plugins that aren't using the parent init

1.1.2
-----

* Added host alive and http_check plugins and detection_args
* Allow custom keystone configuration
* Fix histogram list construction
* Added name to the detection plugin example

1.1.1
-----

* Add Agent plugins for Check_MK and MK_Livestatus
* Change the default agent user to mon-agent
* Make sure the gid is detected after it is created

1.1.0
-----

* Modify the agent and setup to accept custom plugins
* Always restart monasca agent even on clean exit
* Updated merge that avoid duplicating named instances in a config
* Improve logging for process check
* Fixes from Craig I missed in the first round
* Docs to describe customizations. Added readthedocs config

2015.1
------

* Added the ability to just detect/setup a subset of plugins

1.0.30
------

* Added a systemd service provider

1.0.29
------

* Changes to enable an install via a virtual env
* Suppress nagios_wrapper valueMeta for empty detail
* Add aggregate metrics to libvirt
* Re-sync Agent Collector's virt dir with Ceilometer

1.0.28
------

* Fix in-place operation on reset values
* Exception wrapper to handle type errors
* Adds region option to libvirt plugin config
* Seggregates diagnostics in swift detection plugin
* Improve logging for nagios_wrapper failures
* Fix the documentation for emit_time_sec

1.0.27
------

* Fixes monasca collector erroring out
* Added additional core related cpu and aggregated disk metrics
* Adding value_meta to certain metrics
* Default the agent to a 1 minute collection time
* Add metric_name field to nagios_wrapper
* Incorrect platform check fix

1.0.26
------

* Update default filesystems ignored by disk check
* Add the --system_only option to monasca-setup
* Devstack compatibility updates for libvirt

1.0.25
------

* Fixing issue with disk metrics

1.0.24
------

* Fixes keystone endpoint check token failure
* Added a sleep between stop/start to allow stop to fully complete
* Set the dimension element to an empty dict initially

1.0.23
------

* Changes to restore python 2.6 support
* Fixed host_alive doc to note the name requirement
* Use a system configured ntp server if found for ntp checks
* Conversion to milliseconds

1.0.22
------

* Added more specific error messages when messages need to be queued for tha API
* Converted the agent config file to yaml to match the plugin config files
* Removing subprocess call from system metrics classes
* Added a config file for documentation generation using Markdown and readthedocs.org

1.0.21
------

* Removed the monasca_statsd_agregator_interval.  This was related to the normalize functionality that was removed in the past and was causing errors in the Histogram and Counter calculations in statsd metrics
* Fixed issue with the flush interval
* Various fixes to make it easier to run in diverse environments
* Update all plugins to handle dimensions correctly
* Added swift and ntp checks and more automatic detection
* Fixing issue with detection of the Keystone openstack process
* Fix kafka_consumer detection plugin for localhost
* Modifications to accommodate for python 2.6
* Minor cleanup to the detection of openstack changes
* Fixing monasca-agent check and check_all

1.0.20
------

* Remove emit_time from the collector and put it into the forwarder
* Fixing rate metrics

1.0.19
------

* Adding apache web server monitoring for OpenStack
* Moved to using psutil for some system metrics
* Changed it so you have to explicitly choose the detailed process metrics
* Rewrote config processing to simplify logic

1.0.18
------

* Bug fixes for http_check using keystone and rabbitmq

1.0.17
------

* Removed the BucketGauge class as it is not used anymore
* Add configuration for system metrics
* Updated dimension processing for service and component
* Clarify Libvirt documentation
* Remove functionality that sends 0 values when counters don't report
* Various fixes and code cleanup related to monasca statsd

1.0.16
------

* Fixed a couple of issues with the monasca-statsd process startup and logging

1.0.15
------

* Renaming agent packages to reflect monasca
* Fixed perc calculations to be 0->100 rather than < 1
* Fixed issue with agent startup if Keystone is down
* Fix detection of Zookeeper in monasca-setup
* Added annotated example config for libvirt plugin
* Adding check for required dependencies in setup

1.0.14
------

* Correct number of return values from _load_conf

1.0.13
------

* Remove IP address from shared storage device name

1.0.12
------

* Agent documentation updates
* Add the ability to amplify metric payloads

1.0.11
------

* Removing dependency on hard-coded version file
* Revert change in libvirt plugin identity API ver
* Fixing restart issue when monasca-setup is re-run
* Remove obsolete config options in libvirt plugin
* Improved error handling in kafka_consumer
* Fixing issue with dimensions in aggregator

1.0.10
------

* Added --dimensions to monasca-setup
* Updating agent keystone authentication
* Closes-Bug: Calling update in aggregator.py does not return any value. Updated to the correct way of calling it

1.0.9
-----

* Updating metrics names and dimensions to be consistent

1.0.8
-----

* Bump version to 1.0.8
* Fix runaway threads in kafka_consumer agent plugin

1.0.7
-----

* Add support for VM monitoring
* Fixing issue with API reconnection
* Fixed mon-api false positive
* Fix kafka_consumer detection plugin
* Use FQDN instead of short hostname in all metrics
* Fix detection and operation of Kafka plugin
* Fixing bug in statsd processing
* Remove 'detail' dimension, fix a couple bugs

1.0.6
-----

* Adding RabbitMQ detection and setup

1.0.5
-----

* Bumping agent version to 1.0.5
* Cleaned up a lot of the Pep8 violations
* Remove hardcoded version
* Updating metric names to match new format
* Increase usefulness of Agent diagnostic commands
* Copy /root/.my.cnf credentials into mysql.yaml
* Additional documentation updates
* Change mode of requirement files
* Updated agent documentation
* Enable hacking check H234
* Enable hacking check H233
* Use service names rather than code names. Add montoring
* Remove unneeded definitions of Python Source Code Encoding
* Updating the documentation

1.0.4
-----

* Fixing psutil version issue. Bump Version
* Let git ignore files in all egg directories
* Add hacking as test requirement and use flake8 instead of pep8

1.0.3
-----

* Added monsetup package to setup.cfg

1.0.2
-----

* Adding setup.cfg file Adding manifest file Removing CHANGELOG.md since pbr generates that

1.0.0
-----

* Rename package to monasca-agent
* Adding gitreview config
* Initial tox setup and misc pep8 fixes
* Updated changelog for 1.0.7
* Reverted version bump
* supervisord missing correct path on boot
* Fix plugin returning no data, some pep8 updates
* Reverted version bump
* Removing code for default alarms from mon-setup
* supervisord missing correct path on boot
* Fix plugin returning no data, some pep8 updates
* Line wrapping changes
* Various pep-8/style/Python 3 compatibility fixes
* Fixed various pep 8 warnings
* Fix E721 - do not compare types, use 'isinstance()'
* Adjusted whitespace for pep8 compliance
* Added new OpenStack services
* Fixed various pep 8 warnings
* Fix E721 - do not compare types, use 'isinstance()'
* Adjusted whitespace for pep8 compliance
* Fixed Laconic filter import
* __init__.py fixes for monagent
* Minor name change
* mon setup pep8 fixes
* Fixed __init__ in monsetup
* Moved modification of URL to get_token method
* Fixed one minor bug in MonAPI class
* Removed the try/except in constructor, moved the client object creation to separate method
* Fixing Keystone URL to be base URL only
* Fixing bug in token handling. Removing /tokens from keystone URL
* Fixing bug in token handling. Removing /tokens from keystone URL
* Removed 'Monasca' references
* Version bump and changelog update
* Added multithreading support to "active check" plugins
* Added Swift and Cinder auto-detection and setup
* Fix collector crash from long-running plugins
* Fixes to http_check for keystone token
* Fixed some minor issues
* Adding Nova detection and auto-setup
* Keystone authentication improvements
* Fixed one missed project_id reference
* mon-setup release
* Added the project_name to the readme
* Added project name to the keystone config
* Added deep merge to agent.conf also
* Added deep merge of plugin_config, only a shallow was happening
* Initial detection and config of monitoring stack
* Fix user/permissions on agent.conf
* Added postfix but disabled when I realized it needs passwordless sudo
* Minor initial setup setup bug fixes
* Initial setup of zookeepr and kafka
* Initial implementation of mysql detection
* Updated changelog and minor yaml.example tweak for 1.0.4
* Added default help formatter
* Misc cleanup of some hardcoded paths
* Permission cleanup
* Structural changes to allow a single detection plugin to setup multiple plugins
* Version bump
* Added per-instance dimension support to "active check" plugins
* Better output
* Added really simple network plugin to mon-setup
* Initial working mon-setup
* Initial sketch of what monsetup could look like
* Initial working mon-setup
* Initial sketch of what monsetup could look like
* Fixed issue where proxy settings were used by the emitter
* Brought changelog up to date for 1.0.3
* Run supervisord as the mon-agent user, not root
* Fixing request format for Keystone token retrieval
* Add egg-info directory to .gitignore
* New quick quick overview of the Monitoring Agent
* JAH-233 http_check unroutable network exception
* Moving version information to central location
* Fixed pep8 issues, bumped version and removed an unused variable
* Fixed bug in Keystone processing
* Removed aggregate_metrics and mapping_file, updated conf.example
* Fixed pep8 issues, bumped version and removed an unused variable
* JAH-211 forwarder bug fix, JAH-222 metric rename
* Fixed bug in Keystone processing
* Bumping version in config file
* Bumping version
* Fixing Keystone class
* Integrating python-monclient into agent
* Version bump to 1.0.1
* JAH-197: Subsequent dimensions missing in certain plugins
* Fixed find_packages, remove . from package name
* Configured setup.py so it will work for installing
* Fix wiki link
* added HP to license copyright
* Fixes for issues encountered now that we use dimensions
* Update README.md
* Update README.md
* Some test fixes
* Changed monstatsd to use the standard emitter
* Renamed dogstatsd->monstatsd
* Removing the statsd-gen, it should be updated and put with the statsd client code
* Added wiki link
* Fixes for the odd pathing done with a deb install
* Moved disk/inodes to including device as a dimension
* moved checks.d to use Measurements, forwarder and old style checks fixes
* Update README.md
* Fixes for running/building
* Finished tag->dimension changes, now for testing
* Misc inspection fixes
* Some test fixes
* Finished removing all need for the mapping file
* Removed/renamed all standard system metrics to our names
* Send hostname dimension with all measurements
* Incorporated Measurement into the forwarder
* Moved to a standardized output from the collector
* Pulled out a few items discarded in the normalizer
* Partial move of collect to dimensions, and some pep8 cleanup
* Pulled metrics into their own module and out of aggregator
* JAH-127 reorganized components to acheive a clearer seperation
* Pulled tags from the forwarder, needs corresponding changes in the collector
* Fixed issues caused by fault refactoring
* force aggregate message to mon api, moved aggregator.py into a common dir
* Fixed/cleaned up passing of config dimensions to the emitter
* Removed google compute engine host tags
* Fixed and disabled more tests
* Unit test cleanup, mostly disabling tests with external requirements
* Removed custom emitters from the config
* Removed custom emitters
* minor log fix and brief look at emitter functionality
* Minor fix to make what is happening in package install a bit more clear
* Fixes following the initial rebranding
* Initial remove of datadog branding, rpm support and moved mapping file location
* Removed in favor of just using the package version
* Clarified collector and collector_daemon
* Clarified our custom check names, removed duplicates
* Removed redundant example configs
* Removed nagios check from dd
* Fixed bug introduced with too aggressive inspection fixes
* More pep8 changes
* Bunches of pep8 fixes
* inspection fixes, mostly static methods
* A few more inspection fixes, lots more to come
* Cleaned up lots of imports unnecessarily going to util
* Finished very initial move from custom emitter to a full transactional emitter
* Turned off gzip since the emitter is only used to localhost
* bumped version, removed licenes files for code no longer embeded
* Working deb build
* Changes to get the collector working
* Cleaned up the changelog
* Changes to make the forwarder work
* The first few fixes from code inspection
* Ripped out the datadog remote bits of the forwarder
* removed embeded ntplib
* Removed embeded httplib2
* Removed boto and ec2 related metadata
* Removed embeded collections library
* Removed embedded pyyaml
* collector only sends metrics to the forwarder, pulled out ganglia
* Renamed monagent.mon_lib.mon_api and friends to drop extra mons
* Roland's changes from meeting on 4/24
* On closer look moving pup isn't the right decision
* Pulled out unused bits, move pup to standalone
* Removed duplicate tests directory
* renamed collector/fowarder to decent names
* Minor cleanup according to code conventions
* Initial relocation of deb creation scripts. monagent should be a python module
* Removed files from dd not used by mon
* Moved root level stuff to the root
* Switching from tags to dimensions
* Log directory change in package post-install
* Fix for build failure #65, missing log directory
* Fixing data processing issues
* Fixing issue with statsd processing
* Combine and fix permissions on logfile directories
* Removed pbuilder stuff
* Fixing issue with readme
* Adding a statsd generator utility for testing of statsd metrics
* Moving emitter from collector to forwarder
* New little script to test checks.d plugins manually
* Fix in soon-to-be-obsolete pbuilder install path
* Removed all the "jah" and "Jah"
* Rename monapi directory to jahmon_lib
* First pass rename of mon-agent to jahmon-agent
* First pass switch from mon-agent to jahmon-agent
* Fix FPM dependencies
* FPM: Renaming datadog-agent to mon-agent
* Full merge against Datadog's agent 4.2.0
* Fixing issue with % sign
* Fixing issue with metrics processing
* Fixing issue with metrics processing
* Fixing issue with metrics processing
* Fixing issue with metrics processing
* Fixing issue with metrics processing
* Fixing issue with metrics processing
* Fixing issue with metrics processing
* Fixing issue with metrics processing
* Fixing issue with metrics processing
* Add python-psutil depdendency to support process.py
* Fixing JSON strings
* Fixing JSON strings
* Adding flag for turning off mon-api emitter
* Temporary hack for supervisord failing to ID its procs
* Activate dogstatsd, include some upstream changes
* Adding flag for turning off mon-api emitter
* Adding flag for turning off mon-api emitter
* Adding flag for turning off mon-api emitter
* Adding flag for turning off mon-api emitter
* Added mapping and filtering code
* Minor postinst changes for a cleaner install
* Updated for functional agent .deb (initial push)
* Added install file for pbuilder
* Updating control file
* Adding supervisor
* Cleaning up unneeded files and rename agent.conf to datadog.conf to retain compatability with dd-agent
* Fixing postinst Adding init script
* Fixing postinst Adding init script
* Fixing postinst Adding init script
* Fixing postinst Adding init script
* Fixing postinst Adding init script
* Fixing postinst
* Fixing postinst
* Fixing postinst
* Fixing postinst
* Fixing postinst
* Fixing postinst
* Fixing deb package
* New http_check, added yaml examples for all checks
* Changing postinst to preinst
* Adding postinstall and postrm files
* Removing some code customizations to use more of DD codebase. Adding another dependency
* Fixing issue in control file
* Fixing issue in control file
* Fixing issue in control file
* Removing build dependencies
* Reverting to old debian structure
* Reverting to old debian structure
* Addin additional files for deb package
* More fixes to Debian configuration
* More fixes to Debian configuration
* Added file for upstart to work
* Removing non-runtime dependencies
* Fixing package names in debian package
* Fixing package names in setup.py
* Fixing dependency issue, import issue and adding .gitignore file
* Removed pyc files from git. Fixed some issues in the code
* Refactoring code and getting message format correct
* Fix: 'detail:' string missing on nagios_wrapper tags
* First commit of agent checks for Nagios & ping
* Refactoring of agent code
* Moved example config files to a config directory
* Removed sommon from changelog
* Syntax issues in the control
* Minor fixed to the deb enviroment
* Rearranging and adding file structure for Debian packaging
* Adding initial code for writing metrics to mon-api
* Initial commit
