0

プールされたデータソースでSpring Bootを使用しています

datasource:
  type: org.apache.tomcat.jdbc.pool.DataSource
  driverClassName: com.mysql.jdbc.Driver
  url:  ...
  username: ...
  password: ...
  tomcat:
    max-active: 50
    max-idle: 50
    testOnBorrow: true
    validationQuery: select 1;
    validationInterval: 30000

ログファイルには次の行が 10 回含まれているため、この構成は適切に解釈されます。

16:27:52.191 [] [  restartedMain] DEBUG g.apache.tomcat.jdbc.pool.PooledConnection - Instantiating driver using class: com.mysql.jdbc.Driver [url=...]

その後、アプリケーションの使用を開始し、いくつかのデータベース リクエストを行いました。DAO 実装は、Spring によって自動配線された JPAContext および EntityManager を使用しており、データベースから期待される結果を完全に返します。

@Autowired
private JpaContext jpaContext;

@Autowired
private EntityManager em;

EntityManager em = jpaContext.getEntityManagerByManagedType(DownloadHistoryItemCustomEntity.class);
Query q = em.createNativeQuery(query, DownloadHistoryItemCustomEntity.class);

ただし、Spring Boot メトリックは、その単一のデータソースの使用状況を示していません

http://localhost:8080/metrics    
  "datasource.primary.active": 0,
  "datasource.primary.usage": 0.0

値 > 0 がないのはなぜですか?
ゼロより大きい値を期待します!
「プライマリ」は正しいデータソースではありませんか?

ドミニク

4

1 に答える 1