[Backlogmanager] [FIWARE-JIRA] (HELP-13274) [fiware-stackoverflow] How to remove the following character " /" from service path

Andres Muñoz (JIRA) jira-help-desk at jira.fiware.org
Thu Jan 18 10:25:00 CET 2018


    [ https://jira.fiware.org/browse/HELP-13274?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=100905#comment-100905 ] 

Andres Muñoz commented on HELP-13274:
-------------------------------------

Hello,

The question was answered by the same user that creates the ticket *franciclogreen* and complemented by *frb*, the solution was to change the encoding to true in the agent configuration and the explanation of why have to do that is:

The slash is forbidden in MongoDB database names, that's why Cygnus composes database names from the FIWARE service (which does not contain any slash). On the other hand, the slash is not forbidden in MongoDB collection names, which are composed by Cygnus based on the FIWARE service path (which contains a initial slash). Being said that, if your viewer has any problem with MongoDB collections containing the slash, you are right the only option for you is to enable the encoding of non ASCII characters through enable_encoding=true configuration.

> [fiware-stackoverflow] How to remove the following character "/" from service path
> --------------------------------------------------------------------------------------------
>
>                 Key: HELP-13274
>                 URL: https://jira.fiware.org/browse/HELP-13274
>             Project: Help-Desk
>          Issue Type: Monitor
>          Components: FIWARE-TECH-HELP
>            Reporter: Backlog Manager
>            Assignee: Joaquín Salvachúa 
>              Labels: fiware, fiware-cygnus, mongodb
>
> Created question in FIWARE Q/A platform on 13-12-2017 at 11:12
> {color: red}Please, ANSWER this question AT{color} https://stackoverflow.com/questions/47790426/how-to-remove-the-following-character-from-service-path
> +Question:+
> How to remove the following character "/" from service path
> +Description:+
> Good Morning!
> Currently I have set up my structure in Fiware saving my historical records in MongoDB, for this I have been using Mlab as a hosting.
> I attache the configuration file of my agent, the problem comes in that due to the mandatory character "/" of the service path I can not access the generated historical data, since it is a character not allowed for collections in MongoDB.
> agent_1.conf
> cygnus-ngsi.sources = http-source
> cygnus-ngsi.sinks = mongo-sink
> cygnus-ngsi.channels = mongo-channel
> cygnus-ngsi.sources.http-source.channels = mongo-channel
> cygnus-ngsi.sources.http-source.type = org.apache.flume.source.http.HTTPSource
> cygnus-ngsi.sources.http-source.port = 5050
> cygnus-ngsi.sources.http-source.handler = com.telefonica.iot.cygnus.handlers.NGSIRestHandler
> cygnus-ngsi.sources.http-source.handler.notification_target = /notify
> cygnus-ngsi.sources.http-source.handler.default_service = default
> cygnus-ngsi.sources.http-source.handler.default_service_path = /sevilla
> cygnus-ngsi.sources.http-source.handler.events_ttl = 2
> cygnus-ngsi.sources.http-source.interceptors = ts
> cygnus-ngsi.sources.http-source.interceptors.ts.type = timestamp
> cygnus-ngsi.sinks.mongo-sink.type = com.telefonica.iot.cygnus.sinks.NGSIMongoSink
> cygnus-ngsi.sinks.mongo-sink.channel = mongo-channel
> cygnus-ngsi.sinks.mongo-sink.enable_encoding = false
> cygnus-ngsi.sinks.mongo-sink.enable_grouping = false
> cygnus-ngsi.sinks.mongo-sink.enable_name_mappings = false
> cygnus-ngsi.sinks.mongo-sink.enable_lowercase = false
> cygnus-ngsi.sinks.mongo-sink.data_model = dm-by-service-path
> cygnus-ngsi.sinks.mongo-sink.attr_persistence = row
> cygnus-ngsi.sinks.mongo-sink.mongo_hosts = ds******.mlab.com:35866
> cygnus-ngsi.sinks.mongo-sink.mongo_username = my_user
> cygnus-ngsi.sinks.mongo-sink.mongo_password = ********
> cygnus-ngsi.sinks.mongo-sink.db_prefix = sth_
> cygnus-ngsi.sinks.mongo-sink.collection_prefix = sth_
> cygnus-ngsi.sinks.mongo-sink.batch_size = 1
> cygnus-ngsi.sinks.mongo-sink.batch_timeout = 30
> cygnus-ngsi.sinks.mongo-sink.batch_ttl = 10
> cygnus-ngsi.sinks.mongo-sink.data_expiration = 0
> cygnus-ngsi.sinks.mongo-sink.collections_size = 0
> cygnus-ngsi.sinks.mongo-sink.max_documents = 0
> cygnus-ngsi.sinks.mongo-sink.ignore_white_spaces = true
> cygnus-ngsi.channels.mongo-channel.type = com.telefonica.iot.cygnus.channels.CygnusMemoryChannel
> cygnus-ngsi.channels.mongo-channel.capacity = 1000
> cygnus-ngsi.channels.mongo-channel.transactionCapacity = 100
> Is there any way for Cygnus to remove the "/" character from the service path?
> Error: http://www.subirimagenes.com/imagedata.php?url=http://s2.subirimagenes.com/imagen/9827048captura-de-pantalla.png
> SOLUTION: You just have to change the enconding to true in the agent configuration
> cygnus-ngsi.sinks.mongo-sink.enable_encoding = true
> Thank you very much!



--
This message was sent by Atlassian JIRA
(v6.4.1#64016)


More information about the Backlogmanager mailing list

You can get more information about our cookies and privacy policies clicking on the following links: Privacy policy   Cookies policy