Permalink
Find file
Fetching contributors…
Cannot retrieve contributors at this time
712 lines (655 sloc) 35.4 KB
2016-04-27 - Version 2.5 released
This release is a major release that fix some issues reported by
users over past year and a full replacement of the flotr2 javascript
chart library with jqplot.
There's also some new interesting reports:
* Add report for hash indexes.
* Keep track of pg_settings and database/roles settings changes and
show diff in the the reports.
* Add report of pending restart in pg settings view.
* Add information about percentage of timed against requested
checkpoints.
* Split database menu in submenu per set of 10 databases.
* Add report of tables without indexes and tables with more than
five indexes.
* Add report about invalid index after concurrency build.
* Add report of system and PostgreSQL uptime.
* Add report of last statistics reset per database and report of
last autovacuum and autoanalyze.
* Add report of bgwriter last statistics reset in Home/Cluster view.
* Add a non default configuration settings report.
and useful features:
* Autodetect timezone from csv data files and automatic adjustment
of chart axis.
* Add systemd start script.
* Add collect of crontab information.
* Add support to daylight saving.
* Add compatibility with PostgreSQL 9.5
* Add ablity to export plots data as csv
* Set legend table outside the graph.
* Display specific titles and description for overall graphs.
Note that a CGI script have been added to be able to perform temporal
lookup in incremental pgCluu statistics, with predefined year, month,
day and hour views. This is a work in progress, it will be available
in next major release.
Upgrade: you can safely override previous installation, backward
compatibility with 2.4 version is preserved.
Here are the complete list of bug fixes in this release:
- Add report for hash indexes. Thanks to Adrien Neyrat for the
patch.
- Fix detection of non official release like EnterpriseDB or devel.
Thanks to Piotr Gbyliczek for the patch.
- Add use of IO::File, some system was complaining about that.
Thanks to microtodd for the report.
- Only collect stored procedures count instead of name list.
- Refresh sysinfo.txt at each loop and order output per database
name.
- Fix capture mode with PostgreSQL version 8.4
- Fix some bug in capture report.
- Fix use of timezone in cluster/database related charts.
- Autodetect timezone from csv data files.
- Fix some documentation typo about systemd use and apply change to
pgcluu.pod.
- Fix systemd unit files. Thanks to gabx for the patch.
- Update README with systemd unit files usage
- Add collect of crontab information. It uses the current logged
username or postgres as default and it can be overriden with the
--cron-user command line.
- Do not collect metrics if previous time is upper than current time
This is to prevent storing statistics twice when hour change
during daylight saving. Thanks to brownbh3 for the report.
- Keep track of pg_settings and database/roles settings changes and
show diff in the the reports.
- Update comment on pg_settings columns.
- Add report of pending restart in pg settings view.
- Exclude from non default settings collect case where setting equal
boot_val.
- Add collect of pending_restart column from pg_settings (pg 9.5).
- Remove obsolete css file, it is replaced by font-awesome.min.css
- Keep track of configuration files changes by storing diff to files
Changes are sorted by date at bottom of the configuration reports.
- Fix range of icons in embedded fontawesome css.
- Fix report of number of xlog data written per second. Thanks to
Ronan Dunklau for the report.
- Add ablity to export plots data as csv. Thanks to Julien Rouhaud
for the patch.
- Fix/change some fontawesome icons.
- Fix menu height in pgcluu css.
- Add ablity to export plots data as csv
- Fix scale on yaxis sticks in javascript graphs.
- Report percentage between checkpoint timed and requested in legend
- Add information about percentage of timed against requested
checkpoints.
- Update with resources directory move.
- Move resources directory into cgi-bin/ to be less confusing.
- Update list of file in MANIFEST for pgcluu package.
- Fix top menu height and color in start/end date input box of CGI.
- Update html header with new .min.css and .min.js files
- Use minimalist version of CSS and Javascript and remove call to
sourceMappingURL
- Replace external font file fontawesome-webfont.ttf by the base64
embeded version.
- Removed by their optimised min files.
- Fix unparsed section in sysinfo.txt when file is generated from
a Windows server.
- When system information are missing, display a message.
- Remove Deadlocks end Temporary files menu when PostgreSQL version
id lower that 9.2.
- Fix y2axis on hit ratio and commit vs rollback reports. Thanks to
Guillaume Lelarge for the report.
- Fix report of huge page information.
- Fix an additional series 4 in background writer clean stats report
Thanks to Guillaume Lelarge for the report.
- Disable mouse click on disabled menu.
- Do not display empty deadlocks and temporary files informations if
PostgreSQL version is lower than 9.2. Thanks to Guillaume Lelarge
for the report.
- Prevent display of SysInfo menu when there is no such information.
Thanks to Guillaume Lelarge for the report.
- Prevent collect of local system information when option -h is used
but --enable-ssh is disabled. Thanks to Guillaume Lelarge for the
report.
- Set daily rotation instead of hourly.
- Add pgcluu.service file to start/stop pgcluu_collectd with systemd
Thank to Arnaud Gaboury fot the file.
- Fix call to current_setting(checkpoint_segments) in dump_xlog_stat
It has been replaced by max_wal_size in PostgreSQL 9.5.
- Renamed option --notablespace by --no-tablespace.
- Split database menu in submenu per set of 10 databases.
- Remove border and shadow from all graphs.
- Set legend table outside the graph.
- Rewrite call to pgcluu_slide.js
- Reduce font size in legend and tooltip chart.
- Forgot to include uptime with PostgreSQL version in main page.
- Fix homepage statistics when data are loaded from cache file.
- Add subtitle in homepage panels.
- Fix number of connection in home page.
- Fix wrong count of database and tuples returned in overall stats.
- Fix report of bgwriter stats_reset.
- Make some changes in SysInfo view.
- Force default date before looking to working dir. Only look for
incremental repositiory with CGI.
- Replace flotr2 javascript chart library with jqplot.
- Add time navigation in pgcluu CGI
- Add a configuration file to CGI
- Update resources/ directory with new javascript libraries
- Remove temporary debug line.
- Add margin to panel buttons and center the graph. Thanks to Tomer
Steinfeld for the patches.
- Fix report of overcommit_memory.
- Add configuration file for CGI initialization.
- Fix two bugs on indexes report
- Add report about invalid index after concurrency build
- Fix report on most indexed tables
- Add report of tables without indexes and tables with more than 5
indexes. Thanks to julien Rouhaud for the feature request.
- Add statistics collect about number of indexes by table. Stats
are stored in pg_stat_count_indexes.csv
- Add postmaster start time. Thanks to Julie Rouhaud for the feature
request.
- Add system uptime information. Thanks to Julien Rouhaud for the
feature request.
- Add report of last statistics reset per database and report of
last autovacuum and autoanalyze. Thanks to Julien Rouhaud for the
feature request.
- Add report of bgwriter last statistics reset in Home/Cluster view
Thanks to Julien Rouhaud for the feature request.
- Add collect of invalid indexes.
- Fix pg 8.4 compatibility. Thanks to Julien Rouhaud for the patch.
- Check indisprimary instead of name starting by "pk", and also
exclude index supporting an exlucsion constraint. Thanks to Julien
Rouhaud for the patch.
- Fix colspan for pg_settings reports. Thanks to Julien Rouhaud for
the patch.
- Add a non default configuration settings report. Thanks to Julien
Rouhaud for the patch.
- Fix missing global title/description for connections and remove
call to normalize_line on index report. Thanks to Julien Rouhault
for the report.
- Display specific titles and description for overall graphs. Thanks
to Julien Rouhaud for the patch.
- Fix wrong call to pg_current_xlog_location() on secondary host.
Thanks to Julien Rouhaud for the report.
- Fix error when pgcluu is just used to parse a sar output file.
Thanks to Euler Taveira de Oliveira for the report.
- Fix wrong calculation of pg_stat_replication lag reports.
- Fix error: "Invalid offset: 0" when parsing pg_stat_replication
statistics. Thanks to vscherbo for the report.
- Fix regexp in previous commit to be more strict.
- Fix creation of wrong database menu using function name. Thanks
to spritchard for the report.
- Fix psql error when using --list-metric option. Thanks to Fabio
Pardi for the report.
- Fix wrong storage of previous value in pg_stat_user_functions
which result in counts on the database-functions page completely
wrong. Thanks to Steve Pritchard for the patch.
- Remove redundant regular expressions.
- Update CSS and JS files in resources directory and datetimepicker
ressources files for cgi.
2015-07-25 - Version 2.4 released
This release is a maintenance release that fix some issues. There's also some
new interesting reports:
* Transfers per second (read/write/both) on all devices from sar -b
* Transfers per second for each device from sar -d .
* Number of tasks created per second
* Number of context switches per seconds.
* Improve pg_stat_statement report by adding all shared block stats
and read/write I/O timing per query when track_io_timing is enabled.
* Add device with highest tps on overall system information.
and useful features:
* Add --capture mode to pgcluu_collectd to be be able to build a snapshot of
the PostgreSQL instance and exit. pgCluu will automatically adapt the report
to this capture mode. It will use a temporary directory /tmp/pgcluu_capture
to generate a tarball /tmp/pgcluu_capture.tar.gz containing the capture.
* Add pgCluu logo and ico to the html output.
* Add --charset option to be able to change the html charset, default: utf8.
* Allow regular expression in database list available in reports, for example:
with --db-only "p.*", only database beginning with p will be reported.
* Allow pgcluu to parse and compute statistics from gzip compressed files.
* pgcluu will not stop anymore if the sar file is not found, it will only
show a warning message and continue.
This release also adds -r | --rotate-daily and -R | --rotate-hourly options to
pgcluu_collectd be able to rotate statistic files on a daily or hourly basis.
You can use -z or --compress option to compress rotated data files. Thanks to
Euler Taveira de Oliveira for the feature request.
There also some code relative to next coming major release that will be used
to allow a full incremental mode and a temporal navigation into the collected
statistics from a CGI program. This code enable caching (option -C or --cache)
by dumping statistics stored in memory into binary files. With those files, data
files can be removed (automatically with option -c or --clean) and report can
be build later from them. This is not really useful now but this s the first
stage to build incremental and cumulative reports.
Here are the complete list of bug fixes in this release:
- Fix pretty print number format when units are blocks and not sizes.
- Do not apply database list restriction on total cluster size calculation.
- Fix Statistics about I/O on Indexes.
- Rewrite some parts of the overall system statistics for better performances.
- Fix bug in overall stat for Most read/written device, they was multiplied
by 512 (size of a block) twice.
- Fix system report of r/w and tps per devices.
- Fix wrong report of pg_buffercache statistics.
- Remove some global variables with local redeclaration.
- Fix use of uninitialized value during build of pg_stat_statement report.
- Fix Statements statistics not available because a local var is used during
computation. Thanks to Michel Meyer for the patch.
- Fix uninitialized value and wrong overall reports in Home menu. Thanks to
Assem Bayahi for the report.
- Remove garbage from last commit.
- Fix replication lag statistics report and add new report about
"Number of xlog data written per second."
- Fix documentation about --included-db
- Fix pgcluu_collectd crash when --no-database is used and the psql command
is not available. Thanks to Ronan Dunklau for the report.
- Fix call to cluster canceled queries statistics.
- Fix menu when no database are found.
- Fix start/end date and path to sar file in incremental and capture mode.
- Separate load of statistics from report builder.
- Make paths internally relative into output directory especially for
incremental facilities.
- Fix several issue that prevented configuration files to be copied into the
output directory.
- Allow white space in db's names. Thanks to Nicolas Thauvin for the report.
- Fix wrongly disabled temporary files menu.
- Fix database list with character - inside the name
- Fix replication and checkpoint report and corresponding menus disabled.
Thanks to Zsolt for the report.
- Fix a print on undefined value when a device is mounted after the first
execution of pgcluu. Thanks to Ezequiel Mina for the report.
- Add timezone option for perl localtime() and fix mixed formated tabs. Thanks
to David Cramblett for the patch.
- Add missing information into usage about -w | --password option.
- Fix for sar command when ssh not in use. Thanks to David Cramblett for the
patch.
- Make error message during first connection more explicit. Thanks to Gregoire
Pineau for the report.
- Be sure that interval is always != 0 to avoid illegal division by zero.
Thanks to Gregoire Pineau for the report.
- Fix control character in substitution regex.
- Fix error message for $OUTPUT_DIR not being empty should not use $INPUT_DIR.
Thanks to Matthew Musgrove for the patch.
- Fix limit reports to the database when --only-db is used. Thanks to Bianca
Santana Espichicoquez for the report.
2015-02-06 - Version 2.3 released
This release is a maintenance release that fix some issues. There's also a new
report about "Role Settings" per database.
- Report default parameters values set with ALTER DATABASE and ALTER ROLE
in new menu item: "Database/Role Settings". Thanks to Thomas Reiss for
the feature request.
- Fix detection of disk device in sar file.
- Add boot value to the settings report
- Add Unit and Reset value in pg_settings report to highlight parameters
where values have been changes outside the configuration file.
- Fix handling of sysinfo information, and enhance .gitignore. Thanks to
Julien Rouhaud for the patch.
- Fix kernel.* and transparent_hugepage display on Sysinfo section. Thanks
to Julien Rouhaud for the patch.
2015-01-05 - Version 2.2 released
This release is a maintenance release that fix several issues. There's also a
simple report of transparent_hugepage from the system and a menu enhancement
by dividing the device menu per 10 items which is helpful when there's plenty
of disk devices.
- Increase copyright year to 2015.
- Fix bug in database list extraction.
- Fix query to get missing foreign key indexes. Thanks to Ronan
Dunklau for the patch.
- Add collect of transparent_hugepage information into sysinfo.txt file.
(read from /sys/kernel/mm/transparent_hugepage/-)
- Fix overwriting of idle_in_xact for all database, should be idle.
Thanks to Guillaume Lelarge for the patch.
- Fix query for missing indexes on FKs. The previous query reported
every index that SHOULD exist for FKs, but was not filtering out the
already existing ones. Thanks to Ronan Dunklau for the patch.
- Do not report redundant indexes when one is partial and not the other
one. Thanks to Ronan Dunklau for the report.
- Fix statement to search redundant index by not reporting index that
has uniqueness and not the other one. The statement now also reports
duplicate indexes on the same column and not only composite indexes.
Thanks to Ronan Dunklau for the report.
- Divide Devices menu by part of 10 devices. Useful when there is plenty
of disk devices.
- Add --from-sa-file to allow parsing of sar output coming from a sa
daily file.
- Fix call to local sar command and limit test on application_name for
pg version >= 9.0. Thanks to Julien Rouhaud for the report.
- Set application_name to pgcluu before collecting data and exclude
from pg_stat_activity queries generated by pgcluu.
2014-09-25 - Version 2.1 released
This release fix a lot of issue reported since six month and adds some
improvments:
Allow system information commands to be executed remotely
Allow sar to be executed on a remote serveur using ssh connection.
New options to pgcluu_collectd:
-M or --max-size option to allow an output dir size limit.
--no-database to avoid collecting statistics from a database.
-C count to terminate program after collecting data for X times.
-E or --end-after to terminate program after for some time.
-V or --version to show version information.
New or enhanced reports/features:
Add report of connections waiting for a lock.
Add average duration time in statement report.
Add pg_stat_statements report.
Add pg_default and pg_global to tablespace size report.
Other changes/fixes:
- Allow system information commands to be executed remotely. Thanks to
Ahmad Iftekhar Rumman for the report.
- Add --no-database to avoid collecting statistics from a database.
Useful if you just want to collect sar statistics.
- Fix query to collect information from pg_stat_activity that fail on
postgres-xl and certainly postgres-xc. Thanks to xiao huan for the
report.
- Fix pgcluu_collectd to stop capturing activity when option -C is
omitted. Thanks to Thomas Reiss.
- Fix pg_settings query unit is available in >= 8.2 and boot and reset
since 8.4. Thanks to Euler Taveira de Oliveira for the patch.
- Fix unopen filehandle in printing system disk device statistics.
Thanks to Ahmad Iftekhar Rumman for the report.
- Cosmetic fixes in docs. Thanks to Euler Taveira de Oliveira for the
patch.
- Documentation update with the new -C option to pgcluu_collectd.
- Terminate program after collecting data for X times. This is another
option to end the program. Instead of doing some math with time
counter, use a numeric counter. It can be combined with -i option too.
Also, time (-E) has precedence over numeric (-C). Thanks to Euler
Taveira de Oliveira for the patch.
- Add report of kernel nr_hugepages report, 9.4+ now support huge page
supported. Thanks to Euler Taveira de Oliveira for the patch.
- Fix connection report enabled when a database has no connection.
Thanks to Guillaume Lelarge for the report.
- Add configuration report of recovery.conf and postgresql.auto.conf.
Thanks to Guillaume Lelarge and Julien Rouhaud for the report.
- Removed useless Type column in Indexes ans Tables size reports. Thanks
to Guillaume Lelarge for the report.
- Disable Conflict and Canceled queries menus when this is not a standby
server. Thanks to Guillaume Lelarge for the report.
- Fix some typo reported in issue #20. Thanks to Guillaume Lelarge for
the report.
- Change Returned and Fetched legend to Table (returned) and Index
(fetched). Thanks to Guillaume Lelarge for the report.
- Fix keep tick formatting when zooming. Thanks to Julien Rouhaud for
the patch.
- Fix non exclusion of devices in System Network and Devices submenu.
Thanks to Thomas Reiss for the report.
- Fix some error uninitialized value in concatenation.
- Allow pgbouncer statistics collect+report only. Thanks to Eric
Veldhuyzen for the report.
- Add boot_val and reset_val to pg_settings output.
- Fix multiline in df system information. Thanks to Nicolas Thauvin
for the report.
- Add -M or --max-size option to allow an output dir size limit. For
example using -M 100MB will interrupt pgcluu_collectd when output dir
will reach this size. Require the du system command. Thanks to Nicolas
Thauvin for the feature request.
- Add new option -E or --end-after to tell pgcluu_collectd to run for
some time before terminating automatically. Thanks to Nicolas Thauvin
for the feature resquest.
- Fix issue with pg_stat_statements metrics when the extension was not
installed in a schema searchable in the search_path connected user
value. Thanks to Nicolas Thauvin for the report.
- Failure on null value on replication report when pg_basebackup was
running. Thanks to Emmanuel Vinet for the report.
- Add/fix report of connections waiting for a lock. Thanks to Guillaume
Lelarge for the report.
- Replace label Waiting and Waiting in xact by Idle and Idle in xact in
connection graph. Thanks to Guillaume Lelarge for the report.
- Fix metrics that was not accepted if passed alone: pg_settings,
lock_granted,lock_modes,lock_types. Thanks to Fabio Pardi for the
report.
- Add information about -v|--verbose and -V|--version to documentation.
- Add -V | --version option. Thanks to Fabio Pardi for the feature
request.
- Fix several issues in disabling menu in cluster reports.
- Fix temporary statistics report, menu was always disabled. Thanks to
Julien Rouhaud for the report.
- Fix wring number of CPU sockets that was reporting the total number
of cores. Thanks to Thomas Reiss for the report.
- Add collect of the extensions version. Thanks to Jehan-Guillaume de
Rorthais for the request.
- Add support to individual reports when the --metrics option have been
used with pgcluu_collectd.
- Fix some uninitialized variables and errors when pgcluu has only some
metrics to parse.
- It will not search for pg_database_size.csv anymore to contruct the
list of database and read pgbouncer file to get list of database with
pgbouncer.
- Generation of database related reports (cluster, database, pgbouncer)
have been review to use non global filehandle. It will not search for
pg_database_size.csv anymore to contruct the list of database and
prevent case where some reports was genereted twice.
- Speed improvement.
- Rename --os-info option into --sysinfo and add --no-sysinfo option to
completly disable the generation of sysinfo.txt
- Fix --metrics option that was not limiting the kind of metrics to use.
Thanks to Fabio Pardi for the report.
- Fix bug in device lookup in sar file that was generating undefined
filehandle. Thanks to Toth Csaba for the help
- Fix several part where pgcluu crash using undefined variable if the
database in not found in pg_database_size.csv.
- Fix error print on an undefined value when a database does not have
lock defined. Thanks to Csaba Toth for the report.
- Fix typo in System memory utilization report description.
- Fix typo in Commits/Rollbacks report description.
- Fix typo in Read Tuples report description.
- Fix typo in locks per type report description.
- Fix typo in Statistics about cache utilisation per relation.
- Change description of Replication lag report.
- Add sorttable.js to resources directory.
- Fix position of index.html#home.
- Fix parsing of --db-only, --dev-only ... comma separated list.
- Fix typo in ssh related option. Thanks to Jehan-Guillaume de Rorthais
for the report.
- Fix code to set ssh command and allow collect of configuration files
through ssh.
- Allow sar to be executed on a remote serveur 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.
- Add average duration time in statement report.
- Add pg_stat_statements report.
- Override statements statistics on each loop.
- Replace multiple space by single one in pg_stat_statements queries.
- Fix pg_stat_statements collect to replace semi-colon by SEMICOLON
keyword to prevent breaking CSV format.
- Add pg_default and pg_global to tablespace size report. Fix issue on
spclocation display on per tablespace reports.
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/