2014-03-22 - Version 2.0 released

This major release adds more than twenty new reports. pgCluu now reports everything
you want to know about your PostgreSQL server from a cluster, database, or operating
system point of view. It is also able to collect statistics about pgBouncer, shared
buffer utilization using pg_buffercache, most frequent and time consuming queries
with pg_stat_statements and really much more, see full list bellow. 

New or enhanced reports/features:

	- Allow pgcluu_collected to collect sar and configuration files
	  remotely together with PostgreSQL statistics using a ssh connection.
	  That mean that pgCluu is fully able to audit a remote server.
	- Add pg_stat_statements report showing most frequent and time
	  consuming queries.
	- Add reports for unused and redundant indexes per database.
	- Add report about archiver statistics with PostgreSQL 9.4 new
	  pg_stat_archiver view.
	- Add report about wal files created vs recycled and the max number
	  of wal files.
	- Add reports about network interfaces utilization and network errors.
	- Add reports about system cache page in/out from/to disk.
	- Add report of isdirty statistics.
	- Add --exclude-time to pgcluu_collectd options to stop collecting
	  statistics during a period of time. Ex: --exclude-time "22:00-06:00"
	  to stop collecting data from 22:00 to 06:00 am the next day.
	- Add report about percentage of shared buffer used per database
	- Add report about percentage of each databases loaded in shared buffer
	- Add report about usagecount distribution in shared buffer
	- Add report about usagecount distribution in dirty shared buffer
	- Add report of number of shared buffer/pages used by a relation
	- Add report number of buffers loaded in cache for a relation relation
	  and the percentage of the relation loaded (1).
	- Add reports about configuration files (postgresql.conf, pg_hba.conf and
	  pg_ident.conf), pgcluu_collectd must be run as postgresql user.
	- Add report of user functions statistics.
	- Add report about the pgbouncer settings in Configuration submenu.
	- Add copy of pgbouncer.ini file in Configuration submenu.
	- Add report of pg_settings in Configuration submenu..
	- Add report with SQL orders to create missing indexes on foreign keys.
	- Allow HTML table sort with a modified version of the javascript library
	  sorttable.js
	- Moved System info report from sar sytem menu to a dedicated main SysInfo
	  menu.
	- Add the number and list of extensions used inside the PG cluster.
	- Add reports about Locks per types, Locks per modes and Locks granted or not.
	- Add report about I/O statistics per index.
	- Add report about I/O statistics per table.
	- Add last manual vacuum/analyze datatime on database info report.
	- Add per database index statistics.
	- Add report of size and number of tuples per table of a database.
	- Add statistics reports per table (idx_scan/seq_scan, vacuums/analyzes,
	  Insert/update/delete/hot update and live/dead tuples).
	- Add count of user triggers in database information slide.
	- Add Database info submenu per database to display the general information
	  about a database (installed extension, schemas, number of Stored procedures
	  and of all kind of object.
	- Add last know size of the database in the Database info slide.
	- Add total number of databases on cluster key values.
	- Add report of tablespaces utilization.
	- Add report of pgbouncer statistics per dbname and per pool (dbname/username).


(1) [Shared buffers statistics are collected automatically when pg_buffercache
     extension is installed and the -B | --enable-buffercache option is used.]


Other changes/fixes:

	- Allow sar to be executed on a remote server using ssh connection.
	  Add --enable-ssh to activate this feature, the remote host is defined
	  using -h option. There is several new options --ssh-* to be able to
	  take full control of the ssh connection.
        - Waiting interval is now calculated with the interval value minus the
	  execution time of each loop.
	- Add output information when a kill signal is sent to pgcluu_collectd.
	- Option -p | --dev-only have change to -D | --device-only and add new
	  option -N | --network-only to limit report on some network interfaces.
	- Pretty print system memory information.
	- Fix graphs when a new database is created or dropped during an audit.
	- Add -B | --enable-buffercache to activate pg_buffercache statistics.
	  It is disable by default.
	- Reorder Database menu with submenu and prevent moving to non existent
	  reports by disabling the submenu.
	- Reorder cluster menu, using submenu and fix title of replication lag
	  report.
	- Add vm.dirty_background_bytes and vm.dirty_bytes to sysctl collect.
	- Add support to PostgreSQL 8.1 by using temporary table not COPY (sql).
	  Thanks to kenstir for the patch.
	- Reopen stdin/out/err so that daemon mode works correctly. Thanks to
	  kenstir for the patch.
	- Fix affected tuples per operation per database where tuples fetched
	  was used as select instead of tuples returned.
	- Review code and use one method per report.
	- Update documentation and usage about --exclude-time
	- Fix detection of non official release, like devel or EnterpriseDB
	  major version detection.
	- Change icon of CPU in SysInfo report.
	- Remove full path from sar and psql command to allow definition by
	  environment variables.
	- Fix CPU report refresh when comming from a report in the same
	  system.html page.
	- Change label of the 'Reset' button to 'To chart' to be less confusing.
	  This button allow to switch from image to chart (opposite as 'To image')
	  and not to reset a zoom in the graph.
	- Add -n, --top-number command line option to redefine the default top
	  10 tables or indexes I/O statistics.
	- Fix interval given to the sar command, should be one second and not
	  the value of $INTERVAL.
	- Fix sar report with overlapped time.
	- Fix empty file pg_stat_user_tables.csv.
	- Add database name inside pg_class_size.csv output and add function
	  get_proc_count(dbname) to retrieve function from a given database.
	- Add -T | --notablespace option to avoid printing an error message
	  when the connection user is not superuser.
	- Remove pg_default and pg_global from tablespace report.
	- Change link on program name to pgcluu www site.
	- Move print of Postgresql full version at bottom of the home page.
	- Reduce font size of key value on home and information slides.
	- Update Flotr2 javascript library to fix redraw of crosshair.
	- Command line options that can be used multiple time can now also
	  be used one time using a comma separated list of object names.

2014-01-28 - Version 1.1 released

This release adds lot of report improvements and bug fixes. There is also
several new features or reports.

	- Format mouse tracker on graphs to show all dataset values at a time.
	- Add run queue length report to system menu.
	- Add checkpoint write and sync times reports.
	- Add report of PostgreSQL version
	- Split background writer buffer and count statistics into separated
	  reports.
	- Add report of maxwritten_clean into bgwriter reports.
	- Add report of kernel parameters to the system info page.
	- Add collect of system kernel tuning parameters.
	- Remove embedded CSS and javascript on each HTML page, resources are
	  now automatically copied into the output directory if not already
	  present. Thanks to Guillaume Lelarge for the suggestion.
	- Allow pgcluu to parse sar file generated from sa file, use commands
	  like "sar -A -p -f /var/log/sysstat/sa*". Thanks to Julien Rouhaud
	  for the feature request.
	- Split commit, rollback and backend graph by using a second yaxis for
	  backend. Thanks to GUillaume Lelarge for the report.
	- Add System Information report.
	- Move Cache hit/miss ratio on second yaxis and change dataset colors.
	  Thanks to Guillaume Lelarge for the report.
	- Add collect of OS release information.
	- Allow pgcluu_collectd to grab OS information (cpu, memory, etc.) and
	  add --os-info option to only grab that information (for testing).
	- Reformat dashboard information.
	- Add -z | --timezone to set the hour(s) from GMT time to adjust times
	  on sar report. Thanks to Bricklen for the feature request.

and some more changes/fixes:

	- Add vertical crosshair on graph.
	- Update copyright date to 2014
	- Disable database report of number of canceled queries when not on
	  hot standby node.
	- Disable checkpoint write report following the pg version (< 9.2).
	- Disable temporary files and deadlocks reports following the postgresql
	  version (< 9.2).
	- Add storage of pg version into sysinfo.txt
	- Fix missing legend of checkpoints_timed in checkpoint report.
	- Fix warning on META_MERGE for ExtUtils::MakeMaker < 6.46. Thanks to
	  Julien Rouhaud for the patch.
	- Fix typo in pgcluu_collectd calls. Thanks to Jacky Rigoreau for the
	  report.
	- Fix issue where information slide was not displayed when clicking on
	  the information button.
	- Change documentation about resources files that are now autogenerated.
	- Fix grab of statistics from an 8.4 cluster (access to not-available-yet
	  statistics catalogs). Thanks to Guillaume Lelarge for the report.
	- Fix issue on parsing CentOs release. Thanks to bricklen for the help.
	- Fix issue "Use of uninitialized value $val in substitution line 3312".
	  Thanks to bricklen for the report.
	- Fix call method "print" on an undefined value at ./pgcluu line 1303.
	  Thanks to Guillaume Lelarge for the report.
	- Fix sar dashboard report.
	- Remove decimal from hit cache ratio report. Thanks to Guillaume Lelarge
	  for the report.
	- Dashboard review: cluster label rewrite, remove empty values from
	  report, add start/end date of database stats and sar stats. Thanks to
	  Guillaume Lelarge for the feature/change requests.
	- Fix some warning on uninitialized value on dashboard. Thanks to Julien
	  Rouhaud for the report.
	- Fix Illegal division by zero at ./pgcluu line 1132. Thanks to Julien
	  Rouhaud for the report.
	- Fix issue in building timestamps in sar data. Thanks to Bricklen for
	  the report.
	- Fix sysstat version execution error with locale different to C or en_*.
	  Thanks to forall for the report.
	- Fix broken sar charts when collect time is greater than 24 hours.
	- Add -z | --timezone option to documentation.
	- Fix error: print() on closed filehandle GEN9 at pgcluu line 1942.
	  Thanks to Bricklen for the report.


2013-11-18 - Version 1.0 released

This is the first public release of pgCluu, that is a packaging of the tools I
use every day to collect statistics and build reports of PostgreSQL Clusters
for performances auditing and troubleshooting.

At this time it collect and report most of what is helpful for a PostgreSQL
Cluster performance auditing. There's lot of others reports to be included:

	- Statistics reports concerning tables.
	- Statistics reports about pg_stat_statement.
	- More Sar statistiques reports.
	- ...

This will comes in next release. 

The goal of this project is to provide a complete PostgreSQL auditing tool that
do not need any dependency so that it can be run on any server.

If you just have a sar output file, pgCluu can be use to draw graphs about the
system utilization only.

For more information take a look at http://pgcluu.darold.net/


