You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by nc...@apache.org on 2014/04/09 19:09:58 UTC

git commit: AMBARI-5408. Flume: add Ganglia monitoring properties to start script (ncole)

Repository: ambari
Updated Branches:
  refs/heads/trunk 386199a71 -> 343d78c65


AMBARI-5408.  Flume: add Ganglia monitoring properties to start script (ncole)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/343d78c6
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/343d78c6
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/343d78c6

Branch: refs/heads/trunk
Commit: 343d78c65b792a4793bd1c1679817a3b24b1d628
Parents: 386199a
Author: Nate Cole <nc...@hortonworks.com>
Authored: Wed Apr 9 12:01:48 2014 -0400
Committer: Nate Cole <nc...@hortonworks.com>
Committed: Wed Apr 9 12:01:48 2014 -0400

----------------------------------------------------------------------
 .../HDP/2.0.6/services/FLUME/metrics.json       | 588 +++++++++++++++++++
 .../services/FLUME/package/scripts/flume.py     |   8 +-
 .../services/FLUME/package/scripts/params.py    |   4 +
 .../python/stacks/2.0.6/FLUME/test_flume.py     |   4 +-
 4 files changed, 602 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/343d78c6/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/metrics.json
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/metrics.json b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/metrics.json
new file mode 100644
index 0000000..c560d2a
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/metrics.json
@@ -0,0 +1,588 @@
+{
+  "FLUME_HANDLER": {
+    "Component": [
+        {
+        "type": "ganglia",
+        "metrics": {
+          "metrics/boottime":{
+            "metric":"boottime",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/cpu/cpu_aidle":{
+            "metric":"cpu_aidle",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/cpu/cpu_idle":{
+            "metric":"cpu_idle",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/cpu/cpu_nice":{
+            "metric":"cpu_nice",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/cpu/cpu_num":{
+            "metric":"cpu_num",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/cpu/cpu_speed":{
+            "metric":"cpu_speed",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/cpu/cpu_system":{
+            "metric":"cpu_system",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/cpu/cpu_user":{
+            "metric":"cpu_user",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/cpu/cpu_wio":{
+            "metric":"cpu_wio",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/disk/disk_free":{
+            "metric":"disk_free",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/disk/disk_total":{
+            "metric":"disk_total",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/disk/part_max_used":{
+            "metric":"part_max_used",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/gcCount":{
+            "metric":"jvm.metrics.gcCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/gcTimeMillis":{
+            "metric":"jvm.metrics.gcTimeMillis",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/logError":{
+            "metric":"jvm.metrics.logError",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/logFatal":{
+            "metric":"jvm.metrics.logFatal",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/logInfo":{
+            "metric":"jvm.metrics.logInfo",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/logWarn":{
+            "metric":"jvm.metrics.logWarn",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/maxMemoryM":{
+            "metric":"jvm.metrics.maxMemoryM",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/memHeapCommittedM":{
+            "metric":"jvm.metrics.memHeapCommittedM",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/memHeapUsedM":{
+            "metric":"jvm.metrics.memHeapUsedM",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/memNonHeapCommittedM":{
+            "metric":"jvm.metrics.memNonHeapCommittedM",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/memNonHeapUsedM":{
+            "metric":"jvm.metrics.memNonHeapUsedM",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/threadsBlocked":{
+            "metric":"jvm.metrics.threadsBlocked",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/threadsNew":{
+            "metric":"jvm.metrics.threadsNew",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/threadsRunnable":{
+            "metric":"jvm.metrics.threadsRunnable",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/threadsTerminated":{
+            "metric":"jvm.metrics.threadsTerminated",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/threadsTimedWaiting":{
+            "metric":"jvm.metrics.threadsTimedWaiting",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/threadsWaiting":{
+            "metric":"jvm.metrics.threadsWaiting",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/CHANNEL/$2/ChannelCapacity":{
+            "metric":"(\\w+).CHANNEL.(\\w+).ChannelCapacity",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/CHANNEL/$2/StartTime":{
+            "metric":"(\\w+).CHANNEL.(\\w+).StartTime",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/CHANNEL/$2/EventTakeAttemptCount":{
+            "metric":"(\\w+).CHANNEL.(\\w+).EventTakeAttemptCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/CHANNEL/$2/EventTakeSuccessCount":{
+            "metric":"(\\w+).CHANNEL.(\\w+).EventTakeSuccessCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/CHANNEL/$2/EventPutAttemptCount":{
+            "metric":"(\\w+).CHANNEL.(\\w+).EventPutAttemptCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/CHANNEL/$2/StopTime":{
+            "metric":"(\\w+).CHANNEL.(\\w+).StopTime",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/CHANNEL/$2/ChannelFillPercentage":{
+            "metric":"(\\w+).CHANNEL.(\\w+).ChannelFillPercentage",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/CHANNEL/$2/ChannelSize":{
+            "metric":"(\\w+).CHANNEL.(\\w+).ChannelSize",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/CHANNEL/$2/EventPutSuccessCount":{
+            "metric":"(\\w+).CHANNEL.(\\w+).EventPutSuccessCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/ConnectionCreatedCount":{
+            "metric":"(\\w+).SINK.(\\w+).ConnectionCreatedCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/BatchCompleteCount":{
+            "metric":"(\\w+).SINK.(\\w+).BatchCompleteCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/EventDrainSuccessCount":{
+            "metric":"(\\w+).SINK.(\\w+).EventDrainSuccessCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/StartTime":{
+            "metric":"(\\w+).SINK.(\\w+).StartTime",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/EventDrainAttemptCount":{
+            "metric":"(\\w+).SINK.(\\w+).EventDrainAttemptCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/ConnectionFailedCount":{
+            "metric":"(\\w+).SINK.(\\w+).ConnectionFailedCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/BatchUnderflowCount":{
+            "metric":"(\\w+).SINK.(\\w+).BatchUnderflowCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/ConnectionClosedCount":{
+            "metric":"(\\w+).SINK.(\\w+).ConnectionClosedCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/StopTime":{
+            "metric":"(\\w+).SINK.(\\w+).StopTime",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/BatchEmptyCount":{
+            "metric":"(\\w+).SINK.(\\w+).BatchEmptyCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SOURCE/$2/AppendBatchReceivedCount":{
+            "metric":"(\\w+).SOURCE.(\\w+).AppendBatchReceivedCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SOURCE/$2/AppendAcceptedCount":{
+            "metric":"(\\w+).SOURCE.(\\w+).AppendAcceptedCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SOURCE/$2/StartTime":{
+            "metric":"(\\w+).SOURCE.(\\w+).StartTime",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SOURCE/$2/OpenConnectionCount":{
+            "metric":"(\\w+).SOURCE.(\\w+).OpenConnectionCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SOURCE/$2/AppendBatchAcceptedCount":{
+            "metric":"(\\w+).SOURCE.(\\w+).AppendBatchAcceptedCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SOURCE/$2/AppendReceivedCount":{
+            "metric":"(\\w+).SOURCE.(\\w+).AppendReceivedCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SOURCE/$2/EventReceivedCount":{
+            "metric":"(\\w+).SOURCE.(\\w+).EventReceivedCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SOURCE/$2/StopTime":{
+            "metric":"(\\w+).SOURCE.(\\w+).StopTime",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SOURCE/$2/EventAcceptedCount":{
+            "metric":"(\\w+).SOURCE.(\\w+).EventAcceptedCount",
+            "pointInTime":true,
+            "temporal":true
+          }
+        }
+      }
+    ],
+    "HostComponent": [
+      {
+        "type": "ganglia",
+        "metrics": {
+          "metrics/boottime":{
+            "metric":"boottime",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/cpu/cpu_aidle":{
+            "metric":"cpu_aidle",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/cpu/cpu_idle":{
+            "metric":"cpu_idle",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/cpu/cpu_nice":{
+            "metric":"cpu_nice",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/cpu/cpu_num":{
+            "metric":"cpu_num",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/cpu/cpu_speed":{
+            "metric":"cpu_speed",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/cpu/cpu_system":{
+            "metric":"cpu_system",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/cpu/cpu_user":{
+            "metric":"cpu_user",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/cpu/cpu_wio":{
+            "metric":"cpu_wio",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/disk/disk_free":{
+            "metric":"disk_free",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/disk/disk_total":{
+            "metric":"disk_total",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/disk/part_max_used":{
+            "metric":"part_max_used",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/gcCount":{
+            "metric":"jvm.metrics.gcCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/gcTimeMillis":{
+            "metric":"jvm.metrics.gcTimeMillis",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/logError":{
+            "metric":"jvm.metrics.logError",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/logFatal":{
+            "metric":"jvm.metrics.logFatal",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/logInfo":{
+            "metric":"jvm.metrics.logInfo",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/logWarn":{
+            "metric":"jvm.metrics.logWarn",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/maxMemoryM":{
+            "metric":"jvm.metrics.maxMemoryM",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/memHeapCommittedM":{
+            "metric":"jvm.metrics.memHeapCommittedM",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/memHeapUsedM":{
+            "metric":"jvm.metrics.memHeapUsedM",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/memNonHeapCommittedM":{
+            "metric":"jvm.metrics.memNonHeapCommittedM",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/memNonHeapUsedM":{
+            "metric":"jvm.metrics.memNonHeapUsedM",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/threadsBlocked":{
+            "metric":"jvm.metrics.threadsBlocked",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/threadsNew":{
+            "metric":"jvm.metrics.threadsNew",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/threadsRunnable":{
+            "metric":"jvm.metrics.threadsRunnable",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/threadsTerminated":{
+            "metric":"jvm.metrics.threadsTerminated",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/threadsTimedWaiting":{
+            "metric":"jvm.metrics.threadsTimedWaiting",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/jvm/threadsWaiting":{
+            "metric":"jvm.metrics.threadsWaiting",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/CHANNEL/$2/ChannelCapacity":{
+            "metric":"(\\w+).CHANNEL.(\\w+).ChannelCapacity",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/CHANNEL/$2/StartTime":{
+            "metric":"(\\w+).CHANNEL.(\\w+).StartTime",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/CHANNEL/$2/EventTakeAttemptCount":{
+            "metric":"(\\w+).CHANNEL.(\\w+).EventTakeAttemptCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/CHANNEL/$2/EventTakeSuccessCount":{
+            "metric":"(\\w+).CHANNEL.(\\w+).EventTakeSuccessCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/CHANNEL/$2/EventPutAttemptCount":{
+            "metric":"(\\w+).CHANNEL.(\\w+).EventPutAttemptCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/CHANNEL/$2/StopTime":{
+            "metric":"(\\w+).CHANNEL.(\\w+).StopTime",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/CHANNEL/$2/ChannelFillPercentage":{
+            "metric":"(\\w+).CHANNEL.(\\w+).ChannelFillPercentage",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/CHANNEL/$2/ChannelSize":{
+            "metric":"(\\w+).CHANNEL.(\\w+).ChannelSize",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/CHANNEL/$2/EventPutSuccessCount":{
+            "metric":"(\\w+).CHANNEL.(\\w+).EventPutSuccessCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/ConnectionCreatedCount":{
+            "metric":"(\\w+).SINK.(\\w+).ConnectionCreatedCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/BatchCompleteCount":{
+            "metric":"(\\w+).SINK.(\\w+).BatchCompleteCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/EventDrainSuccessCount":{
+            "metric":"(\\w+).SINK.(\\w+).EventDrainSuccessCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/StartTime":{
+            "metric":"(\\w+).SINK.(\\w+).StartTime",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/EventDrainAttemptCount":{
+            "metric":"(\\w+).SINK.(\\w+).EventDrainAttemptCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/ConnectionFailedCount":{
+            "metric":"(\\w+).SINK.(\\w+).ConnectionFailedCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/BatchUnderflowCount":{
+            "metric":"(\\w+).SINK.(\\w+).BatchUnderflowCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/ConnectionClosedCount":{
+            "metric":"(\\w+).SINK.(\\w+).ConnectionClosedCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/StopTime":{
+            "metric":"(\\w+).SINK.(\\w+).StopTime",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SINK/$2/BatchEmptyCount":{
+            "metric":"(\\w+).SINK.(\\w+).BatchEmptyCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SOURCE/$2/AppendBatchReceivedCount":{
+            "metric":"(\\w+).SOURCE.(\\w+).AppendBatchReceivedCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SOURCE/$2/AppendAcceptedCount":{
+            "metric":"(\\w+).SOURCE.(\\w+).AppendAcceptedCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SOURCE/$2/StartTime":{
+            "metric":"(\\w+).SOURCE.(\\w+).StartTime",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SOURCE/$2/OpenConnectionCount":{
+            "metric":"(\\w+).SOURCE.(\\w+).OpenConnectionCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SOURCE/$2/AppendBatchAcceptedCount":{
+            "metric":"(\\w+).SOURCE.(\\w+).AppendBatchAcceptedCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SOURCE/$2/AppendReceivedCount":{
+            "metric":"(\\w+).SOURCE.(\\w+).AppendReceivedCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SOURCE/$2/EventReceivedCount":{
+            "metric":"(\\w+).SOURCE.(\\w+).EventReceivedCount",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SOURCE/$2/StopTime":{
+            "metric":"(\\w+).SOURCE.(\\w+).StopTime",
+            "pointInTime":true,
+            "temporal":true
+          },
+          "metrics/flume/$1/SOURCE/$2/EventAcceptedCount":{
+            "metric":"(\\w+).SOURCE.(\\w+).EventAcceptedCount",
+            "pointInTime":true,
+            "temporal":true
+          }
+        }
+      }
+    ]
+  }
+}

http://git-wip-us.apache.org/repos/asf/ambari/blob/343d78c6/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/package/scripts/flume.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/package/scripts/flume.py b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/package/scripts/flume.py
index cd3676e..a24ad4a 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/package/scripts/flume.py
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/package/scripts/flume.py
@@ -58,8 +58,14 @@ def flume(action = None):
       flume_agent_conf_file = flume_agent_conf_dir + os.sep + "flume.conf"
       flume_agent_pid_file = params.flume_run_dir + os.sep + agent + ".pid"
 
+      # TODO someday make the ganglia ports configurable
+      extra_args = ''
+      if params.ganglia_server_host is not None:
+        extra_args = '-Dflume.monitoring.type=ganglia -Dflume.monitoring.hosts={0}:{1}'
+        extra_args = extra_args.format(params.ganglia_server_host, '8655')
+
       flume_cmd = flume_base.format(agent, flume_agent_conf_dir,
-         flume_agent_conf_file, "")
+         flume_agent_conf_file, extra_args)
 
       Execute(flume_cmd, wait_for_finish=False)
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/343d78c6/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/package/scripts/params.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/package/scripts/params.py b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/package/scripts/params.py
index 6e65d55..cdfd08c 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/package/scripts/params.py
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/package/scripts/params.py
@@ -44,3 +44,7 @@ if (('flume-log4j' in config['configurations']) and ('content' in config['config
 else:
   flume_log4j_content = None
 
+ganglia_server_hosts = default("/clusterHostInfo/ganglia_server_host", [])
+ganglia_server_host = None
+if 0 != len(ganglia_server_hosts):
+  ganglia_server_host = ganglia_server_hosts[0]

http://git-wip-us.apache.org/repos/asf/ambari/blob/343d78c6/ambari-server/src/test/python/stacks/2.0.6/FLUME/test_flume.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/python/stacks/2.0.6/FLUME/test_flume.py b/ambari-server/src/test/python/stacks/2.0.6/FLUME/test_flume.py
index 4c557ad..48920e1 100644
--- a/ambari-server/src/test/python/stacks/2.0.6/FLUME/test_flume.py
+++ b/ambari-server/src/test/python/stacks/2.0.6/FLUME/test_flume.py
@@ -46,7 +46,9 @@ class TestFlumeHandler(RMFTestCase):
     self.assertResourceCalled('Execute', format('env JAVA_HOME=/usr/jdk64/jdk1.7.0_45 /usr/bin/flume-ng agent '
       '--name a1 '
       '--conf /etc/flume/conf/a1 '
-      '--conf-file /etc/flume/conf/a1/flume.conf '),
+      '--conf-file /etc/flume/conf/a1/flume.conf '
+      '-Dflume.monitoring.type=ganglia '
+      '-Dflume.monitoring.hosts=c6401.ambari.apache.org:8655'),
       wait_for_finish = False)
 
     self.assertResourceCalled('Execute', 'pgrep -f /etc/flume/conf/a1/flume.conf > /var/run/flume/a1.pid',