diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml index 8e2a2c5d73685aa4b6bd61d2fe88232008601804..d014bb5738049a415914c457cb68f641d2bd480b 100644 --- a/doc/src/sgml/config.sgml +++ b/doc/src/sgml/config.sgml @@ -3504,7 +3504,12 @@ local0.* /var/log/postgresql </row> <row> <entry><literal>%u</literal></entry> - <entry>User name</entry> + <entry>Login user name</entry> + <entry>yes</entry> + </row> + <row> + <entry><literal>%U</literal></entry> + <entry>Current user name</entry> <entry>yes</entry> </row> <row> diff --git a/src/backend/utils/error/elog.c b/src/backend/utils/error/elog.c index a1a449f2ddcfa710702dce767ea0ca515c5d6645..49d9236767d573745b6d0a523050ce46e10ccc4f 100644 --- a/src/backend/utils/error/elog.c +++ b/src/backend/utils/error/elog.c @@ -1826,6 +1826,16 @@ log_line_prefix(StringInfo buf, ErrorData *edata) appendStringInfoString(buf, username); } break; + case 'U': + if (MyProcPort) + { + const char *username = GetUserNameFromId(GetUserId()); + + if (username == NULL || *username == '\0') + username = _("[unknown]"); + appendStringInfoString(buf, username); + } + break; case 'd': if (MyProcPort) {