feat: Add resolved host to "Listening on ..." messages (#3560)

This adds resolved host's IP to "Listening on ..." messages emitted when
app and admin servers start.
This commit is contained in:
Andrei Dziahel
2024-08-01 11:31:35 -05:00
committed by GitHub
parent 48edab24c6
commit 46537879ae
7 changed files with 45 additions and 8 deletions
+17
View File
@@ -0,0 +1,17 @@
module PostgREST.Network
( resolveHost
) where
import Data.IP (fromHostAddress, fromHostAddress6)
import Data.String (IsString (..))
import qualified Network.Socket as NS
import Protolude
resolveHost :: NS.Socket -> IO (Maybe Text)
resolveHost sock = do
sn <- NS.getSocketName sock
case sn of
NS.SockAddrInet _ hostAddr -> pure $ Just $ fromString $ show $ fromHostAddress hostAddr
NS.SockAddrInet6 _ _ hostAddr6 _ -> pure $ Just $ fromString $ show $ fromHostAddress6 hostAddr6
_ -> pure Nothing