Skip to content

Manage your servers

The Servers page lists every server in your organization. This page says what the list and the server page show. It also covers renaming a server, reading the activity chart, and what deleting a server removes.

The agent on your server sends Guardioz a snapshot about once an hour: one set of readings taken from PostgreSQL and from the machine. The status, the hardware cards and the activity chart are built from those snapshots. See When the agent collects.

In your browser, sign in to Guardioz at https://app.guardioz.com/. In the top navigation, select Servers. The page is titled PostgreSQL Servers and holds one row per server, the newest first.

Column What it shows
Status A coloured dot that shows how old the newest snapshot is. Point at the dot to read the same text as Last seen.
Name The name of the server in Guardioz. Registration sets it to the host name that the installer read. You can change it.
Host The host name of the machine, as the installer read it at registration. Registration gives the Name the same value.
Port The port of the PostgreSQL instance that the installer registered.
Database Registration sets this field to postgres. It is a label on the server record: it does not decide which databases the agent reads, so changing it changes nothing about the collection.
PG Version The PostgreSQL version string read at registration.
Last seen The age of the newest snapshot: Never, Just now for less than a minute, then minutes, hours or days.
Actions Edit and Delete for that server.

Selecting a row opens that server. A row that has keyboard focus opens with Enter. The server’s name is also a link, so you can open the server in a new tab. The Edit and Delete buttons do not open the server. On a narrow screen, such as a phone, the table scrolls sideways inside its own box.

To monitor one more server, select + Add server and follow Install the agent. The number of servers an organization can register depends on its plan: 3 on the Free plan, 5 on the Team plan, and no limit on the Scale plan. On the Free and Team plans the setup page shows how many servers your organization has and how many the plan includes. See Limits.

The dot shows how recent the newest snapshot for that server is, and nothing else. It does not report whether the agent service runs, and it does not report what the checks found. A grey dot means that no snapshot has arrived for this server yet.

The agent sends one snapshot per hour, so the newest snapshot is normally up to an hour old and the dot stays green. The dot turns yellow when no snapshot has arrived for 90 minutes: the hourly snapshot is late. It turns red after 150 minutes, when two hourly snapshots in a row did not arrive. It turns green again when the next snapshot arrives.

A yellow or red dot does not tell why the snapshots are missing. Read Last seen for how long the server has been silent, open the server page for what Guardioz knows about the silence, and then read the agent’s log: see Check that the agent works.

The server page shows the same state in words next to the dot, and the Findings page names every server in its view that has a red dot. See When snapshots stop arriving.

Guardioz sends no email when the dot turns yellow or red, and none when PostgreSQL or the server stops. In Guardioz, the dot, Last seen, the server page and the line on the Findings page show that snapshots stopped arriving, so look at them yourself. See Email alerts.

Select a row to open the server page. It shows the server record and the newest profile of the machine, which the notice on this page calls an OS snapshot. It shows no findings: those live on the Findings page.

The main parts of the page, from top to bottom, are:

  • the server name, the host with its port, the status dot with the same state in words, and the buttons Activity and Edit. The words are one of Last snapshot with its age, Snapshot late, last one with its age (yellow dot), No snapshot for with how long (red dot), and No snapshot yet (grey dot);
  • a notice when the dot is yellow or red. See When snapshots stop arriving;
  • a line with Host:, User: (the monitoring role that the agent connects as), PostgreSQL: and Databases:. SSH: appears only when an SSH host is set and differs from the host;
  • the cards CPU, Memory, Disk and System. CPU, Memory and System are built from the newest profile of the machine, and a value that Guardioz does not have shows as -. Disk shows the size, the used space and the free space of the file system that holds the PostgreSQL data directory, from the newest snapshot that tried to measure it, and the time of that measurement under Measured:. It is the same measurement that the max_wal_size check reads. When that snapshot could not measure the disk, the card reads Free space: not measured and shows no older number. The System card ends with Machine profile:, the time of the profile the cards come from, and Host clock:, the time the machine’s own clock showed when it was taken;
  • the section Data collection, last 30 days: the gaps between snapshots and the PostgreSQL starts that the snapshots show. See When snapshots stop arriving;
  • a tab named Memory: how much of the server’s RAM is given to the database cache, which is the shared_buffers setting. When the total size of the databases is known, the tab also shows how much of that data fits in the cache;
  • the button Delete server.

PostgreSQL: and Databases: are written when the server is registered, and again when an installer run reconnects to the same server. A minor upgrade, or a database created later, does not change them.

The agent sends a profile of the machine when it registers the server, and then once a week. A change in the hardware appears in the CPU, Memory and System cards after the next weekly collection, or as soon as you run a collection by hand. The agent measures the disk with every snapshot, so the Disk card follows the hourly snapshots. See When the agent collects.

Two parts of the page report a missing input instead of a number. Without a profile of the machine, the four cards are replaced by this notice:

No OS snapshot data available. OS snapshot is collected automatically during server registration.

Without the server’s total RAM or its cache setting, the Memory tab reads:

Memory metrics not available. Settings snapshot required.

Each notice disappears after the next snapshot that carries the data that part needs. The cards need the profile of the machine, which travels once a week. The Memory tab needs the machine’s total RAM, which comes from that same profile, and the cache setting, which travels with every collection. To get that data now instead of waiting, run one collection by hand: see Manage the agent service.

When no snapshot has arrived for 90 minutes, a notice under the server name says that the hourly snapshot is late. After 150 minutes the notice turns red and says how long no snapshot has arrived and when the last one arrived. Nothing on the server page, and none of the findings for that server, is newer than that last snapshot.

