Denny Ye created FLUME-1484:
-------------------------------

             Summary: Flume support throughput in Agent, Source, Sink level at 
JMX
                 Key: FLUME-1484
                 URL: https://issues.apache.org/jira/browse/FLUME-1484
             Project: Flume
          Issue Type: Improvement
          Components: Node, Sinks+Sources
    Affects Versions: v1.2.0
            Reporter: Denny Ye


>From user's view of point, we would like to know the current throughput from 
>one of monitoring tools. WebUI is best, of course. JMX is simple way to 
>implement throughput monitoring. 

Agent should have input and output throughput based on several Sources and 
Sinks.

Here is just simple code in my environment to monitoring throughput of Source.
{code:title=ThroughputCounter.java|borderStyle=solid}
import java.util.concurrent.atomic.AtomicInteger;

import org.apache.flume.instrumentation.SourceCounter;

public class ThroughputCounter {
  private volatile boolean isRunning;     
  private AtomicInteger cache = new AtomicInteger();
          
  SourceCounter sourceCounter;
  public ThroughputCounter(SourceCounter sourceCounter) {
    this.sourceCounter = sourceCounter;
  }
          
  public void start() {
    isRunning = true;
            
    Counter counter = new Counter();
    counter.start();
  }
          
  public void stop() {
    isRunning = false;
  }
          
          
  public void addWriteBytes(int bytes) {
    cache.getAndAdd(bytes);
  }
          
  private class Counter extends Thread {
            
    Counter() {
      super("ThroughputCounterThread"); 
    }
                
    public void run() {
      while (isRunning) {
        try {
          Thread.sleep(1000);
          sourceCounter.incrementSourceThroughput(
cache.getAndSet(0));
        } catch (Exception e) {
          e.printStackTrace();
        }
      }
    }
  }
          
}
{code} 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to