在Heroku上,您可以在应用程序中以编程方式获取当前正在执行代码的dyno的某种标识符吗?例如,dyno名称(例如"web.1"或"worker.1")或其他一些id.
如果是,如何在Java中执行此操作?
总是有机器的主机名(看起来像d.LONG_GUID.我想(虽然没有尝试)这应该工作:
String localhostname = java.net.InetAddress.getLocalHost().getHostName();
另外,一个鲜为人知的秘密,但你可以通过查看环境变量的值来获取"web.1","web.2"id PS1
String hostId = System.getenv("PS1")
编辑 2013年7月26日
根据Heroku更改日志,本地环境变量DYNO现在替换PS,替换PS1.