Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Typos, grammar #93

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 16 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ pgCenter is a command-line admin tool for observing and troubleshooting Postgres

---
#### Main goal
Postgres provides various activity statistics about its runtime, such as connections, statements, database operations, replication, resources usage and more. General purpose of the statistics is to help DBAs to monitor and troubleshoot Postgres. However, these statistics provided in textual form retrieved from SQL functions and views, and Postgres doesn't provide native tools for working with statistics views.
Postgres provides various activity statistics about its runtime, such as connections, statements, database operations, replication, resources usage, and more. The general purpose of the statistics is to help DBAs to monitor and troubleshoot Postgres. However, these statistics provided in textual form retrieved from SQL functions and views, and Postgres doesn't provide native tools for working with statistics views.

pgCenter's main goal is to help Postgres DBA working with statistics and provide a convenient way to observe Postgres in runtime.

Expand All @@ -32,10 +32,10 @@ pgCenter's main goal is to help Postgres DBA working with statistics and provide
- Configuration management function allows viewing and editing of current configuration files and reloading the service, if needed.
- Logfiles functions allow you to quickly check Postgres logs without stopping statistics monitoring.
- "Poor man’s monitoring" allows you to collect Postgres statistics into files and build reports later on. See details [here](doc/pgcenter-record-readme.md).
- Wait events profiler allows to see what wait events occur during queries execution. See details [here](doc/pgcenter-profile-readme.md).
- Wait events profiler allows seeing what wait events occur during queries execution. See details [here](doc/pgcenter-profile-readme.md).

#### Supported statistics
When troubleshooting Postgres it's always important to keep an eye not only on Postgres metrics, but also system metrics, since Postgres utilizes system resources, such as cpu, memory, storage and network when working. pgCenter allows you to see both kinds of statistics related to Postgres and your system.
When troubleshooting Postgres, it's always important to keep an eye on not only Postgres metrics, but also system metrics, since Postgres utilizes system resources, such as cpu, memory, storage and network when working. pgCenter allows you to see both kinds of statistics related to Postgres and your system.

##### PostgreSQL statistics
pgCenter supports majority of statistics views available in Postgres, and at the same time, uses additional SQL functions applied to statistics to show these in a more convenient way. The following stats are available:
Expand All @@ -58,44 +58,44 @@ pgCenter supports majority of statistics views available in Postgres, and at the
##### System statistics
`pgcenter top` also provides system usage information based on statistics from `procfs` filesystem:

- load average and CPU usage time (user, system, nice, idle, iowait, software and hardware interrupts, steal);
- load average and CPU usage time (user, system, nice, idle, iowait, software, and hardware interrupts, steal);
- memory and swap usage, amount of cached and dirty memory, writeback activity;
- storage devices statistics: iops, throughput, latencies, average queue and requests size, devices utilization;
- network interfaces statistics: throughput in bytes and packets, different kind of errors, saturation and utilization.

In case of connecting to remote Postgres there is possibility to use additional SQL functions used for retrieving `/proc` statistics from remote host. For more information see details [here](doc/pgcenter-config-readme.md).
In the case of connecting to remote Postgres, there is possibility to use additional SQL functions used for retrieving `/proc` statistics from a remote host. For more information, see details [here](doc/pgcenter-config-readme.md).

#### Install notes
Check out [releases](https://github.com/lesovsky/pgcenter/releases) page. Pgcenter could be installed using package managers - RPM, DEB, APK packages are available. Also, a precompiled version is available in `.tar.gz` archive.

Additional information and usage examples available [here](doc/examples.md).

Fore development and testing purposes, see development [notes](doc/development.md).
For development and testing purposes, see development [notes](doc/development.md).

#### Usage notes
- pgCenter has been developed to work on Linux and hasn't been tested on other OS (operating systems), therefore, it is not recommended to use it on alternative systems because it will not operate properly.
- pgCenter has been developed to work on Linux and hasn't been tested on other OS (operating systems); therefore, it is not recommended to use it on alternative systems because it will not operate properly.
- pgCenter can also be run using Docker.
- pgCenter supports a wide range of PostgreSQL versions, despite of difference in statistics between each version. If pgCenter is unable to read a particular stat, it will show a descriptive error message.
- ideally, pgCenter requires `SUPERUSER` database privileges, or at least privileges that will allow you to view statistics, read settings, logfiles and send signals to other backends. Roles with such privileges (except reading logs) have been introduced in Postgres 10, see details [here](https://www.postgresql.org/docs/current/static/default-roles.html).
- it is recommended to run pgCenter on the same host where Postgres is running. This is because for Postgres pgCenter is just a simple client application and it may have the same problems as other applications that work with Postgres, such as network-related problems, slow responses, etc.
- it is possible to run pgCenter on one host and connect to Postgres which runs on another host, but some functions may not work - this fully applies to `pgcenter top` command.
- pgCenter also supports Amazon RDS for PostgreSQL, but as mentioned above, some functions will not work and also system stats will not be available, because of PostgreSQL RDS instances don't support untrusted procedural languages due to security reasons.
- pgCenter supports a wide range of PostgreSQL versions, despite the difference in statistics between each version. If pgCenter is unable to read a particular stat, it will show a descriptive error message.
- ideally, pgCenter requires `SUPERUSER` database privileges, or at least privileges that will allow you to view statistics, read settings, logfiles and send signals to other backends. Roles with such privileges (except reading logs) have been introduced in Postgres 10; see details [here](https://www.postgresql.org/docs/current/static/default-roles.html).
- it is recommended to run pgCenter on the same host where Postgres is running. This is because for Postgres, pgCenter is just a simple client application, and it may have the same problems as other applications that work with Postgres, such as network-related problems, slow responses, etc.
- it is possible to run pgCenter on one host and connect to Postgres, which runs on another host, but some functions may not work - this fully applies to `pgcenter top` command.
- pgCenter also supports Amazon RDS for PostgreSQL, but as mentioned above, some functions will not work, and also system stats will not be available because PostgreSQL RDS instances don't support untrusted procedural languages due to security reasons.

#### Contribution
- PR's are welcome.
- Ideas could be proposed [here](https://github.com/lesovsky/pgcenter/discussions).
- About grammar issues or typos let me know [here](https://github.com/lesovsky/pgcenter/discussions/92).
- About grammar issues or typos, let me know [here](https://github.com/lesovsky/pgcenter/discussions/92).

#### Development and testing
The following notes are important for people who interested in developing new features.
The following notes are important for people who are interested in developing new features.
- pgcenter goes with special docker [image](https://hub.docker.com/repository/docker/lesovsky/pgcenter-testing) used for local and CI/CD testing. See [testing](./testing) directory for details.
- see [docs](./doc/development.md) about how to deploy environment for local development.

#### Known issues
pgCenter is quite stable software, but not all functionality is covered by tests and in some circumstances, errors or panics may occur. When panics occur please do let me know - this helps me in making necessary changes and improve this software. To make sure that I can reproduce an issue you’ve been having and can address it accordingly please follow these steps:
pgCenter is quite stable software, but not all functionality is covered by tests, and in some circumstances, errors or panics may occur. When panics occur, please do let me know - this helps me in making necessary changes and improve this software. To make sure that I can reproduce an issue you’ve been having and can address it accordingly, please follow these steps:

- build pgCenter from the master branch and try to reproduce the bug/crash.
- create an [issue](https://github.com/lesovsky/pgcenter/issues) using issue template and follow recommendations described in the template.
- create an [issue](https://github.com/lesovsky/pgcenter/issues) using the issue template and follow the recommendations described in the template.

#### Thanks
- Thank you for using pgCenter!
Expand Down