私はデフォルトの hadoop-metrics2.properties ファイルを探していましたが、JMX 経由で利用可能なすべてのメトリックを公開するだけですが、見つかりませんでした。
1.0.3 に同梱されている現在のファイルはまったく空で、パッケージ情報を参照していますが、メトリック クラスの名前は明らかにされていません。
リモート監視用に JMX を有効にするために、hadoop-metrics2.properties ファイルを変更する必要はありません。代わりに、次のようなものを開始スクリプトに追加する必要がありますHADOOP_NAMENODE_OPTS="-Dcom.sun.management.jmxremote.port=8004"
(その例はhadoop-env.sh
ファイルに入れることができます)。
JMX メトリクスの公開に加えて、すべての JMX メトリクスはhttp://namenode-host:50070/jmx のHTTP (この例では namenode) 経由で利用できることに注意してください。
ローカル JMX 接続を介して Hadoop メトリックを表示する場合、追加の構成変更は必要ありません。jconsole
ローカル インスタンスで実行するだけです。
(10秒ごとにメトリックがダンプされるようにmetrics2.propertiesに以下を追加すると、ファイルは$ HADOOP_HOME / logsディレクトリにあります)
*.sink.file.class=org.apache.hadoop.metrics2.sink.FileSink
*.period=10
namenode.sink.file.filename=./logs/namenode-metrics.out
datanode.sink.file.filename=./logs/datanode-metrics.out
jobtracker.sink.file.filename=./logs/jobtracker-metrics.out
tasktracker.sink.file.filename=./logs/tasktracker-metrics.out