Zespół Heroku rozwiązał ten problem, a teraz Dyno Manager dodaje zmienne środowiskowe przechowujące DYNO
, które przechowują identyfikator Twojego Dyno, np. web.1
, web.2
, foo.1
itd. Jednak zmienna nadal jest zmienna lub podlega eksperymentalna i może ulec zmianie lub usunięciu.
Wartość tej zmiennej można uzyskać za pomocą System.getenv(String)
w Javie.
Przykład:
final String dynoId = System.getenv("DYNO");
final Matcher matcher = Pattern.compile("(\\w+)\\.(\\d+)").matcher(dynoId);
String id = null;
if(matcher.find()) {
id = matcher.group(2); // returns index: 1
// matcher.group(1) - returns name: web
}
Mam nadzieję, że pomoże
dobra wskazówka! Sądzę, że masz na myśli "PS" (nie "PS1", który jest podpowiedzią). – rewbs
Dzięki. Następnie awansuj :-) Właściwie mam na myśli PS1, chyba że zmienił go w międzyczasie. –
Tak, przegrałem. :) Mogę potwierdzić, że nazwa dyno jest zdecydowanie w "PS", a nie w "PS1". – rewbs