Monitora a memória do aplicativo java dentro do Cloud Foundry

1

Eu tenho um aplicativo Java que estou implantando em um ambiente do Cloud Foundry. Eu quero monitorar o uso de memória do aplicativo. O Cloud Foundry fornece o comando cf app que produz saída sobre cada instância do aplicativo especificado. Aqui você pode ver informações sobre um aplicativo específico com duas instâncias em execução (expurgadas):

$ cf app myapp
Showing health and status for app myapp in org myorg / space myspace as admin...
OK

requested state: started
instances: 2/2
usage: 1G x 2 instances
urls: myapp.example.com
last uploaded: Wed Jan 27 09:00:53 UTC 2016
stack: mylinuxstack
buildpack: myjavabuildpack

     state     since                    cpu    memory         disk      details
#0   running   2016-01-27 09:01:31 AM   0.4%   689.8M of 1G   0 of 1G
#1   running   2016-02-03 05:35:03 PM   0.0%   624.2M of 1G   0 of 1G

No entanto, as métricas de memória parecem apenas relatar a quantidade de memória usada pelos processos em execução no contêiner do Cloud Foundry. Se você já lidou com o monitoramento de aplicativos Java, está ciente de que as JVMs acabarão consumindo, potencialmente, a quantidade de memória que você disse que elas podem ter, mesmo se o aplicativo Java não estiver usando. (Em outras palavras, ele faz seu próprio gerenciamento de memória.) Isso significa que o processo java real pode estar consumindo 1 GB de memória, mas isso não significa que ele está prestes a ficar sem memória.

Na minha experiência, o monitoramento útil da utilização da memória do aplicativo Java depende da obtenção de dados da própria JVM, por meio de algo como o JMX (como por exemplo, jconsole ). No entanto, o Cloud Foundry parece não fornecer informações sobre onde o aplicativo está sendo executado. (Na verdade, encontrei algumas pessoas afirmando que o Cloud Foundry explicitamente não lhe contará essas informações.) E isso significa que não tenho onde conectar um cliente JMX.

Se eu quiser monitorar a utilização de memória dos meus aplicativos Java no Cloud Foundry, como devo fazer isso? Sinta-se à vontade para refutar qualquer uma das minhas reivindicações, se você souber melhor.

    
por wfaulk 03.02.2016 / 18:56

1 resposta

0

Consegui encontrar conexões diretas com as instâncias consultando o URL /routes do Cloud Foundry .

    
por 08.02.2016 / 15:59