fiware - Why cygnus crashes when using ngsiv2 in orion? -


recently start working ngsiv2 cygnus start crashing. may have not cofigurated right? v1 works flawless.

my startup trace error in here: http://pastebin.com/np2am8gw

the error said: error appending event channel. channel might full. consider increasing channel capacity or make sure sinks perform faster.

time=2016-05-09t05:58:28.866cdt | lvl=warn | trans=1462791485-602-0000000000 | srv=papel-club | subsrv=events | function=intercept | comp=cygnus | msg=com.telefonica.iot.cygnus.interceptors.groupinginterceptor[135] : no context responses within notified entity, nothing done time=2016-05-09t05:58:28.867cdt | lvl=warn | trans=1462791485-602-0000000000 | srv=papel-club | subsrv=events | function=dopost | comp=cygnus | msg=org.apache.flume.source.http.httpsource$flumehttpservlet[203] : error appending event channel. channel might full. consider increasing channel capacity or make sure sinks perform faster. org.apache.flume.channelexception: unable put batch on required channel: org.apache.flume.channel.memorychannel{name: ckan-channel}     @ org.apache.flume.channel.channelprocessor.processeventbatch(channelprocessor.java:200)     @ org.apache.flume.source.http.httpsource$flumehttpservlet.dopost(httpsource.java:201)     @ javax.servlet.http.httpservlet.service(httpservlet.java:725)     @ javax.servlet.http.httpservlet.service(httpservlet.java:814)     @ org.mortbay.jetty.servlet.servletholder.handle(servletholder.java:511)     @ org.mortbay.jetty.servlet.servlethandler.handle(servlethandler.java:401)     @ org.mortbay.jetty.servlet.sessionhandler.handle(sessionhandler.java:182)     @ org.mortbay.jetty.handler.contexthandler.handle(contexthandler.java:766)     @ org.mortbay.jetty.handler.handlerwrapper.handle(handlerwrapper.java:152)     @ org.mortbay.jetty.server.handle(server.java:326)     @ org.mortbay.jetty.httpconnection.handlerequest(httpconnection.java:542)     @ org.mortbay.jetty.httpconnection$requesthandler.content(httpconnection.java:945)     @ org.mortbay.jetty.httpparser.parsenext(httpparser.java:756)     @ org.mortbay.jetty.httpparser.parseavailable(httpparser.java:218)     @ org.mortbay.jetty.httpconnection.handle(httpconnection.java:404)     @ org.mortbay.jetty.bio.socketconnector$connection.run(socketconnector.java:228)     @ org.mortbay.thread.queuedthreadpool$poolthread.run(queuedthreadpool.java:582) caused by: java.lang.illegalargumentexception: put() called null event!     @ com.google.common.base.preconditions.checkargument(preconditions.java:88)     @ org.apache.flume.channel.basictransactionsemantics.put(basictransactionsemantics.java:89)     @ org.apache.flume.channel.basicchannelsemantics.put(basicchannelsemantics.java:80)     @ org.apache.flume.channel.channelprocessor.processeventbatch(channelprocessor.java:189)     ... 16 more 

as error said increase channel memory. here agent config:

cygnusagent.sources = http-source cygnusagent.sinks = ckan-sink cygnusagent.channels = ckan-channel  cygnusagent.sources.http-source.channels = ckan-channel cygnusagent.sources.http-source.type = org.apache.flume.source.http.httpsource cygnusagent.sources.http-source.port = 5050 cygnusagent.sources.http-source.handler = com.telefonica.iot.cygnus.handlers.orionresthandler cygnusagent.sources.http-source.handler.notification_target = /notify cygnusagent.sources.http-source.handler.default_service = papel-club cygnusagent.sources.http-source.handler.default_service_path = /events cygnusagent.sources.http-source.handler.events_ttl = 5 cygnusagent.sources.http-source.interceptors = ts gi cygnusagent.sources.http-source.interceptors.ts.type = timestamp cygnusagent.sources.http-source.interceptors.gi.type = com.telefonica.iot.cygnus.interceptors.groupinginterceptor$builder cygnusagent.sources.http-source.interceptors.gi.grouping_rules_conf_file = /usr/cygnus/conf/grouping_rules_day.conf  cygnusagent.channels.ckan-channel.type = memory cygnusagent.channels.ckan-channel.capacity = 100000 cygnusagent.channels.ckan-channel.transactioncapacity = 100000  # ============================================ # orionckansink configuration # channel name read notification events cygnusagent.sinks.ckan-sink.channel = ckan-channel  # sink class, must not changed cygnusagent.sinks.ckan-sink.type = com.telefonica.iot.cygnus.sinks.orionckansink  # true if grouping feature enabled sink, false otherwise cygnusagent.sinks.ckan-sink.enable_grouping = true  # true if lower case wanted forced in element names, false otherwise cygnusagent.sinks.hdfs-sink.enable_lowercase = false  # ckan api key use cygnusagent.sinks.ckan-sink.api_key = xxxx  # fqdn/ip address ckan api endpoint cygnusagent.sinks.ckan-sink.ckan_host = ckan-demo.ckan.io  # port ckan api endpoint cygnusagent.sinks.ckan-sink.ckan_port = 80  # orion url used compose resource url convenience operation url query cygnusagent.sinks.ckan-sink.orion_url = http://localhost:1026  # how attributes stored, either per row either per column (row, column) cygnusagent.sinks.ckan-sink.attr_persistence = column  # enable ssl secure http transportation; 'true' or 'false' cygnusagent.sinks.ckan-sink.ssl = false  # number of notifications included within processing batch cygnusagent.sinks.ckan-sink.batch_size = 100  # timeout batch accumulation cygnusagent.sinks.ckan-sink.batch_timeout = 60  # number of retries upon persistence error cygnusagent.sinks.ckan-sink.batch_ttl = 10 

thanks.

for time being, ngsiv2 not supported in cygnus. expected implemented, has not been scheduled yet.

edit: note can use ngsiv2 create/update entities @ orion , have notifications in ngsiv1 if you:

  • create subscription using ngsiv1 operations
  • create subscription using ngsiv2 operations attrsformat equal legacy. have more detailed information here.

Comments

Popular posts from this blog

javascript - Laravel datatable invalid JSON response -

java - Exception in thread "main" org.springframework.context.ApplicationContextException: Unable to start embedded container; -

sql server 2008 - My Sql Code Get An Error Of Msg 245, Level 16, State 1, Line 1 Conversion failed when converting the varchar value '8:45 AM' to data type int -