Active Threads JBoss 7

Vericando Informações Sobre Memória e Threads Utilizando CLI no JBoss AS 7.1.1

Postado em Atualizado em

Acredito que todo profissional que trabalhe com tecnologia sempre está a procura de performance para seus sistemas ou servidores.  No ambiente JBoss em que trabalho sempre procuro verificar  como está o consumo de memória, quantidade de threads utilizadas,  número de sessões ativas entre outras coisas.

No JBoss AS 7 podemos utilizar o CLI para fazer um monitoramento  básico mas que não deixa de ser importante e bem útil caso não esteja disponível nenhum recurso como RHQ Server (JON), Zabbix, etc.

Então vamos lá. Primeiro conecte-se ao CLI executando o script ${JBOSS_HOME}/bin/jboss-cli.sh -c. 

Para pegar a quantidade de threads ativas  execute:

[domain@localhost:9999 /] /core-service=platform-mbean/type=threading:read-resource(include-runtime=true)
{
 "outcome" => "success",
 "result" => {
 "all-thread-ids" => [
 9L,
(so deixei alguns ids como exemplo)
 6L,
 3L,
 2L
 ],
 "thread-contention-monitoring-supported" => true,
 "thread-cpu-time-supported" => true,
 "current-thread-cpu-time-supported" => true,
 "object-monitor-usage-supported" => true,
 "synchronizer-usage-supported" => true,
 "thread-contention-monitoring-enabled" => false,
 "thread-cpu-time-enabled" => true,
 "thread-count" => 74,
 "peak-thread-count" => 122,
 "total-started-thread-count" => 143L,
 "daemon-thread-count" => 27,
 "current-thread-cpu-time" => 3500000L,
 "current-thread-user-time" => 3016000L
 }
}

Informações sobre uso da memória:

[domain@localhost:9999 /] /core-service=platform-mbean/type=memory:read-resource(include-runtime=true)
{
 "outcome" => "success",
 "result" => {
 "heap-memory-usage" => {
 "init" => 536870912L,
 "used" => 23390968L,
 "committed" => 535232512L,
 "max" => 1067057152L
 },
 "non-heap-memory-usage" => {
 "init" => 12750848L,
 "used" => 45296920L,
 "committed" => 45355008L,
 "max" => 570425344L
 },
 "object-pending-finalization-count" => 0,
 "verbose" => false
 }
}

Informações sobre o sistema operacional:

[domain@localhost:9999 /] /core-service=platform-mbean/type=operating-system:read-resource
{
 "outcome" => "success",
 "result" => {
 "name" => "Mac OS X",
 "arch" => "i386",
 "version" => "10.8.2",
 "available-processors" => 4,
 "system-load-average" => 1.58203125
 }
}

Informações que sobre  as configurações do protocolo http:

[domain@localhost:9999 /] /subsystem=web/connector=http:read-resource(include-runtime=true)
{
 "outcome" => "success",
 "result" => {
 "bytesReceived" => "0",
 "bytesSent" => "0",
 "enable-lookups" => false,
 "enabled" => true,
 "errorCount" => "0",
 "executor" => undefined,
 "max-connections" => undefined,
 "max-post-size" => 2097152,
 "max-save-post-size" => 4096,
 "maxTime" => "0",
 "name" => "http",
 "processingTime" => "0",
 "protocol" => "HTTP/1.1",
 "proxy-name" => undefined,
 "proxy-port" => undefined,
 "redirect-port" => 8433,
 "requestCount" => "0",
 "scheme" => "http",
 "secure" => false,
 "socket-binding" => "http",
 "ssl" => undefined,
 "virtual-server" => undefined
 }
}

Podemos obter muitas mais informações utilizando o CLI, basta explorá-lo.

Espero que tenha ajudado.

Abs