CHANGES
=======

0.4.0
-----

* RELEASE 0.4.0 version
* Handle the absent of daemon's metric
* It's a counter, so should be in different section
* Update the list of supported metrics
* Use int rather string in the default values
* Use int rather string in default value
* Switch to correct section name for pycodestyle
* PEP257 compatible docstrings
* Switch from yarl.UR to urlparse from standard Python library
* Update reference of UNIX sockets to include TCP
* PEP257 compatible docstring
* Simplify the return logic of two functions
* Add configuration\_check\_for\_servers()
* PEP257 compatible docstrings
* Disable pylint warning for too-many-branches
* Change the log severity to info for task report
* Add support for pulling statistics from TCP sockets
* Make that code more readable
* PEP257 compatible docstrinigs
* Fix typo in README

0.3.15
------

* RELEASE 0.3.15 version
* Add dcon and dses in the list of FRONTEND\_METRICS
* Add ctime in the list of SERVER\_AVG\_METRICS
* Add chkdown in the list of server metrics
* Add \`slim\` to server metrics, in addition to frontends and backends
* Mention in README about ansible and move code under contrib
* fix update readme file
* - Add Ansible Playbook For Fast Deploy haproxystats On CentOS 7.x - Update README File
* Fix a typo in README.rst
* Place metric back in the queue in case of OSError exc
* Log a message when graphite dispatcher queue is full
* Make docstrings compatible with EP257

0.3.14
------

* RELEASE 0.3.14 version
* Fix wrong calculation for Uptime\_sec

0.3.13
------

* RELEASE 0.3.13 version
* Convert Idle\_pct to CpuUsagePct

0.3.12
------

* RELEASE 0.3.12 version
* Fix yet another regression introduced by 9e78b6918
* Fix indentation issues
* Drop unused columns to safe memory
* Fix performance regression introduced by 9e78b6918

0.3.11
------

* RELEASE 0.3.11 version
* Compute standard deviation and percentiles for Idle\_pct
* Sanitize values in pxname and svname columns
* Simplify the way we exclude frontends/backends
* Add TotalServer metrics for backend, close #4
* Update URI references for HAProxy documentation

0.3.10
------

* RELEASE 0.3.10 version
* Make sure we cancel get() coroutine when times out

0.3.9
-----

* RELEASE 0.3.9 version
* Avoid replacing '.' with '\_' in namespace setting
* Avoid crashing when daemon statistics are inconsistent
* Do a comparison to None singleton with is not
* Rename variable epoch to timestamp
* Place keywords in the same line

0.3.8
-----

* RELEASE 0.3.8 version
* Declare failure when zero UNIX socket are found
* Rephrase various comments and log messages
* Check queue length when it is safe to do
* Remove shebang and add vim file encoding
* Remove '%' prompt character from instructions
* Move external software under contrib directory
* Fix a typo in README
* Add more keywords in setup.cfg
* Update README
* Ignore pep8 W503
* Increase readability of code
* Remove rst file extension for LICENSE
* Add rst file extension for LICENSE
* Update TODO
* Add missing colons to declare a block
* Update development instructions in README
* Add instructions to build a development environemnt
* Update TODO

0.3.7
-----

* RELEASE 0.3.7 version
* Include average metrics when processing per daemon
* Remove redundant string replacement
* Provide number of metrics which are sent
* Fix a silly bug in conditional statement
* Update docstrings/comments
* Mention that WallClockTime includes sending time
* Add/update docstrings and fix pylint warnings
* Fix a but where we skip CompressBpsIn metric
* Mention in documentation about SslConnPercentage
* Calculate percentage also for SslCurrConns

0.3.6
-----

* RELEASE 0.3.6 version
* Produce statistics for haproxystats-process
* Fix a typo for option name in the puppet module

0.3.5
-----

* RELEASE 0.3.5 version
* Remove check for accessibility for dst-dir and tmp-dst-dir
* Disable some pylint checks
* Calculate percentages for HAProxy workers
* Use correct name
* Add a missing comma
* Update installation instructions

0.3.4
-----

* RELEASE 0.3.4 version
* Add items in TODO
* Add home-page in setup.cfg
* Make sure configuration has valid metric names
* Remove done tasks from TODO

0.3.3
-----

* RELEASE 0.3.3 version
* Add a tcp\_server which simulates graphite-relay
* Add support for per process statistics
* Make it more clear that we perform aggregation

0.3.2
-----

* RELEASE 0.3.2 version
* Make sure we can \_\_init\_\_ method of parent class
* Remove unnecessary fallback
* Catch the case where config is in invalid format
* Perform a sanity check on configuration
* Disable pylint warning at the correct line
* Add sanity checks for parameters in puppet module
* Add queue-size parameter in the example config
* Update puppet module

0.3.1
-----

* RELEASE 0.3.1 version
* Document queue-size parameter of pull section
* Rephrase the paragraph in Queuing system
* Use fallback to True for prefix-hostname
* User hyphen rather underscore
* Use correct key name for queue-size parameter
* Add connect and write timeout to defaults/README

0.3.0
-----

* RELEASE 0.3.0 version
* Add support for excluding frontends and backends
* Revert "Replace in README UTF-8 characters with plain text"
* Refactor the loglevel part
* Disable pylint checks for few cases
* Make load\_file\_content to skip commented out lines
* Catch the case when incoming directory disappears
* Disable few pylint checks
* Remove unnecessary fallback
* Add aggr-server-metrics parameter in the defaults

0.2.1
-----

* RELEASE 0.2.1 version
* Increase severity to info, to easier debugging
* Replace in README UTF-8 characters with plain text
* Provide more accurate sleep time to avoid interval drifting

0.2.0
-----

* RELEASE 0.2.0 version
* Rephrase few sentences and fix spelling mistakes

0.1.16
------

* RELEASE 0.1.16 version
* Compute averages rather sum for act/bck metrics
* Update README
* Remove README under nagios
* Update nagios and monit checks
* Update puppet code
* Add minimum version for pyinotify in requirements
* Update requirements.txt
* Add a function to load content of file to a list
* Catch OSError when pandas parses csv file

0.1.15
------

* RELEASE 0.1.15 version
* Handle TCP socket failures in a better way
* Remove unused variable
* Rename decorator, retries --> retry\_on\_failures
* Add docstrings in functions
* Remove log\_hook as it is not needed anymore
* Rearrange comments
* Replace a for loop with a list comprehension
* Remove unnecessary dependencies from Unit files

0.1.14
------

* RELEASE 0.1.14
* Catch the case when FD is closed from outside
* Update on puppet recipe
* Add puppet classes
* Add monit configuration
* Updates on nagios checks
* Update TODO

0.1.13
------

* RELEASE 0.1.13
* Make configurable the aggregation of server's stats
* Make metric names configurable
* Rearrange metric name lists
* Add nagios checks

0.1.12
------

* RELEASE 0.1.12
* Report only the relevant sections for each program

0.1.11
------

* RELEASE 0.1.11 version
* Fix regression introduced by 5d1003ca

0.1.10
------

* RELEASE 0.1.10 version
* Use float rather int for measuring wall clock
* Report wallclock time for processing statistics
* Add support for connect and write timeouts
* Remove metrics from utils.py
* Move metrics to a separate module
* Update docstrings/comments

0.1.9
-----

* RELEASE 0.1.9 version
* Remove unnecessary server metrics
* Disable computation of stats across all backends

0.1.8
-----

* RELEASE 0.1.8 version
* Introduce queue-size for pull program
* Log exception when we fail to send data to graphite
* Avoid leaking FD when connection timeout
* Log when we close TCP connection to graphite
* Rewrite comment

0.1.7
-----

* RELEASE 0.1.7 version
* Set timeout on TCP socket for graphite handler

0.1.6
-----

* RELEASE 0.1.6 version
* Avoid a crash if incoming directory can't be removed
* Log version on startup

0.1.5
-----

* RELEASE 0.1.5
* Catch few more Connection exceptions on close
* Report wall clock time for pulling statistics
* Emit an error when we fail to remove temporary dir
* Add retry logic on connections to UNIX sockets
* Warn if tasks are canceled when reach pull-timeout
* More reasonable values for pull retry logic
* Update TODO
* Fix a regression introduced by b61ce6bcc
* Remove unused variable
* Remove unnecessary space
* Rename parameter signal to signalname
* Rearrange log messages when parsing sites stats
* Rearrange log messages when parsing daemon stats
* Error if Pandas data frame is empty
* Prevent passing empty data to Pandas
* Reorder log messages and change severities
* Warn if data directory doesn't have any files

0.1.4
-----

* RELEASE 0.1.4
* Catch socket.timeout
* Log filenames in debug mode

0.1.3
-----

* RELEASE 0.1.3
* Remove old data file from temporary directory

0.1.2
-----

* RELEASE 0.1.2
* Introduce pull-timeout
* Keep isolate shutdown and write\_file functions
* Catch timeout during the connection

0.1.1
-----

* RELEASE 0.1.1
* Rework the retries decorator

0.1.0
-----

* RELEASE 0.1.0
* Shield workers from death due to errors from dispatchers

0.0.5
-----

* RELEASE 0.0.5 version
* Don't try to process empty Pandas data frame

0.0.4
-----

* RELEASE 0.0.4 version
* Break early when STOP item is fetched from queue
* Don't enable local-store by default
* Perform a clean shutdown in case no tasks are running
* Wait for socket files to be created
* Don't proceed if watched dir isn't created
* Introduce a configuration parameter for process
* Add systemd unit files

0.0.3
-----

* RELEASE 0.0.3 version
* Don't include 'haproxy' in graphite path
* Fix typo in the section name

0.0.2
-----

* RELEASE 0.0.2 version
* Fix a directory pathname in the defaults
* Insert also 'haproxy' in the graphite namespace
* Add requirements file

0.0.1
-----

* RELEASE 0.0.1 version
* Change suffix for README in setup.cfg
* The 1st functional version of the program:-)
* Initial commit
