question

Upvotes
Accepted
1 0 0 1

Help running the consumer example

So I’ve completed these steps successfully:


  1. I have built the electron libraries
  2. I have built the consumer example program

Locate reference : ./Elektron-SDK-1.4.0.L1.linux/setup/Elektron-SDK-1.4.0.L1.linux.rrg/Cpp-C/Ema/Examples/Training/Consumer/100_Series/100__MarketPrice__Streaming/Consumer.h

  1. I have created a password for our machine id in our UAT environment
  2. I run the executable from the directory where the EmaConfig.xml from the example code is located


Upon running the code, which subscribes to IBM.N on serviceName ELEKTRON_DD with consumerName Consumer_3

I get the following error:


[New Thread 0x7ffff5798700 (LWP 5163)]

loggerMsg

TimeStamp: 09:00:04.480

ClientName: ChannelCallbackClient

Severity: Error

Text: Failed to add RsslChannel(s) to RsslReactor. Channel name(s) Channel_3

Instance Name Consumer_3_1

RsslReactor 0x0xd39b50

RsslChannel 0

Error Id -1

Internal sysError 0

Error Location /local/jenkins/workspace/ESDKCore_RCDEV/OS/RH6-64/rcdev/source/esdk/Cpp-C/Eta/Impl/Reactor/rsslReactor.c:5809

Error Text Failed to request authentication token information. Text: </local/jenkins/workspace/ESDKCore_RCDEV/OS/RH6-64/rcdev/source/esdk/Cpp-C/Eta/Impl/Rea\

ctor/Util/rsslRestClientImpl.c:1520> Error: Failed to set CURL options with text: Failed initialization

loggerMsgEnd


[Thread 0x7ffff5798700 (LWP 5163) exited]


I can supply the source code, but it’s the same as the example. Is it possible to get some help in figuring out what this error message means? Could it be that i'm not providing proxy information?

elektronrefinitiv-realtimeelektron-sdkrrtema-apielektron-message-apic++
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Also my version of curl is


Also as it seems there’s a curl issue: this I my version


[devalgony02:~/3rdparty/Elektron/setup/Elektron-SDK-1.4.0.L1.linux.rrg/Cpp-C/Ema/Examples/Training/Consumer/100_Series/113__MarketPrice__SessionManagement] curl -V

curl 7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.27.1 zlib/1.2.3 libidn/1.18 libssh2/1.4.2

Protocols: tftp ftp telnet dict ldap ldaps http file https ftps scp sftp

Features: GSS-Negotiate IDN IPv6 Largefile NTLM SSL libz

Upvotes
Accepted
23k 22 9 14

Hello all,

The investigation was consequently taken offline.

After both OpenSSL and curl libraries were found at runtime,

the encrypted channel consumer example runs properly.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
7.6k 15 6 9

@epfeuffer

Not sure that what version of Linux you currently use?
Can you copy libcurl.so from "[ESDK Install Path]/installdb/RHEL6_64_GCC444/Optimized /lib64/" to running directory? and then test the issue again.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
7.6k 15 6 9

@epfeuffer

Also please make sure that you already set LD_LIBRARY_PATH to the folder which contains libcurl.so

It looks like the example build with optimized lib so you have to export the PATH to Optimized folder as mentioned in this tutorial
export LD_LIBRARY_PATH=<ESDK root>/installdb/RHEL6_64_GCC444/Optimized/lib64

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
1 0 0 1

That helped, libcurl seems to be working...


Now i get this error, i and using the machine id as the username, the password i set on the web

as the password. what should the client id be?


[Thread 0x7ffff3c61700 (LWP 19141) exited]

loggerMsg

TimeStamp: 08:02:38.669

ClientName: ChannelCallbackClient

Severity: Error

Text: Failed to add RsslChannel(s) to RsslReactor. Channel name(s) Channel_3

Instance Name Consumer_3_1

RsslReactor 0x0xd39b50

RsslChannel 0

Error Id -1

Internal sysError 0

Error Location /local/jenkins/workspace/ESDKCore_RCDEV/OS/RH6-64/rcdev/source/esdk/Cpp-C/Eta/Impl/Reactor/rsslReactor.c:5789

Error Text Failed to request authentication token information with HTTP error 401. Text: {"error":"invalid_client" ,"error_description":"Invalid Applicatio\

n Credential." }

loggerMsgEnd


[Thread 0x7ffff5798700 (LWP 19140) exited]


icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
23k 22 9 14

Hello @epfeuffer,

You should only need to pass into example 113

-username ( machineid, should look like "GE..." )

-password (the very long password you setup yourself)

no additional client id is required.

Please read more details in EMA Quick Start - Connecting to Elektron Real Time in Cloud

Because it appears something is invalid about the reds you are passing, please verify if what you are passing is username and password is as expected?

(There is an email-based username and the corresponding short password, these are not the right parameters to pass into example)

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
1 0 0 1

i've taken the client id out and get this


loggerMsg

TimeStamp: 12:48:34.302

ClientName: ChannelCallbackClient

Severity: Error

Text: Failed to add RsslChannel(s) to RsslReactor. Channel name(s) Channel_3

Instance Name Consumer_3_1

RsslReactor 0x0x1434b50

RsslChannel 0

Error Id -22

Internal sysError 0

Error Location /local/jenkins/workspace/ESDKCore_RCDEV/OS/RH6-64/rcdev/source/esdk/Cpp-C/Eta/Impl/Reactor/rsslReactor.c:4844

Error Text Failed to copy OAuth credential for enabling the session management; OAuth Client ID does not exist.

loggerMsgEnd


icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Click below to post an Idea Post Idea