func DeserializeThriftMessage(buf *bytes.Buffer, ts thrift.TStruct) (string, thrift.TMessageType, int32, error) { transport := thrift.NewStreamTransportR(buf) protocol := thrift.NewTBinaryProtocol(transport, false, false) name, typeId, seqId, err := protocol.ReadMessageBegin() if err != nil { return "", 0, 0, err } err = ts.Read(protocol) if err != nil { return "", 0, 0, err } return name, typeId, seqId, nil }
func NewScribeLoger(host, port string) (*ScribeLoger, error) { Ttransport, err := thrift.NewTSocket(net.JoinHostPort(host, port)) if err != nil { return nil, err } transport := thrift.NewTFramedTransport(Ttransport) protocol := thrift.NewTBinaryProtocol(transport, false, false) client := scribe.NewScribeClientProtocol(transport, protocol, protocol) if err := transport.Open(); err != nil { return nil, err } return &ScribeLoger{ transport: transport, client: client, }, nil }