Question: We are developing microservices using java (Spring and Spring Boot), and the access to our Oracle DB is done via the JDBC Oracle Driver.

The problem is that our DBAs can only see on the Oracle side that a "JDBC Thin Client" is connected. There is no better, logical representation of the connected application. Without such identification, it is hard to know which microservice might be behaving badly. Other non-JDBC clients identify themselves clearly with the hostname.

Is there any way to change the identification String so that it represents a clear identity of the source application/process?

Note: Our system runs on Cloud Foundry which uses containers, so a it's not really possible to provide a machine name or anything like that - a logical application name would be preferred.

Thanks

Answer: 
Thank you everyone for your suggestions,
I have tried them all and sadly they did not work.

This is probably since I am connection using Spring Data and the default Hikari connection pool.

After spending hours on it, the final solution was found here: [Spring Boot 1.3.5 with Hikari Connection Pool not able to set program name in v$session](https://stackoverflow.com/questions/41129486/spring-boot-1-3-5-with-hikari-connection-pool-not-able-to-set-program-name-in-v)

```
spring:
  datasource:
    hikari:
      data-source-properties:
         v$session.program: AppName

```

Simple, no code changes, and it works!
The JDBC connection property "`oracle.jdbc.v$session.process`" can be set (as a system prop -D) to a value that uniquely identifies your microservice and that can then be retrieved in the V$SESSION view ("process" column).