44

I want to set the application name of the connections of my application. So when I list the rows in pg_stat_activity I can have a non empty application_name column.

I have setup the following JDBC url for connecting to my Postgresql database:

jdbc:postgresql://localhost:5435/MyDB?application-name=MyApp

I have tried also this url with no more success.

jdbc:postgresql://localhost:5435/MyDB?application_name=MyApp

What is the correct parameter name ?

Here is my JDBC driver version: 9.1-901.jdbc4

Stephan
  • 41,764
  • 65
  • 238
  • 329
  • 2
    http://stackoverflow.com/questions/7145908/display-application-name-in-session-information-when-connecting-via-jdbc –  Oct 07 '13 at 12:30
  • have you tried to pass the application_name with properties?! –  Oct 07 '13 at 12:31
  • @user2511414 I have already checked the question you suggest. properties is not an option. – Stephan Oct 07 '13 at 12:39

1 Answers1

68

Looking at the PostgreSQL JDBC 9.1 documentation, connection parameters, the correct property name in the JDBC url is ApplicationName:

ApplicationName = String

Specifies the name of the application that is using the connection. This allows a database administrator to see what applications are connected to the server and what resources they are using through views like pg_stat_activity

So try:

jdbc:postgresql://localhost:5435/MyDB?ApplicationName=MyApp

Be aware some comments suggest that this is broken in the 9.1 version driver. Given it is a more than 5 year old version, you should upgrade to a newer version anyway. Check https://jdbc.postgresql.org/ for the latest version and use that.

Community
  • 1
  • 1
Mark Rotteveel
  • 100,966
  • 191
  • 140
  • 197