1
# This Perl script open connection and call domains
# $jar stands for path of jmxterm jar file

open JMX, "| java -jar jmxterm-1.0-alpha-4-uber.jar -n"; // jmx jar file 
#print JMX "help \n";

my $host = "127.0.0.1"; // hostname
my $port = 7199; //jmx port number

print JMX "open $host:$port\n";
#print JMX "domains\n";
print JMX "domain org.apache.cassandra.request\n";
print JMX "bean type=ReadRepairStage\n";
print JMX "get CompletedTasks\n"; 
print JMX "close\n";
close JMX;

現在、私は出力を取得しておりCompletedTasks = 1234、必要1234です。

4

2 に答える 2

0

open単純な方法で双方向通信を確立することはできません。詳細については、 IPC::Open2を参照してください。

于 2013-01-15T12:21:00.173 に答える
0

Jmx4Perlは、JMX 情報にアクセスするための完全な Perl API を提供します。ここでは JVM を起動する必要はありませんが、Jolokiaエージェントをインストールする必要があります (ただし、エージェントレスプロキシ モードもあります)。

エージェントは単純な JSON および HTTP を介して JMX API を公開するため、純粋なシェル スクリプトを使用してエージェントにアクセスすることも簡単にできます。

于 2013-01-16T09:02:32.440 に答える