Releases: lesovsky/pgcenter
v0.9.2
v0.9.1
v0.9.0
Changelog
Major enhancements:
- add session statistics from pg_stat_database (Postgres 14)
- add WAL usage statistics from pg_stat_wal (Postgres 14)
- add progress statistics about running COPY commands from pg_stat_progress_copy (Postgres 14)
- add filesystem stats for top utility
- extend statistics about tables sizes
- add support for millisecond resolution for record and report utilities
- add naming convention for columns names
See more details here.
For packages check out v0.9.1 release
v0.8.0
Changelog
d1d2570 Add PGresult validation before returning result.
3cee979 Add connection options required for use with simple protocol.
53d22ff Add pg_stat_progress_analyze: add query, view, implement in 'top'.
7c53d2d Add pg_stat_progress_analyze: implement in 'report'.
4bc08dd Add pg_stat_progress_basebackup: add query, view, implement in 'top'.
8387146 Add pg_stat_progress_basebackup: implement in 'report'.
d413cef Add pg_stat_statements WAL usage: add query, view, implement in 'top'.
d281ffc Add pg_stat_statements WAL usage: add to 'top' query report.
38d36c4 Add pg_stat_statements WAL usage: implement in 'profile'.
8f1b194 Add templates for issues and feature requests.
82e3710 Check postgres locality using all available addresses from network interfaces.
dc3b68a Checking for context cancel when attempting to write stats into the stats channel. Used stats writing operation is blocking, to avoid infinite blocking also listening for context cancellation.
8093f5d Close statCh channel inside the writer function. Fix MainLoop method execution.
b20ba2a Dockerfile: use alpine image instead of scratch due ti ot has 'getconf' executable inside.
a5c4f51 Fetch 'master' udpates
1f39a3c Make report.readFileStat as stat.NewPGresultFile.
1685e33 Profile: change rows order in report footer.
ea188d9 Profile: implement accounting for parallel workers using leader_pid. 1) add cmd flag, 2) make query selection depend on Postgres version.
3d54c8d Profile: implement accounting for parallel workers using leader_pid. 1) getting stats using NewPGresulQuery, 2) add stats parser, 3) refactor accounting, 4) add new and improve existing tests, 5) code blocks re-arrangement, 6) rewrite comments.
f1daad9 Profile: rename stats type to waitEventsStat to avoid types/packages name collisions; add and improve comments.
9c7af51 Release notes for v0.8.0 draft.
390bc13 Rename NewPGresult to NewPGresultQuery.
d3c97a1 Update go version to 1.16: refactor ioutil usage; update pgcenter and pgcenter-testing docker images, update version in goreleaser.
da3e4f9 v0.8.0 release notes: add external links.
df1cea5 v0.8.0 release notes: update image links.
v0.7.0
Changelog
fda643b Add GH Actions workflows.
d69a7c9 Add TODOs and comments.
96eefb1 Add collector config entity. Read config at collector init.
4238b7f Add comments.
94c01b2 Add executing queries integration tests.
968e3ad Add explicit cast to text to avoid saving numeric values suing scientific notation when scanning values by 'pgx' driver.
3b4c13e Add extra tests for sort method of PGresult.
3ca2f12 Add forgotten comments.
c2e3c50 Add goreleaser configuration.
1e61fd3 Add prefill stat collection.
da41107 Add query execution test across all supported PG version (from 9.5 to 13).
044ef69 Add test for stat/diskstats.
c221fe5 Add test for stat/log, # close conn to postgres after tests.
599a0f9 Add test for stat/log.
4cc393a Add test for stat/postgres, #1. Move align functions to dedicated package.
cb30e29 Add test for stat/postgres, #2. Code rearrangement (rename vars, functions).
8f982b7 Add test for stat/stat.
02b41c3 Add test target into Makefile.
7d90705 Add tests for internal/align; adjust function (remove unreachable path).
b2fbc55 Add tests for internal/math, internal/postgres.
b994b1d Add tests for internal/query, Refactor const names.
d47b2e4 Add tests for internal/view.
9c81b1a Add tests for stat/netdev.
d3c63e0 Add tests for top/config, top/config_view.
2918fb9 Adding linting #1: - enable golangci-lint; - comment unused code in ethtool. Don't remove it, hope I will use it in future.
d540ce0 Adding linting #2: fix variable name.
36fe95a Adding linting #3: fix lint warnings.
d4f351d Adding linting #4: fix rest of lint warnings.
06f2efa Adding linting #5: add gosec, fix/suppress gosec warnings.
92e4723 Adjust README, Changelog and docs accordingly to made changes.
e77774c Attempt to fix test which hangs when executing under GH Actions, #2.
43b2b31 Attempt to fix test which hangs when executing under GH Actions, #3.
bd2207c Avoid unneeded space removing.
7669aa6 Cmd: rename variable name, tiny comments edits.
6919a26 Comment out broken test.
17c49bc Copy 'stat' module to internal/ dir; remove 'context' from the copy; swap stat module in 'top' program.
6154cdb Enable dummy 'record' sub-command.
6c32ff5 Enable dummy report/cmd; refactor functions; add tests.
5f75e1a Enable iostat.
123b843 Enable logtail; move log-related functions to stat pkg.
e081a13 Enable netdev (former nicstat).
6d44cc7 Enable the rest of 'report' code.
7780d4f Enabling rest functionality of 'record' sub-command.
8fe0195 Fix error when converting numbers in scientific notation as integers.
62c43c5 Fix file descriptors leak when opening stat/log files.
92f57d8 Fix password prompt when unable connect to Postgres due to failed auth.
dc97397 Fix progress.
937916e Fix reconnect to postgres if connection failed.
e9fe82c Fix refresh interval logic.
0e7514d Fix statements report queries which produces wrong totals and ratios.
c260d08 Fix typo, fix TODO, add another TODO.
45c8bf0 GH Actions: run release workflow only on pushes to 'release' branch.
026b1b5 Help screen edits.
5122663 Introduce new mainLoop() instead of uiLoop(). New loop uses channel approach - one stats collector goroutine collects stats and send it over channel to printer goroutine.
69cfccf Make Configure method of query.Options as a object constructor.
4842aa9 Make lib/ as deprecated.
5548ea0 Make the following functions workings: change refresh interval.
b35e7dd Make the following functions workings: open configs in PAGER, EDITOR programs.
9524cff Make the following functions workings: switching between columns, switch sort order, change width.
662b513 Make the following functions workings: switching to pg_stat_statements/pg_stat_progress_* views using menus.
b371223 Make the following functions workings: toggle all/user tables, change query age.
cc89c7e Make the following functions workings: toggle show idle connections.
9cc2da7 Make views completely switchable.
4ab0d0b Make views switching possible.
9813ec8 Makefile: remove race target, run tests with '-parallel 1' to avoid terminating concurrent postgres processes when executing 'Test_killGroup'.
3fa7bdf Merge pull request #83 from dmfay/master
c31f2c0 Minor edits of comments, message templates, errors.
28d958f Minor edits of ethtool.go.
7f0df1b Minor edits of top/help.
d767ee7 Minor edits of top/menu, add comments, error handling, add TODOs, add test.
15d02b1 Minor edits of top/pgconfig, edit comments, add error handling.
4a1b4e9 Minor edits, add comments, function rearrangement.
5604376 Move all queries into separate package.
d7f7639 Move changeRefresh to top/config_view; add tests.
a582ab8 Move global var into app struct.
a865f64 Move menu-related global variables into config.
e1e18eb Move pgcenter.go into cmd package.
6d07e79 Profile refactoring: add test for cmd/profile.
0b6ffea Profile refactoring: refactor state-changing logic.
85f1868 Profile refactoring: remove global vars, remove use of goroutines, use ticker in loop logic, print data to io.Writer.
d933542 Profile refactoring: reorganize logic, add tests.
5bd48bd Profile: enable command. Minor edits in sub-command settings.
6a44ab7 Record: fix continuous recording when running with no startup options/args. Don't close recorder's file descriptor when signalled, it's already done before 'select'.
a2ff31a Record: rename 'collector' interface to 'recorder'.
4621041 Record: rename 'truncate' cmd option to 'append' - keep the same as in previous versions.
d5585a8 Record: use timer instead of ticker to avoid saving files with duplicated timestamps.
91d0992 Refactor Makefile targets.
72484f2 Refactoring 'stat' module: implement cpu usage stats.
86b37bf Refactoring 'stat' module: implement meminfo stats.
00b21bb Refactoring 'stat' module: implement root structures, add loadavg stats.
cf07ecc Refactoring postgres stat code.
cf18efe Refactoring top/extra: remove 'aux', add comments, simplify switch-wrapped logic.
310a78d Refactoring top/pgkill: add tests.
ff0c3e1 Refactoring: add error handling.
620a11b Refactoring: add proper postgres connection closing on tests.
d079dce Refactoring: add tests, minor edits.
70a75cc Refactoring: enable 'config' sub-command.
9eaed79 Refactoring: fix disabling extra stats.
5919fdb Refactoring: increase string limit.
4350663 Refactoring: move errSaved global variable into 'app'.
df010ac Refactoring: remove cmdTimer global variable, replace global const with in-place variables.
b28bf54 Refactoring: rename doExit to uiExit, remove doUpdate, reorganize exit handler, add tests.
2c001b1 Remove 'context' entity. Introduce 'view' instead and put it to the config. View is a configurable entity which define reflect program behaviour.
c5f7a8b Remove 'util' argument in query.NewOptions; fix unused StringLimit option in record.
c786241 Remove TODOs related to diskstats/netdev - don't need to fix them. Adjust comments.
fba76eb Remove deprecated code, tidy go.mod.
0ed6739 Remove deprecated uiLoop().
59cac19 Remove global variables in 'top' command: #2 refactor input args in way to moving to use pgx module.
80f3f1c Remove global variables in 'top' command: #3 remove almost all global vars.
38166b9 Remove global variables: #1 move sync.WaitGroup into uiLoop().
8c9d7ea Remove unnecessary constants.
508d29a Remove unnecessary travis and old goreleaser configs; attempt to fix test which hangs when executing under GH Actions.
2469d98 Rename func and struct names; add 'app' container.
9e82f5e Rename top/error -> top/errrate, make type/method private, add tests.
55a0c57 Report: add initial tests.
cdca194 Report: enable 'describe' functionality.
9897848 Report: enable order functionality.
e6b2483 Report: fix 'today' dependant tests.
ee04c0a Report: fix cmd short parameter for rate; refactor start/end time processing; fix ordering stats; add more tests.
b1ca314 Report: fix descriptions for start/end options.
1456357 Report: reorder structs fields; add print header report function; adjust help message accordingly to changes.
e4bfe70 Report: round rate interval that less than 1 seconds.
be3509b Return error if empty query passed to NewPGresult.
60b53e3 Return fake queryid for pg_stat_statements - it provides uniqueness using single column.
f6744c9 Revert changes of showHelp().
f7b55f7 Silence errors and usage messages produced by cmd lib (native errors returned by sub-commands are kept).
bd2a794 Simplify views creation: format queries when configure views.
1758b9f Store native config in DB struct instead of driver-specific.
c2cd663 Switching to new refactored functions; remove obsoleted code.
174ea15 Temporarily disable all commands except 'top'.
d3904e1 Testing, setup dedicated testing environment: - make tests avoid to run against service listening on standard (5432) port. - add pgcenter-testing Dockerfile considered for testing purposes. - converge tests execution in docker image and local execution.
6b4b9d0 Tidy go.mod, minor edits.
4f26fcb Tiny edits in cmd.
2c89c76 Top: add query selector for activity query of pg_stat_statements.
9449144 Top: fix keeping of extra stats after using external utils (psql, pager, editor).
7b7a298 Top: fix printing errors when reading stats failed.
c69faab Top: move code to create info string into dedicated function.
6dff5ba Top: refactor dialogPrompts global variable to function.
c332fd7 Top: unify dialog-related handlers.
31532c3 Top: use native queryid in pg_stat_statements views, refactor query reports.
15b9708 Update Dockerfile.
b2e6321 Use value instead of pointer when working with postgres.Config and TestConfig.
a4630e7 When user changes 'view', pass it from UI goroutine to stats goroutine.
46c3b93 merge refactoring branch
9b40a73 postgres connection options processing: fix ignore of PGPORT libpq env var; add processing for PGOPTIONS env var.
08da5d4 preserve spacing when collapsing multiline queries
1350546 record: add 'collector' interface, wrap all tar-based logic into tarCollector; add tests.
d274e4c record: adjust cmd help strings; use millisecond interval when using 'oneshot' - ticker panics when getting zero durat...
v0.6.6
v0.6.5
Changelog
7ee17a8 Merge branch 'dev'
7fd386c Merge branch 'issue-73' into dev
107801a Merge pull request #68 from lesovsky/dev
043994d Merge pull request #69 from lesovsky/dev
8904129 Merge pull request #70 from lesovsky/dev
59c9394 avoid passing zeroes to column widthes when do aligning
89be232 fix LDFLAGS in goreleaser config
8b71426 fix goreleaser changes - it breaks travis builds
7bd2d79 fix report query (G hothkey)
12127bc prepare 0.6.5 - update Changelog
152fb71 simplify Makefile, make cmd-related variables unexported
638491b tidy go modules
v0.6.4
v0.6.3
Changelog
6340c1f Accept /proc/diskstat metrics with extra fields.
e555ab8 Merge branch 'dev'
c333d5a Merge pull request #64 from alexeyklyukin/diskstat_newer_kernels
ac9aedc added help description about pg_stat_progress_create_index view
7eb887f added menu for switching between progress stats in top utility
40c0f46 added pg_stat_progress_cluster stats to top/record/report utils
b669964 added pg_stat_progress_create_index stats
6923412 added stats context related to pg_stat_progress_cluster view
ea40b86 added support for pg_stat_database.checksum_failures
d170322 adjust header's styles of iostat/nicstat tabs in top utility
77db2dd another try of aligning refactoring - skip aligning if no rows in result set - don't truncate long values, such as names
6f040cf avoid rude disconnection from postgres at top-program exit
e7d9a77 describe "pgcenter config" doc more verbosely
73c4701 fix crashes when postgres is not running
477538e fix units
4c84af6 implemented switching between two progress stats
e5480d9 improve input args for progress stats in report utility
e41c3c8 inject version info at build time
20c8ef7 moved psql hotkey from 'p' to '~'
8bef0e0 readme/changelog changes
5276228 report: print header at the beginning of the output
4a36439 rethinking pg_stat_progress_vacuum query: - wait events merged into single column - changed order of columns - move 'wait events' after 'state' - changed totals to percents for scanned and vacuumed numbers changed reports' buitin docs
v0.6.2
Changelog
91d51a1 Cursor handling improvements
4f61f75 Hide cursor when canceling operation
2250063 Merge pull request #60 from kjoe/dev
0738f4a Merge pull request #61 from kjoe/dev
b854b03 Merge pull request #63 from kjoe/feature/cursor
07db7eb Quitting from help and main screens with 'q' key
b363876 fix code formatting, misspeling, etc.
bd9690e fixed acidentally used case-sensitive pattern matching when accounting number of user-started vacuums
450bc6c record/report: extend "--help" messages
388b682 record/report: improve aligning and truncation of pg_stat_statements.query
f9b1499 reworked pg_stat_statements queries
e71ec38 rewrite PQconnectdb using connection setup in a loop
59e4bd9 top-like UI highlighting improvements
c1293cf top: do polling pg_stat_statements only if it's available (issue #59)
8f1f0a8 top: fixed handling of libpq errors during connection establishment
0079bfd top: printLogtail() tiny refactoring, removed unnecessary retval
ef35a4e top: read remote stats only if pgcenter schema exists
5e5565e top: removed notes about deprecated hotkeys; issue #57
a5aa203 v0.6.2