0

spring-cloud 構成サーバーから構成をフェッチする spring.boot アプリケーションを実行しています。アプリケーションは非常に単純で、Oracle データベースにアクセスする REST API です。アプリケーション コンテキストには、Hihari プールでラップされた Oracle データソースがあります。

/actuator/health を実行すると、データベースのヘルス チェックはトリガーされません。出力:

{
  status: "UP",
  components: {
    clientConfigServer: {
      status: "UP",
      details: {
        propertySources: [
          "configClient",
          "/var/git-repo/xxx/xxx-localhost.yml",
          "/var/git-repo/application-localhost.properties",
          "/var/git-repo/xxx/xxx.yml",
          "/var/git-repo/application.properties"
        ]
      }
    },
    discoveryComposite: {
      description: "Discovery Client not initialized",
      status: "UNKNOWN",
      components: {
        discoveryClient: {
          description: "Discovery Client not initialized",
          status: "UNKNOWN"
        }
      }
    },
    diskSpace: {
      status: "UP",
      details: {
        total: 1587526397952,
        free: 1272794873856,
        threshold: 10485760
      }
    },
    ping: {
      status: "UP"
    },
    refreshScope: {
      status: "UP"
    }
  }
}

ただし、構成サーバーをオフにして、代わりに spring.cloud.config.enabled=false を介してローカル構成を使用すると、出力は次のようになります。

{
  status: "UP",
  components: {
    db: {
      status: "UP",
      details: {
        database: "Oracle",
        result: "Hello",
        validationQuery: "SELECT 'Hello' from DUAL"
      }
    },
    discoveryComposite: {
      description: "Discovery Client not initialized",
      status: "UNKNOWN",
      components: {
        discoveryClient: {
          description: "Discovery Client not initialized",
          status: "UNKNOWN"
        }
      }
    },
    diskSpace: {
      status: "UP",
      details: {
        total: 1587526397952,
        free: 1272794869760,
        threshold: 10485760
      }
    },
    ping: {
      status: "UP"
    },
    refreshScope: {
      status: "UP"
    }
  }
}

これには説明があると確信していますが、見つけられないようですので、助けていただければ幸いです。

4

1 に答える 1