Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vmoNu-00GWEC-2X for pgsql-announce@arkaria.postgresql.org; Mon, 02 Feb 2026 07:30:11 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vmoNs-00CLc7-2q for pgsql-announce@arkaria.postgresql.org; Mon, 02 Feb 2026 07:30:09 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vmoNs-00CLbw-0O for pgsql-announce@lists.postgresql.org; Mon, 02 Feb 2026 07:30:08 +0000 Received: from mahout.postgresql.org ([2001:4800:3e1:1::227]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1vmoNq-00000000dY0-1eMt for pgsql-announce@lists.postgresql.org; Mon, 02 Feb 2026 07:30:08 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=postgresql.org; s=20171124; h=Message-ID:Date:Reply-To:From:To:Subject: MIME-Version:Content-Type:Sender:Cc:Content-Transfer-Encoding:Content-ID: Content-Description:In-Reply-To:References; bh=k7d0JSLxPTAEgEcienIFXVe0PJh0ZxhvORUKS0R612w=; b=duvsLw2D4t5zYqfvxh/wkOtJ56 RS0/i8sKb+ew9iCZft9BF+bjB7aAiMZhOT/xbXYvtFBygjCuHy+L2QDWvWlBJhHtRB5QBvyZxJQD7 GhCIZIYEweDC6+X8Ca1dFDjqdKN9Ak/X6acyOKyTpnC6y0cEHTD9QG98mAl5kecBAHuY9RCvye4hn fcCdXIaKIGU7IHYvRVyYig2Uzif0S0WUp9cmqU0AEWVKrldBe/ymYNCLiSymoKA3Ma1V6r+pbJh4s +tF9uYVjZLE83WRFkHMSJ2uVNJFB5SYCHybqM8zUbchec1GzCcdxPb+eoAuqW/dJARPsFz9mEXtCS hNM8fkTA==; Received: from wrigleys.postgresql.org ([2a02:16a8:dc51::60]) by mahout.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vmoNo-001o4v-2m for pgsql-announce@lists.postgresql.org; Mon, 02 Feb 2026 07:30:05 +0000 Received: from localhost ([127.0.0.1] helo=wrigleys.postgresql.org) by wrigleys.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vmoNn-003Am5-14 for pgsql-announce@lists.postgresql.org; Mon, 02 Feb 2026 07:30:04 +0000 Content-Type: multipart/alternative; boundary="===============1294765992908703205==" MIME-Version: 1.0 Subject: pg-status: microservice for checking the status of PostgreSQL hosts To: PostgreSQL Announce From: Andrei Krylosov via PostgreSQL Announce Reply-To: krylosov.andrew@gmail.com Date: Mon, 02 Feb 2026 07:30:02 +0000 Message-ID: <177001740210.807.12923434630011843879@wrigleys.postgresql.org> X-Auto-Response-Suppress: All Auto-Submitted: auto-generated X-pglister-tags: related X-pglister-tagsig: 8844bd1b122a0be17084e3e930dea36cf60fd882563833a275dcae948bbdd90b List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --===============1294765992908703205== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hi all! I'd like to share a small open=E2=80=91source project I've been working on:= [pg-status](https://github.com/krylosov-aa/pg-status). pg-status is a lightweight microservice (sidecar) that helps you instantly = determine the status of your PostgreSQL hosts: whether they are alive, whic= h one is the master, which ones are replicas, and how far each replica is l= agging behind the master. It's designed to run alongside your main application. It's lightweight, res= ource=E2=80=91efficient, and delivers high performance. You can query it on= every request without noticeable overhead. pg-status polls your database hosts in the background at a configurable int= erval and exposes an HTTP interface that you can use to retrieve hosts matc= hing given conditions. I originally built it to speed up master detection in a multi=E2=80=91host = setup where DNS failover was too slow, but it's also handy for proxy setups= or custom load=E2=80=91balancing logic. More information is available on GitHub: https://github.com/krylosov-aa/pg-= status Feedback and discussion are very welcome. I'd love to hear your thoughts! Best regards, =20 Andrei Krylosov --===============1294765992908703205== Content-Type: text/html; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable pg-status: microservice for checking the status of PostgreSQL ho= sts
 

pg-status: microservice for checking the status of PostgreSQL hosts

Hi all!

I'd like to share a small open=E2=80=91sour= ce project I've been working on: pg-status.

pg-status is a lightweight microservice (si= decar) that helps you instantly determine the status of your PostgreSQL hos= ts: whether they are alive, which one is the master, which ones are replica= s, and how far each replica is lagging behind the master.

It's designed to run alongside your main ap= plication. It's lightweight, resource=E2=80=91efficient, and delivers high = performance. You can query it on every request without noticeable overhead.=

pg-status polls your database hosts in the = background at a configurable interval and exposes an HTTP interface that yo= u can use to retrieve hosts matching given conditions.

I originally built it to speed up master de= tection in a multi=E2=80=91host setup where DNS failover was too slow, but = it's also handy for proxy setups or custom load=E2=80=91balancing logic.

More information is available on GitHub: ht= tps://github.com/krylosov-aa/pg-status

Feedback and discussion are very welcome. I= 'd love to hear your thoughts!

Best regards,
Andrei Krylosov

This email was sent to you from Andrei Krylosov. It was delivered on their = behalf by the PostgreSQL project. Any questions about the content of the message shou= ld be sent to Andrei Krylosov.

You were sent this email as a subscriber of the pgsql-announce mai= linglist, for the content tag Related Open Source. To unsubscribe from further emails, or change which emails you want to receive, please click th= e personal unsubscribe link that you can find in the headers of this email, or visit https://lists.postgresql.org/unsubscribe/.
 
--===============1294765992908703205==--