I think the problem is in your json, while you are sending an array on events, the event doesn't match what Flume expects which is the properties headers (optional) and body (string).
Try like this:

curl -H "Content-Type: application/json" -X POST -d '[{"body": "{\"username\":\"shashi\",\"password\":\"xy1z\"}"}]' http://localhost:8181
Notice the body is a json string, not a json object.
Your current request should be getting a 400 bad request response code, otherwise it would be incorrect.

Regards,
Gonzalo


On 6 December 2015 at 14:53, Shashi Vishwakarma <shashi.vish123@gmail.com> wrote:
HI All


I have written flume script for receiving data from http source,but flume is not receiving data from curl post command. Here is my script

########## NEW AGENT ##########
# flume-ng agent -f /etc/flume/conf/flume.httptest.conf -n httpagent
#

# slagent = SysLogAgent
###############################
httpagent.sources = http-source
httpagent.sinks = local-file-sink
httpagent.channels = ch3

# Define / Configure Source (multiport seems to support newer "stuff")
###############################
httpagent.sources.http-source.type = org.apache.flume.source.http.HTTPSource
httpagent.sources.http-source.channels = ch3
httpagent.sources.http-source.port = 8181
httpagent.sources.http-source.handler = org.apache.flume.source.http.JSONHandler
httpagent.sources.http-source.bind = localhost


# Local File Sink
###############################
httpagent.sinks.local-file-sink.type = file_roll
httpagent.sinks.local-file-sink.channel = ch3
httpagent.sinks.local-file-sink.sink.directory = /root/Desktop/http_test
httpagent.sinks.local-file-sink.rollInterval = 5

# Channels
###############################
httpagent.channels.ch3.type = memory
httpagent.channels.ch3.capacity = 1000

here is my curl post command

curl -H "Content-Type: application/json" -X POST -d '[{"username":"shashi","password":"xy1z"}]' http://localhost:8181

After firing this command nothing happens. I dont see any logging in flume.

Even i tried "nc localhost 8181" as well. nc command is also not getting anything.

Any clue on this?