私の DropWizard ( v0.7.0 ) アプリには、次のDummyHealthCheck
ようなものがあります。
public class DummyHealthCheck extends HealthCheck {
@Override
protected Result check() throws Exception {
return Result.healthy();
}
}
次に、メインのApplication
実装で:
public class MyApplication extends Application<MyConfiguration> {
@Override
public void run(MyConfiguration configuration, Environment environment)
throws Exception {
environment.jersey().register(new DummyHealthCheck());
}
}
サーバーを起動すると、正常に起動します (例外/エラーなし) が、次のメッセージが表示されます。
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! THIS APPLICATION HAS NO HEALTHCHECKS. THIS MEANS YOU WILL NEVER KNOW !
! IF IT DIES IN PRODUCTION, WHICH MEANS YOU WILL NEVER KNOW IF YOU'RE !
! LETTING YOUR USERS DOWN. YOU SHOULD ADD A HEALTHCHECK FOR EACH OF YOUR !
! APPLICATION'S DEPENDENCIES WHICH FULLY (BUT LIGHTLY) TESTS IT. !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
しかし、私が見に行くときhttp://localhost:8081/healthcheck
:
{"deadlocks":{"healthy":true}}
- ここで何が起こっているのですか?健康診断の登録方法を教えてください。
- また、ポート 8443 で SSL (自己署名) を使用するように DropWizard を構成しました。これが通常のエンドポイントで機能することを確認しました。しかし、私の管理アプリがまだ 8081 over HTTP で公開されていることに驚いています。HTTPS 用にも設定するにはどうすればよいですか?