org.apache.flume.source.http
Class HTTPSource

java.lang.Object
  extended by org.apache.flume.source.AbstractSource
      extended by org.apache.flume.source.http.HTTPSource
All Implemented Interfaces:
Configurable, EventDrivenSource, LifecycleAware, NamedComponent, Source

public class HTTPSource
extends AbstractSource
implements EventDrivenSource, Configurable

A source which accepts Flume Events by HTTP POST and GET. GET should be used for experimentation only. HTTP requests are converted into flume events by a pluggable "handler" which must implement the HTTPSourceHandler interface. This handler takes a HttpServletRequest and returns a list of flume events. The source accepts the following parameters:

port: port to which the server should bind. Mandatory

handler: the class that deserializes a HttpServletRequest into a list of flume events. This class must implement HTTPSourceHandler. Default: JSONDeserializer.

handler.* Any configuration to be passed to the handler.

All events deserialized from one Http request are committed to the channel in one transaction, thus allowing for increased efficiency on channels like the file channel. If the handler throws an exception this source will return a HTTP status of 400. If the channel is full, or the source is unable to append events to the channel, the source will return a HTTP 503 - Temporarily unavailable status. A JSON handler which converts JSON objects to Flume events is provided.


Constructor Summary
HTTPSource()
           
 
Method Summary
 void configure(Context context)
           Request the implementing class to (re)configure itself.
 void start()
           Starts a service or component.
 void stop()
           Stops a service or component.
 
Methods inherited from class org.apache.flume.source.AbstractSource
getChannelProcessor, getLifecycleState, getName, setChannelProcessor, setName, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.apache.flume.Source
getChannelProcessor, setChannelProcessor
 
Methods inherited from interface org.apache.flume.lifecycle.LifecycleAware
getLifecycleState
 
Methods inherited from interface org.apache.flume.NamedComponent
getName, setName
 

Constructor Detail

HTTPSource

public HTTPSource()
Method Detail

configure

public void configure(Context context)
Description copied from interface: Configurable

Request the implementing class to (re)configure itself.

When configuration parameters are changed, they must be reflected by the component asap.

There are no thread safety guarrantees on when configure might be called.

Specified by:
configure in interface Configurable

start

public void start()
Description copied from interface: LifecycleAware

Starts a service or component.

Implementations should determine the result of any start logic and effect the return value of LifecycleAware.getLifecycleState() accordingly.

Specified by:
start in interface LifecycleAware
Overrides:
start in class AbstractSource

stop

public void stop()
Description copied from interface: LifecycleAware

Stops a service or component.

Implementations should determine the result of any stop logic and effect the return value of LifecycleAware.getLifecycleState() accordingly.

Specified by:
stop in interface LifecycleAware
Overrides:
stop in class AbstractSource


Copyright © 2009-2012 Apache Software Foundation. All Rights Reserved.