ServerGenius CPU consumption is above expected. What can I do?

1) Check for updates

Please check regularly for updates, as most of them offer performance improvements. We recommend you to apply ServerGenius updates out of working hours since the update may perform long running background operations on the database.

ServerGenius latest update is always available from the following direct link.

A database will always take all computing resources available to complete requests as soon as possible. Therefore, it is recommended to size ServerGenius server according to its usage.

Please find below our recommendations based on the number of monitored servers:

Monitored servers CPU Memory (RAM)
1-2 2 8
3-4 4 16
5+ 8 32


Installing ServerGenius on an SSD type disk drive is recommended for better performance.

Also, you may need to allocate additional disk space for ServerGenius Server, depending on the number of servers and websites monitored, and coincidelly the amount of data collected and stored in the PostgreSQL database.

Finally, please note that it is generally a good idea to run a monitoring application such as ServerGenius on a dedicated server. This prevents other applications to reduce available resources.

3) Customize database configuration

ServerGenius relies on PostgreSQL database engine. The PostgreSQL database configuration file can be customized based on the server's hardware configuration to enable optimal performance.

The following information are required to build your custom configuration file:

  • Memory (RAM)
  • Number of CPUs
  • Storage type (HDD, SSD or SAN)

Several websites are able to generate the most relevant configuration file based on these information, such as https://pgtune.leopard.in.ua.

For example, please find below a recommended configuration for a 2 CPU, 8 GB RAM server using HDD storage:

# DB Version: 10
# Total Memory (RAM): 8 GB
# CPUs num: 2
# Data Storage: hdd

max_connections = 20
shared_buffers = 512MB
effective_cache_size = 6GB
maintenance_work_mem = 512MB
checkpoint_completion_target = 0.7
wal_buffers = 16MB
default_statistics_target = 100
random_page_cost = 4
work_mem = 128MB
min_wal_size = 1GB
max_wal_size = 2GB
max_worker_processes = 2
max_parallel_workers_per_gather = 1
max_parallel_workers = 2

Note: ServerGenius uses PostgreSQL version 10

These settings should be replaced in the database configuration file located at: C:\Program Files (x86)\RDS-Tools\ServerGenius\pgsql\data\postgresql.conf. Then, the service ServerGeniusDatabase must be restarted for the changes to take effect.

4) Rebuild database indexes

A database index is a data structure that improves the speed of data retrieval operations on a database. Indexes are used to quickly locate data without having to search every row in a database table every time a database table is accessed.

We recommend you to rebuild database indexes periodically in order to speed up data access. This maintenance task may take a while and we recommend you to proceed outside of working hours. From an elevated command prompt, navigate to the ServerGenius\pgsql\bin directory and enter the following command:

C:\Program Files (x86)\RDS-Tools\ServerGenius\pgsql\bin>
    psql -U postgres -p 7779 -d servergenius
        -c "REINDEX DATABASE servergenius"

When prompted for a password, type password. This operation may take up to an hour and may increase performance dramatically.

5) Contact our customer support

If all the above recommendations failed to provide you an acceptable experience with ServerGenius, please do not hesitate to contact our customer support and raise a ticket at https://terminalserviceplus.freshdesk.com. We will be happy to help you regain control of your ServerGenius installation.

In order to facilitate our technical support and to reproduce your issue, we might ask you an export of your database.

In order to do so, from an elevated command prompt, navigate to the ServerGenius\pgsql\bin directory and enter the following command:

C:\Program Files (x86)\RDS-Tools\ServerGenius\pgsql\bin>
    pg_dump.exe -p 7779 -U postgres servergenius export1.dump

When prompted for a password, type password.

Once the export has finished, please share us the file located at C:\Program Files (x86)\RDS-Tools\ServerGenius\pgsql\export1.dump with any file transfer service.