On Thu, 2016-10-27 at 10:16 -0700, rammohan ganapavarapu wrote: > Alan, > > I was trying to use this one http://godoc.org/github.com/streadway/am > qp > > but not sure if it will work with any qpid broker or not, i am > getting > "2016/10/27 04:09:48 Exception (501) Reason: "Exception (501) Reason: > \"frame could not be parsed\""" >
First, make sure your qpidd is built & configured to support AMQP 1.0. The go client doesn't speak the older 0-10 version that qpidd also uses, but qpidd has spoken AMQP 1.0 for a long time so that shouldn't be a problem. Second: The Go client is a wrapper for a C library, there may be a mismatch between the Go code and the proton-C library you have installed. I would suggest downloading the latest proton release from http://qpid.apache.org/proton/ and use the matching C and Go code from the release. We will figure out a better story for managing that relationship but we haven't yet :( Otherwise if you have to work with some specific (reasonably recent) older released version of proton I can help you get it working. Please let me know how you get on - like I said I'd like to add a generic request-response pattern to the electron package. > Thanks, > Ram > > > On Thu, Oct 27, 2016 at 7:42 AM, Alan Conway <[email protected]> > wrote: > > > > > On Wed, 2016-10-26 at 21:05 -0700, rammohan ganapavarapu wrote: > > > > > > Hi, > > > > > > I am trying to write a qpid-stat tool in go, any one attempted to > > > do > > > it, if > > > so can you please share your ideas? or if you have any documents > > > on > > > how to > > > write please share. > > > > > > Thanks, > > > Ram > > > > For a Go client I recommend the qpid.apache.org/electron package > > which > > is part of the Proton project. > > > > https://github.com/apache/qpid-proton/tree/master/examples/go > > > > To work with the latest you should use the code from the proton > > repo > > rather than the `go get` version as it is still progressing > > rapidly. > > > > qpid-stat and the other qpid tools are based on the request- > > response > > message pattern: send a correctly-formatted QMF request message > > with > > correlation-id and then process the response message. There's a > > "canned" request-response pattern in python at: > > > > https://github.com/apache/qpid-proton/blob/master/proton-c/bindings > > /pyt > > hon/proton/utils.py > > > > QMF messages are maps, so your main work will be to construct and > > interpret nested maps with the right names/values. Look at the > > qpid- > > stat sources and the qmf schemas here: > > > > /home/aconway/qpid-cpp/src/qpid/acl/management-schema.xml > > /home/aconway/qpid-cpp/src/qpid/broker/management-schema.xml > > /home/aconway/qpid-cpp/src/qpid/legacystore/management-schema.xml > > /home/aconway/qpid-cpp/src/qpid/ha/management-schema.xml > > /home/aconway/qpid-cpp/src/qpid/linearstore/management-schema.xml > > > > You are probably mostly/only interested in the broker schema. > > > > I am very interested in this as I worked on the Go binding and also > > on > > schema-driven management tools (in python) for qpid-dispatch. I > > would > > like to add a canned "request-response" pattern to the Go binding > > which > > would make your job easier, but I won't get to that in the > > immediate > > term so maybe you'll do it for me :) I'm happy to help with > > pointers > > and any problems you find in the Go binding. > > > > Cheers, > > Alan. > > > > > > > > > > > > ----------------------------------------------------------------- > > ---- > > To unsubscribe, e-mail: [email protected] > > For additional commands, e-mail: [email protected] > > > > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