When the agent runs but cannot connect to PostgreSQL, or cannot finish a collection, it sends a short report instead of a snapshot. The notice then says what the last report said, for example The agent reported that it could not connect to PostgreSQL (PostgreSQL refused the password of the monitoring role)., and when the last report arrived. A report that arrived in the last 150 minutes means the agent was running then, so the cause is on the server: see The agent log reports Error during collection cycle. What a report carries is on What the agent reads and sends.

When neither a snapshot nor a report has arrived, the notice says so and does not guess why: the machine can be off, the agent service can be stopped, or the server cannot reach Guardioz. An agent installed before the reports were added sends none, so for it a stopped PostgreSQL looks the same; updating the agent adds them, see Update the agent. Check the server: see Check that the agent works.

The section Data collection, last 30 days lists, newest first:

  • every gap, a time of more than 150 minutes between two snapshots, with its start, its end and how long it lasted. A gap that is still going on ends at Now;
  • every start of the machine and of PostgreSQL that the snapshots and the reports show. Each snapshot carries the time PostgreSQL last started and the time the machine last started, so a change between two of them is a restart, with its exact time. A start during a gap is written on the gap’s row. PostgreSQL was not restarted. and The machine was not restarted. on a gap’s row mean that the snapshots on both sides of the gap carry the same start time. When either snapshot could not read that time, the row says nothing about it;
  • the reports of collections without a snapshot. Reports in a row, with no snapshot between them, are one entry, with their number and the words of the last one. Reports during a gap are written on the gap’s row;
  • the first snapshot from the server, when it arrived in those 30 days.

When there is no gap in that time, the section says that a snapshot arrived at least every 150 minutes since the start of the 30 days, or since the first snapshot when the server is newer. The section is built from the snapshots that Guardioz already stored, so it does not ask your server for anything.

The Name is what you see in the list, on the server page and in the filters on the Findings page. Registration sets it to the host name, and you can replace it with the name you use for that server.

The Edit form changes only the record in Guardioz. It does not reconfigure the agent, it does not change where the agent connects, and it does not change which databases the agent reads. To change where the agent connects, edit the agent’s configuration file on your server: see Agent configuration.

  1. In the Servers list, select the server’s row. The server page opens.

  2. Select Edit. The form opens with the current values.

  3. In the Name field, enter the new name.

  4. Select Save changes. Guardioz returns to the server page with the new name.

Field What it is
Host, Port The host name of the machine and the port of the PostgreSQL instance, as the installer reported them at registration. A port is a number between 1 and 65535.
Database The same field as the Database column in the Servers list: a label on the server record that does not decide which databases the agent reads.
DB user The monitoring role that the agent connects as.
SSH (optional) The fields Host SSH, SSH user and Port SSH are notes on the server record: they hold how you reach the server yourself. Guardioz does not open an SSH connection to your server. Leave them empty when you do not need them.

Guardioz has no field for the password of the monitored database. The agent keeps the password of the monitoring role in its own configuration file on your server. See Agent configuration.

An installer run that reconnects to this server replaces Host, Port and DB user with what the installer reports. The Name stays as you set it.

The chart shows how many transactions one database committed and rolled back between two snapshots, so you can see when the server is busy.

  1. In the Servers list, select the server’s row. The server page opens.

  2. Select Activity. The chart opens.

  3. In the Database: list, select a database.

    The list holds every database name that appears in this server’s snapshots, except template0 and template1. Guardioz opens the database with the most transactions and remembers your choice in this browser for this server.

The legend holds Commits, Rollbacks and Total. Only Total is drawn at first; select a name in the legend to add that line. The horizontal axis is Time, labelled in the time zone of your account, and the vertical axis is Transactions. You choose that time zone in Account Settings: see Manage your account.

Each point is the difference between two consecutive snapshots, so one point covers one collection interval. The chart draws the whole stored history and has no time range to choose. It carries this caption:

Transactions per snapshot interval (delta of cumulative xact_commit + xact_rollback).

xact_commit and xact_rollback are PostgreSQL’s own counters for committed and rolled back transactions. They count up until the statistics are reset, so the chart draws the difference between two snapshots and not the running total.

In four cases the page shows a message instead of a line.

What you see What it means
No activity data available yet. Data will appear after the agent collects snapshots. No per-database statistics have arrived for this server yet.
Not enough data yet with This chart fills in once the agent has sent at least 2 snapshots. One point needs two snapshots. The second one arrives with the next collection.
No transactions recorded with This database has been idle - no commits or rollbacks in this period. The database was idle over the whole stored history.
Could not load activity with Something went wrong - refresh the page to try again. The page could not read the data. Reload the page.

Deleting a server removes from Guardioz:

  • the server record and its collector key - the credential the agent sends with every snapshot, which is why Guardioz refuses the snapshots of a deleted server;
  • every snapshot collected for it, and every profile of its host;
  • every finding, and the history of its settings.

Nothing on the server itself is removed. The agent keeps running and keeps sending. Guardioz refuses each of those snapshots, and the agent writes this line on every cycle:

Authentication failed (HTTP 401). Check collector_key.
  1. Remove the agent from the server. See Remove Guardioz from a server.

  2. In the Servers list, select Delete in the server’s row. On the server page the same action is Delete server.

  3. Confirm in the browser dialog:

    Are you sure you want to delete server SERVER_NAME?

    SERVER_NAME is the name in the Name column. Guardioz deletes the server and returns to the Servers list.

When you delete your last server, the Servers list opens and shows that no server is left. Selecting Findings then takes you to the page that adds a server. If you install the agent on that server again later, Guardioz registers a new server, which starts without the history.