openBackhaul / NotificationProxy

Consolidates notifications into specific streams
Apache License 2.0
1 stars 1 forks source link

Observing 500 error when notification proxy pointing to Loadbalancer #54

Closed Ziabatcha closed 9 months ago

Ziabatcha commented 11 months ago

Instead of controller IP, when user tried to point the load balancer IP on notification proxy. Observing 500 error.

API: /v1/listen-to-controllers

Response: [11:44:26.139] DEBUG (1): creating controller configuration stream on controller: http://x.x.x.x:xxxx/rests/operations/sal-remote:create-data-change-event-subscription [11:44:26.142] ERROR (1): OpenDayLight1: SSE-Error on EventSource (CONFIGURATION, readyState is 0), details: type: "error" status: 404 message: "Not Found" [11:44:26.143] DEBUG (1): result 200 for controller configuration stream

[11:44:26.153] DEBUG (1): notification streams after adding: OpenDayLight1-4.0.2-CONFIGURATION, OpenDayLight1-4.0.2-OPERATIONAL, OpenDayLight1-4.0.2-DEVICE, [11:44:26.155] ERROR (1): OpenDayLight1: SSE-Error on EventSource (OPERATIONAL, readyState is 0), details: type: "error" status: 404 message: "Not Found" POST /v1/listen-to-controllers 204 600.182 ms - -

MFMentopolis commented 10 months ago

Hello Zia,

did this 500 error occur in our lab test environment? Can you please provide us the load balancer address for reproduction? Maybe we should do a joint test session to look at this.

However, we think, this might not be an issue of the Notification Proxy, because a load balancer should be transparent for the application.

Regards, Martin Fuchs

Hi Martin,

Yes, it is tested in testlab environment. Device and ODL subscriptions to be done with load balancer IP. Manually subscription is working but when I invoke the listen-to-controller through NP with loadbalancer IP, seeing the error which is mentioned in issue.

Load balancer IP: x.x.x.x If you are ok, we can have short call to discuss this issue

Regards, Zia

Ziabatcha commented 10 months ago

Resolved delay issue on loadbalancer side, now curl request is working to stream notification manually. Still seeing issue on test_1.0.4 same error from application side

working url:

curl --no-buffer -H "Authorization: xxxxxxxx" -H "Content-Type: application/xml" 'http://x.x.x.x:xxxx/rests/notif/data-change-event-subscription/network-topology:network-topology/datastore=OPERATIONAL/scope=SUBTREE/JSON'

Application logs:

[08:53:57.817] ERROR (1): OpenDayLight2: SSE-Error on EventSource (CONFIGURATION, readyState is 0), details:
    type: "error"
    status: 404
    message: "Not Found"
...
...
[08:53:57.828] DEBUG (1): notification streams after adding: OpenDayLight1-4.0.2-CONFIGURATION, OpenDayLight1-4.0.2-OPERATIONAL, OpenDayLight1-4.0.2-DEVICE, OpenDayLight2-4.0.2-CONFIGURATION, OpenDayLight2-4.0.2-OPERATIONAL, OpenDayLight2-4.0.2-DEVICE,
[08:53:57.829] ERROR (1): OpenDayLight2: SSE-Error on EventSource (OPERATIONAL, readyState is 0), details:
    type: "error"
    status: 404
    message: "Not Found"
MFMentopolis commented 9 months ago

Mail of Zia:

Hi Paul,

Thanks for the support, I resolved that issue on load balancer configuration part, now Notification proxy is working with Load balancer IP.

Regards, Zia