kishore
Minnow
When it is simple , keep it as simple!
Posts: 5
|
Post by kishore on Aug 7, 2017 17:44:57 GMT
Hello all, I created a webserver( let's say IP XX.XX.XX.XX) which accepts POST requests on port 80. I tried event subscription with destination with XX.XX.XX.XX (created subscription successfully) Now i rebooted the BMC but still i don't see any event received at the destination end. # curl -k -u admin:admin -X GET yy.yy.yy.yy/redfish/v1/EventService/Subscriptions/1 { "@redfish.Copyright": "Copyright © 2014-2015 Distributed Management Task Force, Inc. (DMTF). All rights reserved.", "@odata.context": "\/redfish\/v1\/$metadata#EventService\/Members\/Subscriptions\/Members\/$entity", "@odata.id": "\/redfish\/v1\/EventService\/Subscriptions\/1", "@odata.type": "#EventService.1.0.0.EventDestination", "Id": "1", "Name": "EventSubscription 1", "Destination": "http:\/\/XX.XX.XX.XX", "EventTypes": [ "Alert", "StatusChange", "ResourceUpdated", "ResourceAdded", "ResourceRemoved" ], "Context": "webuser99", "Protocol": "Redfish" } # There is no issue with webserver end it was able to receive normal post messages. #curl -X POST XX.XX.XX.XX -d "test message" Anything else needs to be done for event subscription?
|
|
|
Post by mraineri on Aug 7, 2017 19:14:35 GMT
What's the value of the "ServiceEnabled" flag in "yy.yy.yy.yy/redfish/v1/EventService"?
If it's set to false, can you try changing it to true?
If it's already set to true, then you may need to contact your implementation vendor for support.
|
|
kishore
Minnow
When it is simple , keep it as simple!
Posts: 5
|
Post by kishore on Aug 8, 2017 5:05:44 GMT
What's the value of the "ServiceEnabled" flag in "yy.yy.yy.yy/redfish/v1/EventService"? If it's set to false, can you try changing it to true? If it's already set to true, then you may need to contact your implementation vendor for support. It is enabled .. now i need to get support from vendor.. -_- $ curl -k -u admin:admin -X GET yy.yy.yy.yy/redfish/v1/EventService{ "EventService": { "@odata.context": "\/redfish\/v1\/$metadata#EventService", "@odata.id": "\/redfish\/v1\/EventService", "@odata.type": "#EventService.1.0.0.EventService", "Id": "EventService", "Name": "Event Service", "ServiceEnabled": "true", "DeliveryRetryAttempts": 3, "DeliveryRetryIntervalSeconds": 60, "EventTypesForSubscription": [ "StatusChange", "ResourceUpdated", "ResourceAdded", "ResourceRemoved", "Alert" ], "Status": { "State": "Enabled", "Health": "OK" }, "Subscriptions": { "@odata.id": "\/redfish\/v1\/EventService\/Subscriptions" }, "Actions": { "#EventService.SendTestEvent": { "target": "\/redfish\/v1\/EventService\/Actions\/EventService.SendTestEvent", "EventType@Redfish.AllowableValues": [ "StatusChange", "ResourceUpdated", "ResourceAdded", "ResourceRemoved", "Alert" ] } } } } Is there anyway for sending test event or something like debugging?
|
|
|
Post by mraineri on Aug 8, 2017 12:25:57 GMT
You can use the "SubmitTestEvent" action on the service to debug this. From the output, it looks like your implementation supports it (although they call it "SendTestEvent" instead of "SubmitTestEvent", which is a bug on the implementation).
You would do a POST to /redfish/v1/EventService/Actions/EventService.SendTestEvent with the event payload you'd like to forward to your receiver, such as:
{ "EventType": "Alert", "EventId": "TestEventId", "EventTimestamp": "2017-08-08T08:24:00Z", "Severity": "TestSeverity", "Message": "TestMessage", "MessageId": "TestMessageId", "MessageArgs": [ "TestMessageArg" ], "OriginOfCondition": "/redfish/v1/" }
Since you're currently subscribed to the EventType "Alert", the above payload should be sent to your receiver.
|
|
kishore
Minnow
When it is simple , keep it as simple!
Posts: 5
|
Post by kishore on Aug 8, 2017 13:33:57 GMT
Thanks for SendTestEvent But still i see it's failing. I verified URI, it's working fine for GET of /redfish/v1/EventService, but for this it's throwing error as follow. # curl -k -u admin:admin -XPOST YY.YY.YY.YY/redfish/v1/EventService/Actions/EventService.SendTestEvent -d '{"EventType": "Alert","EventId": "TestEventId","EventTimestamp": "2017-08-08T08:24:00Z", "Severity": "TestSeverity","Message": "TestMessage", "MessageId": "TestMessageId", "MessageArgs": [ "TestMessageArg" ], "OriginOfCondition": "/redfish/v1/"}' { "error": { "code": "Base.1.0.GeneralError", "message": "A general error has occurred. See ExtendedInfo for more information.", "@message.ExtendedInfo": [ { "@odata.type": "\/redfish\/v1\/$metadata#Message.1.0.0.Message", "MessageId": "Base.1.0.UriNotAvailable", "Resolution": "Check uri and resubmit the request" } ] } }
|
|
|
Post by mraineri on Aug 8, 2017 13:39:48 GMT
Definitely another bug in the implementation you're working with; it's advertising the action target as "/redfish/v1/EventService/Actions/EventService.SendTestEvent", but it's giving you a 404...
|
|
kishore
Minnow
When it is simple , keep it as simple!
Posts: 5
|
Post by kishore on Aug 8, 2017 14:44:31 GMT
Is it possible to raise this as bug? i don't think i can post on this github.com/DMTF/Redfishtool .. So any specific place where i can raise this bug?
|
|
|
Post by mraineri on Aug 8, 2017 14:57:00 GMT
You'll have to raise the bug to whatever system your implementation vendor uses. It'll depend on your system vendor and what their line of support looks like. Sorry, but there's not much we can do from the DMTF side.
|
|
kishore
Minnow
When it is simple , keep it as simple!
Posts: 5
|
Post by kishore on Aug 9, 2017 10:25:49 GMT
oh! okay.. Thank you so much for your time on this..
|
|