api.pb.go 107 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949
  1. // Code generated by protoc-gen-gogo. DO NOT EDIT.
  2. // source: api/v1/api.proto
  3. package v1
  4. import proto "github.com/gogo/protobuf/proto"
  5. import fmt "fmt"
  6. import math "math"
  7. import _ "github.com/gogo/protobuf/gogoproto"
  8. import _ "google.golang.org/genproto/googleapis/api/annotations"
  9. import (
  10. context "golang.org/x/net/context"
  11. grpc "google.golang.org/grpc"
  12. )
  13. // Reference imports to suppress errors if they are not otherwise used.
  14. var _ = proto.Marshal
  15. var _ = fmt.Errorf
  16. var _ = math.Inf
  17. // This is a compile-time assertion to ensure that this generated file
  18. // is compatible with the proto package it is being compiled against.
  19. // A compilation error at this line likely means your copy of the
  20. // proto package needs to be updated.
  21. const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package
  22. type ListServiceNameReq struct {
  23. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  24. XXX_unrecognized []byte `json:"-"`
  25. XXX_sizecache int32 `json:"-"`
  26. }
  27. func (m *ListServiceNameReq) Reset() { *m = ListServiceNameReq{} }
  28. func (m *ListServiceNameReq) String() string { return proto.CompactTextString(m) }
  29. func (*ListServiceNameReq) ProtoMessage() {}
  30. func (*ListServiceNameReq) Descriptor() ([]byte, []int) {
  31. return fileDescriptor_api_f0d39efb13fd4b71, []int{0}
  32. }
  33. func (m *ListServiceNameReq) XXX_Unmarshal(b []byte) error {
  34. return xxx_messageInfo_ListServiceNameReq.Unmarshal(m, b)
  35. }
  36. func (m *ListServiceNameReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  37. return xxx_messageInfo_ListServiceNameReq.Marshal(b, m, deterministic)
  38. }
  39. func (dst *ListServiceNameReq) XXX_Merge(src proto.Message) {
  40. xxx_messageInfo_ListServiceNameReq.Merge(dst, src)
  41. }
  42. func (m *ListServiceNameReq) XXX_Size() int {
  43. return xxx_messageInfo_ListServiceNameReq.Size(m)
  44. }
  45. func (m *ListServiceNameReq) XXX_DiscardUnknown() {
  46. xxx_messageInfo_ListServiceNameReq.DiscardUnknown(m)
  47. }
  48. var xxx_messageInfo_ListServiceNameReq proto.InternalMessageInfo
  49. type ListServiceNameReply struct {
  50. ServiceNames []string `protobuf:"bytes,1,rep,name=service_names,json=serviceNames" json:"service_names,omitempty"`
  51. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  52. XXX_unrecognized []byte `json:"-"`
  53. XXX_sizecache int32 `json:"-"`
  54. }
  55. func (m *ListServiceNameReply) Reset() { *m = ListServiceNameReply{} }
  56. func (m *ListServiceNameReply) String() string { return proto.CompactTextString(m) }
  57. func (*ListServiceNameReply) ProtoMessage() {}
  58. func (*ListServiceNameReply) Descriptor() ([]byte, []int) {
  59. return fileDescriptor_api_f0d39efb13fd4b71, []int{1}
  60. }
  61. func (m *ListServiceNameReply) XXX_Unmarshal(b []byte) error {
  62. return xxx_messageInfo_ListServiceNameReply.Unmarshal(m, b)
  63. }
  64. func (m *ListServiceNameReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  65. return xxx_messageInfo_ListServiceNameReply.Marshal(b, m, deterministic)
  66. }
  67. func (dst *ListServiceNameReply) XXX_Merge(src proto.Message) {
  68. xxx_messageInfo_ListServiceNameReply.Merge(dst, src)
  69. }
  70. func (m *ListServiceNameReply) XXX_Size() int {
  71. return xxx_messageInfo_ListServiceNameReply.Size(m)
  72. }
  73. func (m *ListServiceNameReply) XXX_DiscardUnknown() {
  74. xxx_messageInfo_ListServiceNameReply.DiscardUnknown(m)
  75. }
  76. var xxx_messageInfo_ListServiceNameReply proto.InternalMessageInfo
  77. func (m *ListServiceNameReply) GetServiceNames() []string {
  78. if m != nil {
  79. return m.ServiceNames
  80. }
  81. return nil
  82. }
  83. type ListOperationNameReq struct {
  84. ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty" form:"service_name" validate:"required"`
  85. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  86. XXX_unrecognized []byte `json:"-"`
  87. XXX_sizecache int32 `json:"-"`
  88. }
  89. func (m *ListOperationNameReq) Reset() { *m = ListOperationNameReq{} }
  90. func (m *ListOperationNameReq) String() string { return proto.CompactTextString(m) }
  91. func (*ListOperationNameReq) ProtoMessage() {}
  92. func (*ListOperationNameReq) Descriptor() ([]byte, []int) {
  93. return fileDescriptor_api_f0d39efb13fd4b71, []int{2}
  94. }
  95. func (m *ListOperationNameReq) XXX_Unmarshal(b []byte) error {
  96. return xxx_messageInfo_ListOperationNameReq.Unmarshal(m, b)
  97. }
  98. func (m *ListOperationNameReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  99. return xxx_messageInfo_ListOperationNameReq.Marshal(b, m, deterministic)
  100. }
  101. func (dst *ListOperationNameReq) XXX_Merge(src proto.Message) {
  102. xxx_messageInfo_ListOperationNameReq.Merge(dst, src)
  103. }
  104. func (m *ListOperationNameReq) XXX_Size() int {
  105. return xxx_messageInfo_ListOperationNameReq.Size(m)
  106. }
  107. func (m *ListOperationNameReq) XXX_DiscardUnknown() {
  108. xxx_messageInfo_ListOperationNameReq.DiscardUnknown(m)
  109. }
  110. var xxx_messageInfo_ListOperationNameReq proto.InternalMessageInfo
  111. func (m *ListOperationNameReq) GetServiceName() string {
  112. if m != nil {
  113. return m.ServiceName
  114. }
  115. return ""
  116. }
  117. type ListOperationNameReply struct {
  118. OperationNames []string `protobuf:"bytes,1,rep,name=operation_names,json=operationNames" json:"operation_names,omitempty"`
  119. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  120. XXX_unrecognized []byte `json:"-"`
  121. XXX_sizecache int32 `json:"-"`
  122. }
  123. func (m *ListOperationNameReply) Reset() { *m = ListOperationNameReply{} }
  124. func (m *ListOperationNameReply) String() string { return proto.CompactTextString(m) }
  125. func (*ListOperationNameReply) ProtoMessage() {}
  126. func (*ListOperationNameReply) Descriptor() ([]byte, []int) {
  127. return fileDescriptor_api_f0d39efb13fd4b71, []int{3}
  128. }
  129. func (m *ListOperationNameReply) XXX_Unmarshal(b []byte) error {
  130. return xxx_messageInfo_ListOperationNameReply.Unmarshal(m, b)
  131. }
  132. func (m *ListOperationNameReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  133. return xxx_messageInfo_ListOperationNameReply.Marshal(b, m, deterministic)
  134. }
  135. func (dst *ListOperationNameReply) XXX_Merge(src proto.Message) {
  136. xxx_messageInfo_ListOperationNameReply.Merge(dst, src)
  137. }
  138. func (m *ListOperationNameReply) XXX_Size() int {
  139. return xxx_messageInfo_ListOperationNameReply.Size(m)
  140. }
  141. func (m *ListOperationNameReply) XXX_DiscardUnknown() {
  142. xxx_messageInfo_ListOperationNameReply.DiscardUnknown(m)
  143. }
  144. var xxx_messageInfo_ListOperationNameReply proto.InternalMessageInfo
  145. func (m *ListOperationNameReply) GetOperationNames() []string {
  146. if m != nil {
  147. return m.OperationNames
  148. }
  149. return nil
  150. }
  151. type ListSpanReq struct {
  152. ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty" form:"service_name" validate:"required"`
  153. OperationName string `protobuf:"bytes,2,opt,name=operation_name,json=operationName,proto3" json:"operation_name,omitempty" form:"operation_name" validate:"required"`
  154. Start int64 `protobuf:"varint,3,opt,name=start,proto3" json:"start,omitempty" form:"start"`
  155. End int64 `protobuf:"varint,4,opt,name=end,proto3" json:"end,omitempty" form:"end"`
  156. // 目前支持的 order
  157. // time:desc time:asc 按时间排序
  158. // duration:desc duration:asc 按耗时排序
  159. Order string `protobuf:"bytes,5,opt,name=order,proto3" json:"order,omitempty" form:"order"`
  160. // 只显示 error 的 span
  161. OnlyError bool `protobuf:"varint,6,opt,name=only_error,json=onlyError,proto3" json:"only_error,omitempty" form:"only_error"`
  162. Offset int32 `protobuf:"varint,7,opt,name=offset,proto3" json:"offset,omitempty" form:"offset"`
  163. Limit int32 `protobuf:"varint,8,opt,name=limit,proto3" json:"limit,omitempty" form:"limit"`
  164. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  165. XXX_unrecognized []byte `json:"-"`
  166. XXX_sizecache int32 `json:"-"`
  167. }
  168. func (m *ListSpanReq) Reset() { *m = ListSpanReq{} }
  169. func (m *ListSpanReq) String() string { return proto.CompactTextString(m) }
  170. func (*ListSpanReq) ProtoMessage() {}
  171. func (*ListSpanReq) Descriptor() ([]byte, []int) {
  172. return fileDescriptor_api_f0d39efb13fd4b71, []int{4}
  173. }
  174. func (m *ListSpanReq) XXX_Unmarshal(b []byte) error {
  175. return xxx_messageInfo_ListSpanReq.Unmarshal(m, b)
  176. }
  177. func (m *ListSpanReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  178. return xxx_messageInfo_ListSpanReq.Marshal(b, m, deterministic)
  179. }
  180. func (dst *ListSpanReq) XXX_Merge(src proto.Message) {
  181. xxx_messageInfo_ListSpanReq.Merge(dst, src)
  182. }
  183. func (m *ListSpanReq) XXX_Size() int {
  184. return xxx_messageInfo_ListSpanReq.Size(m)
  185. }
  186. func (m *ListSpanReq) XXX_DiscardUnknown() {
  187. xxx_messageInfo_ListSpanReq.DiscardUnknown(m)
  188. }
  189. var xxx_messageInfo_ListSpanReq proto.InternalMessageInfo
  190. func (m *ListSpanReq) GetServiceName() string {
  191. if m != nil {
  192. return m.ServiceName
  193. }
  194. return ""
  195. }
  196. func (m *ListSpanReq) GetOperationName() string {
  197. if m != nil {
  198. return m.OperationName
  199. }
  200. return ""
  201. }
  202. func (m *ListSpanReq) GetStart() int64 {
  203. if m != nil {
  204. return m.Start
  205. }
  206. return 0
  207. }
  208. func (m *ListSpanReq) GetEnd() int64 {
  209. if m != nil {
  210. return m.End
  211. }
  212. return 0
  213. }
  214. func (m *ListSpanReq) GetOrder() string {
  215. if m != nil {
  216. return m.Order
  217. }
  218. return ""
  219. }
  220. func (m *ListSpanReq) GetOnlyError() bool {
  221. if m != nil {
  222. return m.OnlyError
  223. }
  224. return false
  225. }
  226. func (m *ListSpanReq) GetOffset() int32 {
  227. if m != nil {
  228. return m.Offset
  229. }
  230. return 0
  231. }
  232. func (m *ListSpanReq) GetLimit() int32 {
  233. if m != nil {
  234. return m.Limit
  235. }
  236. return 0
  237. }
  238. type SpanListItem struct {
  239. TraceId string `protobuf:"bytes,1,opt,name=trace_id,json=traceId,proto3" json:"trace_id,omitempty"`
  240. SpanId string `protobuf:"bytes,2,opt,name=span_id,json=spanId,proto3" json:"span_id,omitempty"`
  241. ParentId string `protobuf:"bytes,3,opt,name=parent_id,json=parentId,proto3" json:"parent_id,omitempty"`
  242. ServiceName string `protobuf:"bytes,4,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"`
  243. OperationName string `protobuf:"bytes,5,opt,name=operation_name,json=operationName,proto3" json:"operation_name,omitempty"`
  244. StartTime string `protobuf:"bytes,6,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
  245. Duration string `protobuf:"bytes,7,opt,name=duration,proto3" json:"duration,omitempty"`
  246. Tags map[string]*TagValue `protobuf:"bytes,12,rep,name=tags" json:"tags,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value"`
  247. // Deprecated: use tags
  248. IsError bool `protobuf:"varint,8,opt,name=is_error,json=isError,proto3" json:"is_error,omitempty"`
  249. ContainerIp string `protobuf:"bytes,9,opt,name=container_ip,json=containerIp,proto3" json:"container_ip,omitempty"`
  250. RegionZone string `protobuf:"bytes,10,opt,name=region_zone,json=regionZone,proto3" json:"region_zone,omitempty"`
  251. Mark string `protobuf:"bytes,11,opt,name=mark,proto3" json:"mark,omitempty"`
  252. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  253. XXX_unrecognized []byte `json:"-"`
  254. XXX_sizecache int32 `json:"-"`
  255. }
  256. func (m *SpanListItem) Reset() { *m = SpanListItem{} }
  257. func (m *SpanListItem) String() string { return proto.CompactTextString(m) }
  258. func (*SpanListItem) ProtoMessage() {}
  259. func (*SpanListItem) Descriptor() ([]byte, []int) {
  260. return fileDescriptor_api_f0d39efb13fd4b71, []int{5}
  261. }
  262. func (m *SpanListItem) XXX_Unmarshal(b []byte) error {
  263. return xxx_messageInfo_SpanListItem.Unmarshal(m, b)
  264. }
  265. func (m *SpanListItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  266. return xxx_messageInfo_SpanListItem.Marshal(b, m, deterministic)
  267. }
  268. func (dst *SpanListItem) XXX_Merge(src proto.Message) {
  269. xxx_messageInfo_SpanListItem.Merge(dst, src)
  270. }
  271. func (m *SpanListItem) XXX_Size() int {
  272. return xxx_messageInfo_SpanListItem.Size(m)
  273. }
  274. func (m *SpanListItem) XXX_DiscardUnknown() {
  275. xxx_messageInfo_SpanListItem.DiscardUnknown(m)
  276. }
  277. var xxx_messageInfo_SpanListItem proto.InternalMessageInfo
  278. func (m *SpanListItem) GetTraceId() string {
  279. if m != nil {
  280. return m.TraceId
  281. }
  282. return ""
  283. }
  284. func (m *SpanListItem) GetSpanId() string {
  285. if m != nil {
  286. return m.SpanId
  287. }
  288. return ""
  289. }
  290. func (m *SpanListItem) GetParentId() string {
  291. if m != nil {
  292. return m.ParentId
  293. }
  294. return ""
  295. }
  296. func (m *SpanListItem) GetServiceName() string {
  297. if m != nil {
  298. return m.ServiceName
  299. }
  300. return ""
  301. }
  302. func (m *SpanListItem) GetOperationName() string {
  303. if m != nil {
  304. return m.OperationName
  305. }
  306. return ""
  307. }
  308. func (m *SpanListItem) GetStartTime() string {
  309. if m != nil {
  310. return m.StartTime
  311. }
  312. return ""
  313. }
  314. func (m *SpanListItem) GetDuration() string {
  315. if m != nil {
  316. return m.Duration
  317. }
  318. return ""
  319. }
  320. func (m *SpanListItem) GetTags() map[string]*TagValue {
  321. if m != nil {
  322. return m.Tags
  323. }
  324. return nil
  325. }
  326. func (m *SpanListItem) GetIsError() bool {
  327. if m != nil {
  328. return m.IsError
  329. }
  330. return false
  331. }
  332. func (m *SpanListItem) GetContainerIp() string {
  333. if m != nil {
  334. return m.ContainerIp
  335. }
  336. return ""
  337. }
  338. func (m *SpanListItem) GetRegionZone() string {
  339. if m != nil {
  340. return m.RegionZone
  341. }
  342. return ""
  343. }
  344. func (m *SpanListItem) GetMark() string {
  345. if m != nil {
  346. return m.Mark
  347. }
  348. return ""
  349. }
  350. type TraceReq struct {
  351. TraceId string `protobuf:"bytes,1,opt,name=trace_id,json=traceId,proto3" json:"trace_id,omitempty" form:"trace_id" validate:"required"`
  352. SpanId string `protobuf:"bytes,2,opt,name=span_id,json=spanId,proto3" json:"span_id,omitempty" form:"span_id"`
  353. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  354. XXX_unrecognized []byte `json:"-"`
  355. XXX_sizecache int32 `json:"-"`
  356. }
  357. func (m *TraceReq) Reset() { *m = TraceReq{} }
  358. func (m *TraceReq) String() string { return proto.CompactTextString(m) }
  359. func (*TraceReq) ProtoMessage() {}
  360. func (*TraceReq) Descriptor() ([]byte, []int) {
  361. return fileDescriptor_api_f0d39efb13fd4b71, []int{6}
  362. }
  363. func (m *TraceReq) XXX_Unmarshal(b []byte) error {
  364. return xxx_messageInfo_TraceReq.Unmarshal(m, b)
  365. }
  366. func (m *TraceReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  367. return xxx_messageInfo_TraceReq.Marshal(b, m, deterministic)
  368. }
  369. func (dst *TraceReq) XXX_Merge(src proto.Message) {
  370. xxx_messageInfo_TraceReq.Merge(dst, src)
  371. }
  372. func (m *TraceReq) XXX_Size() int {
  373. return xxx_messageInfo_TraceReq.Size(m)
  374. }
  375. func (m *TraceReq) XXX_DiscardUnknown() {
  376. xxx_messageInfo_TraceReq.DiscardUnknown(m)
  377. }
  378. var xxx_messageInfo_TraceReq proto.InternalMessageInfo
  379. func (m *TraceReq) GetTraceId() string {
  380. if m != nil {
  381. return m.TraceId
  382. }
  383. return ""
  384. }
  385. func (m *TraceReq) GetSpanId() string {
  386. if m != nil {
  387. return m.SpanId
  388. }
  389. return ""
  390. }
  391. type RawTraceReq struct {
  392. TraceId string `protobuf:"bytes,1,opt,name=trace_id,json=traceId,proto3" json:"trace_id,omitempty" form:"trace_id" validate:"required"`
  393. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  394. XXX_unrecognized []byte `json:"-"`
  395. XXX_sizecache int32 `json:"-"`
  396. }
  397. func (m *RawTraceReq) Reset() { *m = RawTraceReq{} }
  398. func (m *RawTraceReq) String() string { return proto.CompactTextString(m) }
  399. func (*RawTraceReq) ProtoMessage() {}
  400. func (*RawTraceReq) Descriptor() ([]byte, []int) {
  401. return fileDescriptor_api_f0d39efb13fd4b71, []int{7}
  402. }
  403. func (m *RawTraceReq) XXX_Unmarshal(b []byte) error {
  404. return xxx_messageInfo_RawTraceReq.Unmarshal(m, b)
  405. }
  406. func (m *RawTraceReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  407. return xxx_messageInfo_RawTraceReq.Marshal(b, m, deterministic)
  408. }
  409. func (dst *RawTraceReq) XXX_Merge(src proto.Message) {
  410. xxx_messageInfo_RawTraceReq.Merge(dst, src)
  411. }
  412. func (m *RawTraceReq) XXX_Size() int {
  413. return xxx_messageInfo_RawTraceReq.Size(m)
  414. }
  415. func (m *RawTraceReq) XXX_DiscardUnknown() {
  416. xxx_messageInfo_RawTraceReq.DiscardUnknown(m)
  417. }
  418. var xxx_messageInfo_RawTraceReq proto.InternalMessageInfo
  419. func (m *RawTraceReq) GetTraceId() string {
  420. if m != nil {
  421. return m.TraceId
  422. }
  423. return ""
  424. }
  425. type RawTraceReply struct {
  426. Items []*Span `protobuf:"bytes,1,rep,name=items" json:"items,omitempty"`
  427. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  428. XXX_unrecognized []byte `json:"-"`
  429. XXX_sizecache int32 `json:"-"`
  430. }
  431. func (m *RawTraceReply) Reset() { *m = RawTraceReply{} }
  432. func (m *RawTraceReply) String() string { return proto.CompactTextString(m) }
  433. func (*RawTraceReply) ProtoMessage() {}
  434. func (*RawTraceReply) Descriptor() ([]byte, []int) {
  435. return fileDescriptor_api_f0d39efb13fd4b71, []int{8}
  436. }
  437. func (m *RawTraceReply) XXX_Unmarshal(b []byte) error {
  438. return xxx_messageInfo_RawTraceReply.Unmarshal(m, b)
  439. }
  440. func (m *RawTraceReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  441. return xxx_messageInfo_RawTraceReply.Marshal(b, m, deterministic)
  442. }
  443. func (dst *RawTraceReply) XXX_Merge(src proto.Message) {
  444. xxx_messageInfo_RawTraceReply.Merge(dst, src)
  445. }
  446. func (m *RawTraceReply) XXX_Size() int {
  447. return xxx_messageInfo_RawTraceReply.Size(m)
  448. }
  449. func (m *RawTraceReply) XXX_DiscardUnknown() {
  450. xxx_messageInfo_RawTraceReply.DiscardUnknown(m)
  451. }
  452. var xxx_messageInfo_RawTraceReply proto.InternalMessageInfo
  453. func (m *RawTraceReply) GetItems() []*Span {
  454. if m != nil {
  455. return m.Items
  456. }
  457. return nil
  458. }
  459. type TagValue struct {
  460. // Types that are valid to be assigned to Value:
  461. // *TagValue_StringValue
  462. // *TagValue_Int64Value
  463. // *TagValue_BoolValue
  464. // *TagValue_FloatValue
  465. Value isTagValue_Value `protobuf_oneof:"value"`
  466. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  467. XXX_unrecognized []byte `json:"-"`
  468. XXX_sizecache int32 `json:"-"`
  469. }
  470. func (m *TagValue) Reset() { *m = TagValue{} }
  471. func (m *TagValue) String() string { return proto.CompactTextString(m) }
  472. func (*TagValue) ProtoMessage() {}
  473. func (*TagValue) Descriptor() ([]byte, []int) {
  474. return fileDescriptor_api_f0d39efb13fd4b71, []int{9}
  475. }
  476. func (m *TagValue) XXX_Unmarshal(b []byte) error {
  477. return xxx_messageInfo_TagValue.Unmarshal(m, b)
  478. }
  479. func (m *TagValue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  480. return xxx_messageInfo_TagValue.Marshal(b, m, deterministic)
  481. }
  482. func (dst *TagValue) XXX_Merge(src proto.Message) {
  483. xxx_messageInfo_TagValue.Merge(dst, src)
  484. }
  485. func (m *TagValue) XXX_Size() int {
  486. return xxx_messageInfo_TagValue.Size(m)
  487. }
  488. func (m *TagValue) XXX_DiscardUnknown() {
  489. xxx_messageInfo_TagValue.DiscardUnknown(m)
  490. }
  491. var xxx_messageInfo_TagValue proto.InternalMessageInfo
  492. type isTagValue_Value interface {
  493. isTagValue_Value()
  494. }
  495. type TagValue_StringValue struct {
  496. StringValue string `protobuf:"bytes,2,opt,name=string_value,json=stringValue,proto3,oneof"`
  497. }
  498. type TagValue_Int64Value struct {
  499. Int64Value int64 `protobuf:"varint,3,opt,name=int64_value,json=int64Value,proto3,oneof"`
  500. }
  501. type TagValue_BoolValue struct {
  502. BoolValue bool `protobuf:"varint,4,opt,name=bool_value,json=boolValue,proto3,oneof"`
  503. }
  504. type TagValue_FloatValue struct {
  505. FloatValue float32 `protobuf:"fixed32,5,opt,name=float_value,json=floatValue,proto3,oneof"`
  506. }
  507. func (*TagValue_StringValue) isTagValue_Value() {}
  508. func (*TagValue_Int64Value) isTagValue_Value() {}
  509. func (*TagValue_BoolValue) isTagValue_Value() {}
  510. func (*TagValue_FloatValue) isTagValue_Value() {}
  511. func (m *TagValue) GetValue() isTagValue_Value {
  512. if m != nil {
  513. return m.Value
  514. }
  515. return nil
  516. }
  517. func (m *TagValue) GetStringValue() string {
  518. if x, ok := m.GetValue().(*TagValue_StringValue); ok {
  519. return x.StringValue
  520. }
  521. return ""
  522. }
  523. func (m *TagValue) GetInt64Value() int64 {
  524. if x, ok := m.GetValue().(*TagValue_Int64Value); ok {
  525. return x.Int64Value
  526. }
  527. return 0
  528. }
  529. func (m *TagValue) GetBoolValue() bool {
  530. if x, ok := m.GetValue().(*TagValue_BoolValue); ok {
  531. return x.BoolValue
  532. }
  533. return false
  534. }
  535. func (m *TagValue) GetFloatValue() float32 {
  536. if x, ok := m.GetValue().(*TagValue_FloatValue); ok {
  537. return x.FloatValue
  538. }
  539. return 0
  540. }
  541. // XXX_OneofFuncs is for the internal use of the proto package.
  542. func (*TagValue) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
  543. return _TagValue_OneofMarshaler, _TagValue_OneofUnmarshaler, _TagValue_OneofSizer, []interface{}{
  544. (*TagValue_StringValue)(nil),
  545. (*TagValue_Int64Value)(nil),
  546. (*TagValue_BoolValue)(nil),
  547. (*TagValue_FloatValue)(nil),
  548. }
  549. }
  550. func _TagValue_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
  551. m := msg.(*TagValue)
  552. // value
  553. switch x := m.Value.(type) {
  554. case *TagValue_StringValue:
  555. _ = b.EncodeVarint(2<<3 | proto.WireBytes)
  556. _ = b.EncodeStringBytes(x.StringValue)
  557. case *TagValue_Int64Value:
  558. _ = b.EncodeVarint(3<<3 | proto.WireVarint)
  559. _ = b.EncodeVarint(uint64(x.Int64Value))
  560. case *TagValue_BoolValue:
  561. t := uint64(0)
  562. if x.BoolValue {
  563. t = 1
  564. }
  565. _ = b.EncodeVarint(4<<3 | proto.WireVarint)
  566. _ = b.EncodeVarint(t)
  567. case *TagValue_FloatValue:
  568. _ = b.EncodeVarint(5<<3 | proto.WireFixed32)
  569. _ = b.EncodeFixed32(uint64(math.Float32bits(x.FloatValue)))
  570. case nil:
  571. default:
  572. return fmt.Errorf("TagValue.Value has unexpected type %T", x)
  573. }
  574. return nil
  575. }
  576. func _TagValue_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
  577. m := msg.(*TagValue)
  578. switch tag {
  579. case 2: // value.string_value
  580. if wire != proto.WireBytes {
  581. return true, proto.ErrInternalBadWireType
  582. }
  583. x, err := b.DecodeStringBytes()
  584. m.Value = &TagValue_StringValue{x}
  585. return true, err
  586. case 3: // value.int64_value
  587. if wire != proto.WireVarint {
  588. return true, proto.ErrInternalBadWireType
  589. }
  590. x, err := b.DecodeVarint()
  591. m.Value = &TagValue_Int64Value{int64(x)}
  592. return true, err
  593. case 4: // value.bool_value
  594. if wire != proto.WireVarint {
  595. return true, proto.ErrInternalBadWireType
  596. }
  597. x, err := b.DecodeVarint()
  598. m.Value = &TagValue_BoolValue{x != 0}
  599. return true, err
  600. case 5: // value.float_value
  601. if wire != proto.WireFixed32 {
  602. return true, proto.ErrInternalBadWireType
  603. }
  604. x, err := b.DecodeFixed32()
  605. m.Value = &TagValue_FloatValue{math.Float32frombits(uint32(x))}
  606. return true, err
  607. default:
  608. return false, nil
  609. }
  610. }
  611. func _TagValue_OneofSizer(msg proto.Message) (n int) {
  612. m := msg.(*TagValue)
  613. // value
  614. switch x := m.Value.(type) {
  615. case *TagValue_StringValue:
  616. n += 1 // tag and wire
  617. n += proto.SizeVarint(uint64(len(x.StringValue)))
  618. n += len(x.StringValue)
  619. case *TagValue_Int64Value:
  620. n += 1 // tag and wire
  621. n += proto.SizeVarint(uint64(x.Int64Value))
  622. case *TagValue_BoolValue:
  623. n += 1 // tag and wire
  624. n += 1
  625. case *TagValue_FloatValue:
  626. n += 1 // tag and wire
  627. n += 4
  628. case nil:
  629. default:
  630. panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
  631. }
  632. return n
  633. }
  634. type Field struct {
  635. Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
  636. Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
  637. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  638. XXX_unrecognized []byte `json:"-"`
  639. XXX_sizecache int32 `json:"-"`
  640. }
  641. func (m *Field) Reset() { *m = Field{} }
  642. func (m *Field) String() string { return proto.CompactTextString(m) }
  643. func (*Field) ProtoMessage() {}
  644. func (*Field) Descriptor() ([]byte, []int) {
  645. return fileDescriptor_api_f0d39efb13fd4b71, []int{10}
  646. }
  647. func (m *Field) XXX_Unmarshal(b []byte) error {
  648. return xxx_messageInfo_Field.Unmarshal(m, b)
  649. }
  650. func (m *Field) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  651. return xxx_messageInfo_Field.Marshal(b, m, deterministic)
  652. }
  653. func (dst *Field) XXX_Merge(src proto.Message) {
  654. xxx_messageInfo_Field.Merge(dst, src)
  655. }
  656. func (m *Field) XXX_Size() int {
  657. return xxx_messageInfo_Field.Size(m)
  658. }
  659. func (m *Field) XXX_DiscardUnknown() {
  660. xxx_messageInfo_Field.DiscardUnknown(m)
  661. }
  662. var xxx_messageInfo_Field proto.InternalMessageInfo
  663. func (m *Field) GetKey() string {
  664. if m != nil {
  665. return m.Key
  666. }
  667. return ""
  668. }
  669. func (m *Field) GetValue() string {
  670. if m != nil {
  671. return m.Value
  672. }
  673. return ""
  674. }
  675. type Log struct {
  676. Timestamp int64 `protobuf:"varint,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
  677. Fields []*Field `protobuf:"bytes,2,rep,name=fields" json:"fields,omitempty"`
  678. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  679. XXX_unrecognized []byte `json:"-"`
  680. XXX_sizecache int32 `json:"-"`
  681. }
  682. func (m *Log) Reset() { *m = Log{} }
  683. func (m *Log) String() string { return proto.CompactTextString(m) }
  684. func (*Log) ProtoMessage() {}
  685. func (*Log) Descriptor() ([]byte, []int) {
  686. return fileDescriptor_api_f0d39efb13fd4b71, []int{11}
  687. }
  688. func (m *Log) XXX_Unmarshal(b []byte) error {
  689. return xxx_messageInfo_Log.Unmarshal(m, b)
  690. }
  691. func (m *Log) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  692. return xxx_messageInfo_Log.Marshal(b, m, deterministic)
  693. }
  694. func (dst *Log) XXX_Merge(src proto.Message) {
  695. xxx_messageInfo_Log.Merge(dst, src)
  696. }
  697. func (m *Log) XXX_Size() int {
  698. return xxx_messageInfo_Log.Size(m)
  699. }
  700. func (m *Log) XXX_DiscardUnknown() {
  701. xxx_messageInfo_Log.DiscardUnknown(m)
  702. }
  703. var xxx_messageInfo_Log proto.InternalMessageInfo
  704. func (m *Log) GetTimestamp() int64 {
  705. if m != nil {
  706. return m.Timestamp
  707. }
  708. return 0
  709. }
  710. func (m *Log) GetFields() []*Field {
  711. if m != nil {
  712. return m.Fields
  713. }
  714. return nil
  715. }
  716. type Span struct {
  717. ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"`
  718. OperationName string `protobuf:"bytes,2,opt,name=operation_name,json=operationName,proto3" json:"operation_name,omitempty"`
  719. TraceId string `protobuf:"bytes,3,opt,name=trace_id,json=traceId,proto3" json:"trace_id,omitempty"`
  720. SpanId string `protobuf:"bytes,4,opt,name=span_id,json=spanId,proto3" json:"span_id,omitempty"`
  721. ParentId string `protobuf:"bytes,5,opt,name=parent_id,json=parentId,proto3" json:"parent_id,omitempty"`
  722. StartTime int64 `protobuf:"varint,6,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
  723. Duration int64 `protobuf:"varint,7,opt,name=duration,proto3" json:"duration,omitempty"`
  724. Tags map[string]*TagValue `protobuf:"bytes,8,rep,name=tags" json:"tags,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value"`
  725. Logs []*Log `protobuf:"bytes,9,rep,name=logs" json:"logs,omitempty"`
  726. Level int32 `protobuf:"varint,10,opt,name=level,proto3" json:"level,omitempty"`
  727. Childs []*Span `protobuf:"bytes,11,rep,name=childs" json:"childs,omitempty"`
  728. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  729. XXX_unrecognized []byte `json:"-"`
  730. XXX_sizecache int32 `json:"-"`
  731. }
  732. func (m *Span) Reset() { *m = Span{} }
  733. func (m *Span) String() string { return proto.CompactTextString(m) }
  734. func (*Span) ProtoMessage() {}
  735. func (*Span) Descriptor() ([]byte, []int) {
  736. return fileDescriptor_api_f0d39efb13fd4b71, []int{12}
  737. }
  738. func (m *Span) XXX_Unmarshal(b []byte) error {
  739. return xxx_messageInfo_Span.Unmarshal(m, b)
  740. }
  741. func (m *Span) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  742. return xxx_messageInfo_Span.Marshal(b, m, deterministic)
  743. }
  744. func (dst *Span) XXX_Merge(src proto.Message) {
  745. xxx_messageInfo_Span.Merge(dst, src)
  746. }
  747. func (m *Span) XXX_Size() int {
  748. return xxx_messageInfo_Span.Size(m)
  749. }
  750. func (m *Span) XXX_DiscardUnknown() {
  751. xxx_messageInfo_Span.DiscardUnknown(m)
  752. }
  753. var xxx_messageInfo_Span proto.InternalMessageInfo
  754. func (m *Span) GetServiceName() string {
  755. if m != nil {
  756. return m.ServiceName
  757. }
  758. return ""
  759. }
  760. func (m *Span) GetOperationName() string {
  761. if m != nil {
  762. return m.OperationName
  763. }
  764. return ""
  765. }
  766. func (m *Span) GetTraceId() string {
  767. if m != nil {
  768. return m.TraceId
  769. }
  770. return ""
  771. }
  772. func (m *Span) GetSpanId() string {
  773. if m != nil {
  774. return m.SpanId
  775. }
  776. return ""
  777. }
  778. func (m *Span) GetParentId() string {
  779. if m != nil {
  780. return m.ParentId
  781. }
  782. return ""
  783. }
  784. func (m *Span) GetStartTime() int64 {
  785. if m != nil {
  786. return m.StartTime
  787. }
  788. return 0
  789. }
  790. func (m *Span) GetDuration() int64 {
  791. if m != nil {
  792. return m.Duration
  793. }
  794. return 0
  795. }
  796. func (m *Span) GetTags() map[string]*TagValue {
  797. if m != nil {
  798. return m.Tags
  799. }
  800. return nil
  801. }
  802. func (m *Span) GetLogs() []*Log {
  803. if m != nil {
  804. return m.Logs
  805. }
  806. return nil
  807. }
  808. func (m *Span) GetLevel() int32 {
  809. if m != nil {
  810. return m.Level
  811. }
  812. return 0
  813. }
  814. func (m *Span) GetChilds() []*Span {
  815. if m != nil {
  816. return m.Childs
  817. }
  818. return nil
  819. }
  820. type TraceReply struct {
  821. ServiceCount int32 `protobuf:"varint,1,opt,name=service_count,json=serviceCount,proto3" json:"service_count,omitempty"`
  822. SpanCount int32 `protobuf:"varint,2,opt,name=span_count,json=spanCount,proto3" json:"span_count,omitempty"`
  823. MaxLevel int32 `protobuf:"varint,3,opt,name=max_level,json=maxLevel,proto3" json:"max_level,omitempty"`
  824. Root *Span `protobuf:"bytes,4,opt,name=root" json:"root,omitempty"`
  825. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  826. XXX_unrecognized []byte `json:"-"`
  827. XXX_sizecache int32 `json:"-"`
  828. }
  829. func (m *TraceReply) Reset() { *m = TraceReply{} }
  830. func (m *TraceReply) String() string { return proto.CompactTextString(m) }
  831. func (*TraceReply) ProtoMessage() {}
  832. func (*TraceReply) Descriptor() ([]byte, []int) {
  833. return fileDescriptor_api_f0d39efb13fd4b71, []int{13}
  834. }
  835. func (m *TraceReply) XXX_Unmarshal(b []byte) error {
  836. return xxx_messageInfo_TraceReply.Unmarshal(m, b)
  837. }
  838. func (m *TraceReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  839. return xxx_messageInfo_TraceReply.Marshal(b, m, deterministic)
  840. }
  841. func (dst *TraceReply) XXX_Merge(src proto.Message) {
  842. xxx_messageInfo_TraceReply.Merge(dst, src)
  843. }
  844. func (m *TraceReply) XXX_Size() int {
  845. return xxx_messageInfo_TraceReply.Size(m)
  846. }
  847. func (m *TraceReply) XXX_DiscardUnknown() {
  848. xxx_messageInfo_TraceReply.DiscardUnknown(m)
  849. }
  850. var xxx_messageInfo_TraceReply proto.InternalMessageInfo
  851. func (m *TraceReply) GetServiceCount() int32 {
  852. if m != nil {
  853. return m.ServiceCount
  854. }
  855. return 0
  856. }
  857. func (m *TraceReply) GetSpanCount() int32 {
  858. if m != nil {
  859. return m.SpanCount
  860. }
  861. return 0
  862. }
  863. func (m *TraceReply) GetMaxLevel() int32 {
  864. if m != nil {
  865. return m.MaxLevel
  866. }
  867. return 0
  868. }
  869. func (m *TraceReply) GetRoot() *Span {
  870. if m != nil {
  871. return m.Root
  872. }
  873. return nil
  874. }
  875. type ListSpanReply struct {
  876. Items []*SpanListItem `protobuf:"bytes,2,rep,name=items" json:"items,omitempty"`
  877. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  878. XXX_unrecognized []byte `json:"-"`
  879. XXX_sizecache int32 `json:"-"`
  880. }
  881. func (m *ListSpanReply) Reset() { *m = ListSpanReply{} }
  882. func (m *ListSpanReply) String() string { return proto.CompactTextString(m) }
  883. func (*ListSpanReply) ProtoMessage() {}
  884. func (*ListSpanReply) Descriptor() ([]byte, []int) {
  885. return fileDescriptor_api_f0d39efb13fd4b71, []int{14}
  886. }
  887. func (m *ListSpanReply) XXX_Unmarshal(b []byte) error {
  888. return xxx_messageInfo_ListSpanReply.Unmarshal(m, b)
  889. }
  890. func (m *ListSpanReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  891. return xxx_messageInfo_ListSpanReply.Marshal(b, m, deterministic)
  892. }
  893. func (dst *ListSpanReply) XXX_Merge(src proto.Message) {
  894. xxx_messageInfo_ListSpanReply.Merge(dst, src)
  895. }
  896. func (m *ListSpanReply) XXX_Size() int {
  897. return xxx_messageInfo_ListSpanReply.Size(m)
  898. }
  899. func (m *ListSpanReply) XXX_DiscardUnknown() {
  900. xxx_messageInfo_ListSpanReply.DiscardUnknown(m)
  901. }
  902. var xxx_messageInfo_ListSpanReply proto.InternalMessageInfo
  903. func (m *ListSpanReply) GetItems() []*SpanListItem {
  904. if m != nil {
  905. return m.Items
  906. }
  907. return nil
  908. }
  909. type OperationNameRankReq struct {
  910. ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty" form:"service_name" validate:"required"`
  911. Start int64 `protobuf:"varint,2,opt,name=start,proto3" json:"start,omitempty" form:"start"`
  912. End int64 `protobuf:"varint,3,opt,name=end,proto3" json:"end,omitempty" form:"end"`
  913. // 排序类型 max_duration 最大耗时, min_duration 最小耗时, avg_duration 平均耗时, errors 错误数
  914. RankType string `protobuf:"bytes,4,opt,name=rank_type,json=rankType,proto3" json:"rank_type,omitempty" form:"rank_type"`
  915. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  916. XXX_unrecognized []byte `json:"-"`
  917. XXX_sizecache int32 `json:"-"`
  918. }
  919. func (m *OperationNameRankReq) Reset() { *m = OperationNameRankReq{} }
  920. func (m *OperationNameRankReq) String() string { return proto.CompactTextString(m) }
  921. func (*OperationNameRankReq) ProtoMessage() {}
  922. func (*OperationNameRankReq) Descriptor() ([]byte, []int) {
  923. return fileDescriptor_api_f0d39efb13fd4b71, []int{15}
  924. }
  925. func (m *OperationNameRankReq) XXX_Unmarshal(b []byte) error {
  926. return xxx_messageInfo_OperationNameRankReq.Unmarshal(m, b)
  927. }
  928. func (m *OperationNameRankReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  929. return xxx_messageInfo_OperationNameRankReq.Marshal(b, m, deterministic)
  930. }
  931. func (dst *OperationNameRankReq) XXX_Merge(src proto.Message) {
  932. xxx_messageInfo_OperationNameRankReq.Merge(dst, src)
  933. }
  934. func (m *OperationNameRankReq) XXX_Size() int {
  935. return xxx_messageInfo_OperationNameRankReq.Size(m)
  936. }
  937. func (m *OperationNameRankReq) XXX_DiscardUnknown() {
  938. xxx_messageInfo_OperationNameRankReq.DiscardUnknown(m)
  939. }
  940. var xxx_messageInfo_OperationNameRankReq proto.InternalMessageInfo
  941. func (m *OperationNameRankReq) GetServiceName() string {
  942. if m != nil {
  943. return m.ServiceName
  944. }
  945. return ""
  946. }
  947. func (m *OperationNameRankReq) GetStart() int64 {
  948. if m != nil {
  949. return m.Start
  950. }
  951. return 0
  952. }
  953. func (m *OperationNameRankReq) GetEnd() int64 {
  954. if m != nil {
  955. return m.End
  956. }
  957. return 0
  958. }
  959. func (m *OperationNameRankReq) GetRankType() string {
  960. if m != nil {
  961. return m.RankType
  962. }
  963. return ""
  964. }
  965. type RankItem struct {
  966. ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"`
  967. OperationName string `protobuf:"bytes,2,opt,name=operation_name,json=operationName,proto3" json:"operation_name,omitempty"`
  968. // 当 rank type 是 max_duration, min_duration, avg_duration 时 value 是纳秒
  969. // 当 rank type 是 errors 是 value 是错误数
  970. Value float64 `protobuf:"fixed64,3,opt,name=value,proto3" json:"value,omitempty"`
  971. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  972. XXX_unrecognized []byte `json:"-"`
  973. XXX_sizecache int32 `json:"-"`
  974. }
  975. func (m *RankItem) Reset() { *m = RankItem{} }
  976. func (m *RankItem) String() string { return proto.CompactTextString(m) }
  977. func (*RankItem) ProtoMessage() {}
  978. func (*RankItem) Descriptor() ([]byte, []int) {
  979. return fileDescriptor_api_f0d39efb13fd4b71, []int{16}
  980. }
  981. func (m *RankItem) XXX_Unmarshal(b []byte) error {
  982. return xxx_messageInfo_RankItem.Unmarshal(m, b)
  983. }
  984. func (m *RankItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  985. return xxx_messageInfo_RankItem.Marshal(b, m, deterministic)
  986. }
  987. func (dst *RankItem) XXX_Merge(src proto.Message) {
  988. xxx_messageInfo_RankItem.Merge(dst, src)
  989. }
  990. func (m *RankItem) XXX_Size() int {
  991. return xxx_messageInfo_RankItem.Size(m)
  992. }
  993. func (m *RankItem) XXX_DiscardUnknown() {
  994. xxx_messageInfo_RankItem.DiscardUnknown(m)
  995. }
  996. var xxx_messageInfo_RankItem proto.InternalMessageInfo
  997. func (m *RankItem) GetServiceName() string {
  998. if m != nil {
  999. return m.ServiceName
  1000. }
  1001. return ""
  1002. }
  1003. func (m *RankItem) GetOperationName() string {
  1004. if m != nil {
  1005. return m.OperationName
  1006. }
  1007. return ""
  1008. }
  1009. func (m *RankItem) GetValue() float64 {
  1010. if m != nil {
  1011. return m.Value
  1012. }
  1013. return 0
  1014. }
  1015. type OperationNameRankReply struct {
  1016. RankType string `protobuf:"bytes,1,opt,name=rank_type,json=rankType,proto3" json:"rank_type,omitempty"`
  1017. Items []*RankItem `protobuf:"bytes,2,rep,name=items" json:"items,omitempty"`
  1018. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1019. XXX_unrecognized []byte `json:"-"`
  1020. XXX_sizecache int32 `json:"-"`
  1021. }
  1022. func (m *OperationNameRankReply) Reset() { *m = OperationNameRankReply{} }
  1023. func (m *OperationNameRankReply) String() string { return proto.CompactTextString(m) }
  1024. func (*OperationNameRankReply) ProtoMessage() {}
  1025. func (*OperationNameRankReply) Descriptor() ([]byte, []int) {
  1026. return fileDescriptor_api_f0d39efb13fd4b71, []int{17}
  1027. }
  1028. func (m *OperationNameRankReply) XXX_Unmarshal(b []byte) error {
  1029. return xxx_messageInfo_OperationNameRankReply.Unmarshal(m, b)
  1030. }
  1031. func (m *OperationNameRankReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1032. return xxx_messageInfo_OperationNameRankReply.Marshal(b, m, deterministic)
  1033. }
  1034. func (dst *OperationNameRankReply) XXX_Merge(src proto.Message) {
  1035. xxx_messageInfo_OperationNameRankReply.Merge(dst, src)
  1036. }
  1037. func (m *OperationNameRankReply) XXX_Size() int {
  1038. return xxx_messageInfo_OperationNameRankReply.Size(m)
  1039. }
  1040. func (m *OperationNameRankReply) XXX_DiscardUnknown() {
  1041. xxx_messageInfo_OperationNameRankReply.DiscardUnknown(m)
  1042. }
  1043. var xxx_messageInfo_OperationNameRankReply proto.InternalMessageInfo
  1044. func (m *OperationNameRankReply) GetRankType() string {
  1045. if m != nil {
  1046. return m.RankType
  1047. }
  1048. return ""
  1049. }
  1050. func (m *OperationNameRankReply) GetItems() []*RankItem {
  1051. if m != nil {
  1052. return m.Items
  1053. }
  1054. return nil
  1055. }
  1056. type DependsRankReq struct {
  1057. ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty" form:"service_name" validate:"required"`
  1058. Start int64 `protobuf:"varint,3,opt,name=start,proto3" json:"start,omitempty" form:"start"`
  1059. End int64 `protobuf:"varint,4,opt,name=end,proto3" json:"end,omitempty" form:"end"`
  1060. // 排序类型 max_duration 最大耗时, min_duration 最小耗时, avg_duration 平均耗时, errors 错误数
  1061. RankType string `protobuf:"bytes,5,opt,name=rank_type,json=rankType,proto3" json:"rank_type,omitempty" form:"rank_type"`
  1062. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1063. XXX_unrecognized []byte `json:"-"`
  1064. XXX_sizecache int32 `json:"-"`
  1065. }
  1066. func (m *DependsRankReq) Reset() { *m = DependsRankReq{} }
  1067. func (m *DependsRankReq) String() string { return proto.CompactTextString(m) }
  1068. func (*DependsRankReq) ProtoMessage() {}
  1069. func (*DependsRankReq) Descriptor() ([]byte, []int) {
  1070. return fileDescriptor_api_f0d39efb13fd4b71, []int{18}
  1071. }
  1072. func (m *DependsRankReq) XXX_Unmarshal(b []byte) error {
  1073. return xxx_messageInfo_DependsRankReq.Unmarshal(m, b)
  1074. }
  1075. func (m *DependsRankReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1076. return xxx_messageInfo_DependsRankReq.Marshal(b, m, deterministic)
  1077. }
  1078. func (dst *DependsRankReq) XXX_Merge(src proto.Message) {
  1079. xxx_messageInfo_DependsRankReq.Merge(dst, src)
  1080. }
  1081. func (m *DependsRankReq) XXX_Size() int {
  1082. return xxx_messageInfo_DependsRankReq.Size(m)
  1083. }
  1084. func (m *DependsRankReq) XXX_DiscardUnknown() {
  1085. xxx_messageInfo_DependsRankReq.DiscardUnknown(m)
  1086. }
  1087. var xxx_messageInfo_DependsRankReq proto.InternalMessageInfo
  1088. func (m *DependsRankReq) GetServiceName() string {
  1089. if m != nil {
  1090. return m.ServiceName
  1091. }
  1092. return ""
  1093. }
  1094. func (m *DependsRankReq) GetStart() int64 {
  1095. if m != nil {
  1096. return m.Start
  1097. }
  1098. return 0
  1099. }
  1100. func (m *DependsRankReq) GetEnd() int64 {
  1101. if m != nil {
  1102. return m.End
  1103. }
  1104. return 0
  1105. }
  1106. func (m *DependsRankReq) GetRankType() string {
  1107. if m != nil {
  1108. return m.RankType
  1109. }
  1110. return ""
  1111. }
  1112. type DependsRankReply struct {
  1113. RankType string `protobuf:"bytes,1,opt,name=rank_type,json=rankType,proto3" json:"rank_type,omitempty"`
  1114. Items []*RankItem `protobuf:"bytes,2,rep,name=items" json:"items,omitempty"`
  1115. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1116. XXX_unrecognized []byte `json:"-"`
  1117. XXX_sizecache int32 `json:"-"`
  1118. }
  1119. func (m *DependsRankReply) Reset() { *m = DependsRankReply{} }
  1120. func (m *DependsRankReply) String() string { return proto.CompactTextString(m) }
  1121. func (*DependsRankReply) ProtoMessage() {}
  1122. func (*DependsRankReply) Descriptor() ([]byte, []int) {
  1123. return fileDescriptor_api_f0d39efb13fd4b71, []int{19}
  1124. }
  1125. func (m *DependsRankReply) XXX_Unmarshal(b []byte) error {
  1126. return xxx_messageInfo_DependsRankReply.Unmarshal(m, b)
  1127. }
  1128. func (m *DependsRankReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1129. return xxx_messageInfo_DependsRankReply.Marshal(b, m, deterministic)
  1130. }
  1131. func (dst *DependsRankReply) XXX_Merge(src proto.Message) {
  1132. xxx_messageInfo_DependsRankReply.Merge(dst, src)
  1133. }
  1134. func (m *DependsRankReply) XXX_Size() int {
  1135. return xxx_messageInfo_DependsRankReply.Size(m)
  1136. }
  1137. func (m *DependsRankReply) XXX_DiscardUnknown() {
  1138. xxx_messageInfo_DependsRankReply.DiscardUnknown(m)
  1139. }
  1140. var xxx_messageInfo_DependsRankReply proto.InternalMessageInfo
  1141. func (m *DependsRankReply) GetRankType() string {
  1142. if m != nil {
  1143. return m.RankType
  1144. }
  1145. return ""
  1146. }
  1147. func (m *DependsRankReply) GetItems() []*RankItem {
  1148. if m != nil {
  1149. return m.Items
  1150. }
  1151. return nil
  1152. }
  1153. type SpanSeriesReq struct {
  1154. ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty" form:"service_name" validate:"required"`
  1155. OperationName string `protobuf:"bytes,2,opt,name=operation_name,json=operationName,proto3" json:"operation_name,omitempty" form:"operation_name" validate:"required"`
  1156. Start int64 `protobuf:"varint,3,opt,name=start,proto3" json:"start,omitempty" form:"start"`
  1157. End int64 `protobuf:"varint,4,opt,name=end,proto3" json:"end,omitempty" form:"end"`
  1158. // 可选的 fields 有 max_duration, min_duration, avg_duration, errors
  1159. // 其中除 errors 返回的是一段时间内的总数 其他返回的都是平均数
  1160. // fields 是个数组可以通过 fields=max_duration,min_duration,avg_duration 逗号分隔
  1161. Fields string `protobuf:"bytes,6,opt,name=fields,proto3" json:"fields,omitempty" form:"fields"`
  1162. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1163. XXX_unrecognized []byte `json:"-"`
  1164. XXX_sizecache int32 `json:"-"`
  1165. }
  1166. func (m *SpanSeriesReq) Reset() { *m = SpanSeriesReq{} }
  1167. func (m *SpanSeriesReq) String() string { return proto.CompactTextString(m) }
  1168. func (*SpanSeriesReq) ProtoMessage() {}
  1169. func (*SpanSeriesReq) Descriptor() ([]byte, []int) {
  1170. return fileDescriptor_api_f0d39efb13fd4b71, []int{20}
  1171. }
  1172. func (m *SpanSeriesReq) XXX_Unmarshal(b []byte) error {
  1173. return xxx_messageInfo_SpanSeriesReq.Unmarshal(m, b)
  1174. }
  1175. func (m *SpanSeriesReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1176. return xxx_messageInfo_SpanSeriesReq.Marshal(b, m, deterministic)
  1177. }
  1178. func (dst *SpanSeriesReq) XXX_Merge(src proto.Message) {
  1179. xxx_messageInfo_SpanSeriesReq.Merge(dst, src)
  1180. }
  1181. func (m *SpanSeriesReq) XXX_Size() int {
  1182. return xxx_messageInfo_SpanSeriesReq.Size(m)
  1183. }
  1184. func (m *SpanSeriesReq) XXX_DiscardUnknown() {
  1185. xxx_messageInfo_SpanSeriesReq.DiscardUnknown(m)
  1186. }
  1187. var xxx_messageInfo_SpanSeriesReq proto.InternalMessageInfo
  1188. func (m *SpanSeriesReq) GetServiceName() string {
  1189. if m != nil {
  1190. return m.ServiceName
  1191. }
  1192. return ""
  1193. }
  1194. func (m *SpanSeriesReq) GetOperationName() string {
  1195. if m != nil {
  1196. return m.OperationName
  1197. }
  1198. return ""
  1199. }
  1200. func (m *SpanSeriesReq) GetStart() int64 {
  1201. if m != nil {
  1202. return m.Start
  1203. }
  1204. return 0
  1205. }
  1206. func (m *SpanSeriesReq) GetEnd() int64 {
  1207. if m != nil {
  1208. return m.End
  1209. }
  1210. return 0
  1211. }
  1212. func (m *SpanSeriesReq) GetFields() string {
  1213. if m != nil {
  1214. return m.Fields
  1215. }
  1216. return ""
  1217. }
  1218. type SeriesItem struct {
  1219. // 名称一般是请求的 field+{count|mean}
  1220. Field string `protobuf:"bytes,1,opt,name=field,proto3" json:"field,omitempty"`
  1221. Values []*int64 `protobuf:"varint,2,rep,packed,name=values,customtype=*int64" json:"values,omitempty"`
  1222. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1223. XXX_unrecognized []byte `json:"-"`
  1224. XXX_sizecache int32 `json:"-"`
  1225. }
  1226. func (m *SeriesItem) Reset() { *m = SeriesItem{} }
  1227. func (m *SeriesItem) String() string { return proto.CompactTextString(m) }
  1228. func (*SeriesItem) ProtoMessage() {}
  1229. func (*SeriesItem) Descriptor() ([]byte, []int) {
  1230. return fileDescriptor_api_f0d39efb13fd4b71, []int{21}
  1231. }
  1232. func (m *SeriesItem) XXX_Unmarshal(b []byte) error {
  1233. return xxx_messageInfo_SeriesItem.Unmarshal(m, b)
  1234. }
  1235. func (m *SeriesItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1236. return xxx_messageInfo_SeriesItem.Marshal(b, m, deterministic)
  1237. }
  1238. func (dst *SeriesItem) XXX_Merge(src proto.Message) {
  1239. xxx_messageInfo_SeriesItem.Merge(dst, src)
  1240. }
  1241. func (m *SeriesItem) XXX_Size() int {
  1242. return xxx_messageInfo_SeriesItem.Size(m)
  1243. }
  1244. func (m *SeriesItem) XXX_DiscardUnknown() {
  1245. xxx_messageInfo_SeriesItem.DiscardUnknown(m)
  1246. }
  1247. var xxx_messageInfo_SeriesItem proto.InternalMessageInfo
  1248. func (m *SeriesItem) GetField() string {
  1249. if m != nil {
  1250. return m.Field
  1251. }
  1252. return ""
  1253. }
  1254. type SpanSeriesReply struct {
  1255. // 返回点的间隔
  1256. Interval int64 `protobuf:"varint,5,opt,name=interval,proto3" json:"interval,omitempty"`
  1257. Times []string `protobuf:"bytes,1,rep,name=times" json:"times,omitempty"`
  1258. Items []*SeriesItem `protobuf:"bytes,2,rep,name=items" json:"items,omitempty"`
  1259. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1260. XXX_unrecognized []byte `json:"-"`
  1261. XXX_sizecache int32 `json:"-"`
  1262. }
  1263. func (m *SpanSeriesReply) Reset() { *m = SpanSeriesReply{} }
  1264. func (m *SpanSeriesReply) String() string { return proto.CompactTextString(m) }
  1265. func (*SpanSeriesReply) ProtoMessage() {}
  1266. func (*SpanSeriesReply) Descriptor() ([]byte, []int) {
  1267. return fileDescriptor_api_f0d39efb13fd4b71, []int{22}
  1268. }
  1269. func (m *SpanSeriesReply) XXX_Unmarshal(b []byte) error {
  1270. return xxx_messageInfo_SpanSeriesReply.Unmarshal(m, b)
  1271. }
  1272. func (m *SpanSeriesReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1273. return xxx_messageInfo_SpanSeriesReply.Marshal(b, m, deterministic)
  1274. }
  1275. func (dst *SpanSeriesReply) XXX_Merge(src proto.Message) {
  1276. xxx_messageInfo_SpanSeriesReply.Merge(dst, src)
  1277. }
  1278. func (m *SpanSeriesReply) XXX_Size() int {
  1279. return xxx_messageInfo_SpanSeriesReply.Size(m)
  1280. }
  1281. func (m *SpanSeriesReply) XXX_DiscardUnknown() {
  1282. xxx_messageInfo_SpanSeriesReply.DiscardUnknown(m)
  1283. }
  1284. var xxx_messageInfo_SpanSeriesReply proto.InternalMessageInfo
  1285. func (m *SpanSeriesReply) GetInterval() int64 {
  1286. if m != nil {
  1287. return m.Interval
  1288. }
  1289. return 0
  1290. }
  1291. func (m *SpanSeriesReply) GetTimes() []string {
  1292. if m != nil {
  1293. return m.Times
  1294. }
  1295. return nil
  1296. }
  1297. func (m *SpanSeriesReply) GetItems() []*SeriesItem {
  1298. if m != nil {
  1299. return m.Items
  1300. }
  1301. return nil
  1302. }
  1303. type CltStatusReq struct {
  1304. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1305. XXX_unrecognized []byte `json:"-"`
  1306. XXX_sizecache int32 `json:"-"`
  1307. }
  1308. func (m *CltStatusReq) Reset() { *m = CltStatusReq{} }
  1309. func (m *CltStatusReq) String() string { return proto.CompactTextString(m) }
  1310. func (*CltStatusReq) ProtoMessage() {}
  1311. func (*CltStatusReq) Descriptor() ([]byte, []int) {
  1312. return fileDescriptor_api_f0d39efb13fd4b71, []int{23}
  1313. }
  1314. func (m *CltStatusReq) XXX_Unmarshal(b []byte) error {
  1315. return xxx_messageInfo_CltStatusReq.Unmarshal(m, b)
  1316. }
  1317. func (m *CltStatusReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1318. return xxx_messageInfo_CltStatusReq.Marshal(b, m, deterministic)
  1319. }
  1320. func (dst *CltStatusReq) XXX_Merge(src proto.Message) {
  1321. xxx_messageInfo_CltStatusReq.Merge(dst, src)
  1322. }
  1323. func (m *CltStatusReq) XXX_Size() int {
  1324. return xxx_messageInfo_CltStatusReq.Size(m)
  1325. }
  1326. func (m *CltStatusReq) XXX_DiscardUnknown() {
  1327. xxx_messageInfo_CltStatusReq.DiscardUnknown(m)
  1328. }
  1329. var xxx_messageInfo_CltStatusReq proto.InternalMessageInfo
  1330. type Client struct {
  1331. Addr string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
  1332. ErrCount int64 `protobuf:"varint,2,opt,name=err_count,json=errCount,proto3" json:"err_count,omitempty"`
  1333. Rate int64 `protobuf:"varint,3,opt,name=rate,proto3" json:"rate,omitempty"`
  1334. UpTime int64 `protobuf:"varint,4,opt,name=up_time,json=upTime,proto3" json:"up_time,omitempty"`
  1335. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1336. XXX_unrecognized []byte `json:"-"`
  1337. XXX_sizecache int32 `json:"-"`
  1338. }
  1339. func (m *Client) Reset() { *m = Client{} }
  1340. func (m *Client) String() string { return proto.CompactTextString(m) }
  1341. func (*Client) ProtoMessage() {}
  1342. func (*Client) Descriptor() ([]byte, []int) {
  1343. return fileDescriptor_api_f0d39efb13fd4b71, []int{24}
  1344. }
  1345. func (m *Client) XXX_Unmarshal(b []byte) error {
  1346. return xxx_messageInfo_Client.Unmarshal(m, b)
  1347. }
  1348. func (m *Client) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1349. return xxx_messageInfo_Client.Marshal(b, m, deterministic)
  1350. }
  1351. func (dst *Client) XXX_Merge(src proto.Message) {
  1352. xxx_messageInfo_Client.Merge(dst, src)
  1353. }
  1354. func (m *Client) XXX_Size() int {
  1355. return xxx_messageInfo_Client.Size(m)
  1356. }
  1357. func (m *Client) XXX_DiscardUnknown() {
  1358. xxx_messageInfo_Client.DiscardUnknown(m)
  1359. }
  1360. var xxx_messageInfo_Client proto.InternalMessageInfo
  1361. func (m *Client) GetAddr() string {
  1362. if m != nil {
  1363. return m.Addr
  1364. }
  1365. return ""
  1366. }
  1367. func (m *Client) GetErrCount() int64 {
  1368. if m != nil {
  1369. return m.ErrCount
  1370. }
  1371. return 0
  1372. }
  1373. func (m *Client) GetRate() int64 {
  1374. if m != nil {
  1375. return m.Rate
  1376. }
  1377. return 0
  1378. }
  1379. func (m *Client) GetUpTime() int64 {
  1380. if m != nil {
  1381. return m.UpTime
  1382. }
  1383. return 0
  1384. }
  1385. type CltNode struct {
  1386. Node string `protobuf:"bytes,1,opt,name=node,proto3" json:"node,omitempty"`
  1387. QueueLen int64 `protobuf:"varint,2,opt,name=queue_len,json=queueLen,proto3" json:"queue_len,omitempty"`
  1388. Clients []*Client `protobuf:"bytes,3,rep,name=clients" json:"clients,omitempty"`
  1389. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1390. XXX_unrecognized []byte `json:"-"`
  1391. XXX_sizecache int32 `json:"-"`
  1392. }
  1393. func (m *CltNode) Reset() { *m = CltNode{} }
  1394. func (m *CltNode) String() string { return proto.CompactTextString(m) }
  1395. func (*CltNode) ProtoMessage() {}
  1396. func (*CltNode) Descriptor() ([]byte, []int) {
  1397. return fileDescriptor_api_f0d39efb13fd4b71, []int{25}
  1398. }
  1399. func (m *CltNode) XXX_Unmarshal(b []byte) error {
  1400. return xxx_messageInfo_CltNode.Unmarshal(m, b)
  1401. }
  1402. func (m *CltNode) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1403. return xxx_messageInfo_CltNode.Marshal(b, m, deterministic)
  1404. }
  1405. func (dst *CltNode) XXX_Merge(src proto.Message) {
  1406. xxx_messageInfo_CltNode.Merge(dst, src)
  1407. }
  1408. func (m *CltNode) XXX_Size() int {
  1409. return xxx_messageInfo_CltNode.Size(m)
  1410. }
  1411. func (m *CltNode) XXX_DiscardUnknown() {
  1412. xxx_messageInfo_CltNode.DiscardUnknown(m)
  1413. }
  1414. var xxx_messageInfo_CltNode proto.InternalMessageInfo
  1415. func (m *CltNode) GetNode() string {
  1416. if m != nil {
  1417. return m.Node
  1418. }
  1419. return ""
  1420. }
  1421. func (m *CltNode) GetQueueLen() int64 {
  1422. if m != nil {
  1423. return m.QueueLen
  1424. }
  1425. return 0
  1426. }
  1427. func (m *CltNode) GetClients() []*Client {
  1428. if m != nil {
  1429. return m.Clients
  1430. }
  1431. return nil
  1432. }
  1433. type CltStatusReply struct {
  1434. Nodes []*CltNode `protobuf:"bytes,1,rep,name=nodes" json:"nodes,omitempty"`
  1435. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1436. XXX_unrecognized []byte `json:"-"`
  1437. XXX_sizecache int32 `json:"-"`
  1438. }
  1439. func (m *CltStatusReply) Reset() { *m = CltStatusReply{} }
  1440. func (m *CltStatusReply) String() string { return proto.CompactTextString(m) }
  1441. func (*CltStatusReply) ProtoMessage() {}
  1442. func (*CltStatusReply) Descriptor() ([]byte, []int) {
  1443. return fileDescriptor_api_f0d39efb13fd4b71, []int{26}
  1444. }
  1445. func (m *CltStatusReply) XXX_Unmarshal(b []byte) error {
  1446. return xxx_messageInfo_CltStatusReply.Unmarshal(m, b)
  1447. }
  1448. func (m *CltStatusReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1449. return xxx_messageInfo_CltStatusReply.Marshal(b, m, deterministic)
  1450. }
  1451. func (dst *CltStatusReply) XXX_Merge(src proto.Message) {
  1452. xxx_messageInfo_CltStatusReply.Merge(dst, src)
  1453. }
  1454. func (m *CltStatusReply) XXX_Size() int {
  1455. return xxx_messageInfo_CltStatusReply.Size(m)
  1456. }
  1457. func (m *CltStatusReply) XXX_DiscardUnknown() {
  1458. xxx_messageInfo_CltStatusReply.DiscardUnknown(m)
  1459. }
  1460. var xxx_messageInfo_CltStatusReply proto.InternalMessageInfo
  1461. func (m *CltStatusReply) GetNodes() []*CltNode {
  1462. if m != nil {
  1463. return m.Nodes
  1464. }
  1465. return nil
  1466. }
  1467. type SamplePointReq struct {
  1468. ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty" form:"service_name" validate:"required"`
  1469. OperationName string `protobuf:"bytes,2,opt,name=operation_name,json=operationName,proto3" json:"operation_name,omitempty" form:"operation_name" validate:"required"`
  1470. // only_error 在 errors 那个图可以指定为 true
  1471. OnlyError bool `protobuf:"varint,3,opt,name=only_error,json=onlyError,proto3" json:"only_error,omitempty" form:"only_error"`
  1472. // interval 使用 span-series 返回的 interval 即可
  1473. Interval int64 `protobuf:"varint,5,opt,name=interval,proto3" json:"interval,omitempty" form:"interval" validate:"required"`
  1474. // time 使用 time-series 返回的时间即可,相同格式型如 2006-01-02T15:04:05
  1475. Time string `protobuf:"bytes,6,opt,name=time,proto3" json:"time,omitempty" form:"time" validate:"required"`
  1476. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1477. XXX_unrecognized []byte `json:"-"`
  1478. XXX_sizecache int32 `json:"-"`
  1479. }
  1480. func (m *SamplePointReq) Reset() { *m = SamplePointReq{} }
  1481. func (m *SamplePointReq) String() string { return proto.CompactTextString(m) }
  1482. func (*SamplePointReq) ProtoMessage() {}
  1483. func (*SamplePointReq) Descriptor() ([]byte, []int) {
  1484. return fileDescriptor_api_f0d39efb13fd4b71, []int{27}
  1485. }
  1486. func (m *SamplePointReq) XXX_Unmarshal(b []byte) error {
  1487. return xxx_messageInfo_SamplePointReq.Unmarshal(m, b)
  1488. }
  1489. func (m *SamplePointReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1490. return xxx_messageInfo_SamplePointReq.Marshal(b, m, deterministic)
  1491. }
  1492. func (dst *SamplePointReq) XXX_Merge(src proto.Message) {
  1493. xxx_messageInfo_SamplePointReq.Merge(dst, src)
  1494. }
  1495. func (m *SamplePointReq) XXX_Size() int {
  1496. return xxx_messageInfo_SamplePointReq.Size(m)
  1497. }
  1498. func (m *SamplePointReq) XXX_DiscardUnknown() {
  1499. xxx_messageInfo_SamplePointReq.DiscardUnknown(m)
  1500. }
  1501. var xxx_messageInfo_SamplePointReq proto.InternalMessageInfo
  1502. func (m *SamplePointReq) GetServiceName() string {
  1503. if m != nil {
  1504. return m.ServiceName
  1505. }
  1506. return ""
  1507. }
  1508. func (m *SamplePointReq) GetOperationName() string {
  1509. if m != nil {
  1510. return m.OperationName
  1511. }
  1512. return ""
  1513. }
  1514. func (m *SamplePointReq) GetOnlyError() bool {
  1515. if m != nil {
  1516. return m.OnlyError
  1517. }
  1518. return false
  1519. }
  1520. func (m *SamplePointReq) GetInterval() int64 {
  1521. if m != nil {
  1522. return m.Interval
  1523. }
  1524. return 0
  1525. }
  1526. func (m *SamplePointReq) GetTime() string {
  1527. if m != nil {
  1528. return m.Time
  1529. }
  1530. return ""
  1531. }
  1532. type SamplePointItem struct {
  1533. TraceId string `protobuf:"bytes,1,opt,name=trace_id,json=traceId,proto3" json:"trace_id,omitempty"`
  1534. SpanId string `protobuf:"bytes,2,opt,name=span_id,json=spanId,proto3" json:"span_id,omitempty"`
  1535. Duration int64 `protobuf:"varint,3,opt,name=duration,proto3" json:"duration,omitempty"`
  1536. IsError bool `protobuf:"varint,4,opt,name=is_error,json=isError,proto3" json:"is_error,omitempty"`
  1537. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1538. XXX_unrecognized []byte `json:"-"`
  1539. XXX_sizecache int32 `json:"-"`
  1540. }
  1541. func (m *SamplePointItem) Reset() { *m = SamplePointItem{} }
  1542. func (m *SamplePointItem) String() string { return proto.CompactTextString(m) }
  1543. func (*SamplePointItem) ProtoMessage() {}
  1544. func (*SamplePointItem) Descriptor() ([]byte, []int) {
  1545. return fileDescriptor_api_f0d39efb13fd4b71, []int{28}
  1546. }
  1547. func (m *SamplePointItem) XXX_Unmarshal(b []byte) error {
  1548. return xxx_messageInfo_SamplePointItem.Unmarshal(m, b)
  1549. }
  1550. func (m *SamplePointItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1551. return xxx_messageInfo_SamplePointItem.Marshal(b, m, deterministic)
  1552. }
  1553. func (dst *SamplePointItem) XXX_Merge(src proto.Message) {
  1554. xxx_messageInfo_SamplePointItem.Merge(dst, src)
  1555. }
  1556. func (m *SamplePointItem) XXX_Size() int {
  1557. return xxx_messageInfo_SamplePointItem.Size(m)
  1558. }
  1559. func (m *SamplePointItem) XXX_DiscardUnknown() {
  1560. xxx_messageInfo_SamplePointItem.DiscardUnknown(m)
  1561. }
  1562. var xxx_messageInfo_SamplePointItem proto.InternalMessageInfo
  1563. func (m *SamplePointItem) GetTraceId() string {
  1564. if m != nil {
  1565. return m.TraceId
  1566. }
  1567. return ""
  1568. }
  1569. func (m *SamplePointItem) GetSpanId() string {
  1570. if m != nil {
  1571. return m.SpanId
  1572. }
  1573. return ""
  1574. }
  1575. func (m *SamplePointItem) GetDuration() int64 {
  1576. if m != nil {
  1577. return m.Duration
  1578. }
  1579. return 0
  1580. }
  1581. func (m *SamplePointItem) GetIsError() bool {
  1582. if m != nil {
  1583. return m.IsError
  1584. }
  1585. return false
  1586. }
  1587. type SamplePointReply struct {
  1588. Items []*SamplePointItem `protobuf:"bytes,1,rep,name=items" json:"items,omitempty"`
  1589. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1590. XXX_unrecognized []byte `json:"-"`
  1591. XXX_sizecache int32 `json:"-"`
  1592. }
  1593. func (m *SamplePointReply) Reset() { *m = SamplePointReply{} }
  1594. func (m *SamplePointReply) String() string { return proto.CompactTextString(m) }
  1595. func (*SamplePointReply) ProtoMessage() {}
  1596. func (*SamplePointReply) Descriptor() ([]byte, []int) {
  1597. return fileDescriptor_api_f0d39efb13fd4b71, []int{29}
  1598. }
  1599. func (m *SamplePointReply) XXX_Unmarshal(b []byte) error {
  1600. return xxx_messageInfo_SamplePointReply.Unmarshal(m, b)
  1601. }
  1602. func (m *SamplePointReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1603. return xxx_messageInfo_SamplePointReply.Marshal(b, m, deterministic)
  1604. }
  1605. func (dst *SamplePointReply) XXX_Merge(src proto.Message) {
  1606. xxx_messageInfo_SamplePointReply.Merge(dst, src)
  1607. }
  1608. func (m *SamplePointReply) XXX_Size() int {
  1609. return xxx_messageInfo_SamplePointReply.Size(m)
  1610. }
  1611. func (m *SamplePointReply) XXX_DiscardUnknown() {
  1612. xxx_messageInfo_SamplePointReply.DiscardUnknown(m)
  1613. }
  1614. var xxx_messageInfo_SamplePointReply proto.InternalMessageInfo
  1615. func (m *SamplePointReply) GetItems() []*SamplePointItem {
  1616. if m != nil {
  1617. return m.Items
  1618. }
  1619. return nil
  1620. }
  1621. type DependsTopologyReq struct {
  1622. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1623. XXX_unrecognized []byte `json:"-"`
  1624. XXX_sizecache int32 `json:"-"`
  1625. }
  1626. func (m *DependsTopologyReq) Reset() { *m = DependsTopologyReq{} }
  1627. func (m *DependsTopologyReq) String() string { return proto.CompactTextString(m) }
  1628. func (*DependsTopologyReq) ProtoMessage() {}
  1629. func (*DependsTopologyReq) Descriptor() ([]byte, []int) {
  1630. return fileDescriptor_api_f0d39efb13fd4b71, []int{30}
  1631. }
  1632. func (m *DependsTopologyReq) XXX_Unmarshal(b []byte) error {
  1633. return xxx_messageInfo_DependsTopologyReq.Unmarshal(m, b)
  1634. }
  1635. func (m *DependsTopologyReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1636. return xxx_messageInfo_DependsTopologyReq.Marshal(b, m, deterministic)
  1637. }
  1638. func (dst *DependsTopologyReq) XXX_Merge(src proto.Message) {
  1639. xxx_messageInfo_DependsTopologyReq.Merge(dst, src)
  1640. }
  1641. func (m *DependsTopologyReq) XXX_Size() int {
  1642. return xxx_messageInfo_DependsTopologyReq.Size(m)
  1643. }
  1644. func (m *DependsTopologyReq) XXX_DiscardUnknown() {
  1645. xxx_messageInfo_DependsTopologyReq.DiscardUnknown(m)
  1646. }
  1647. var xxx_messageInfo_DependsTopologyReq proto.InternalMessageInfo
  1648. type DependsTopologyItem struct {
  1649. ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"`
  1650. DependOn string `protobuf:"bytes,2,opt,name=depend_on,json=dependOn,proto3" json:"depend_on,omitempty"`
  1651. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1652. XXX_unrecognized []byte `json:"-"`
  1653. XXX_sizecache int32 `json:"-"`
  1654. }
  1655. func (m *DependsTopologyItem) Reset() { *m = DependsTopologyItem{} }
  1656. func (m *DependsTopologyItem) String() string { return proto.CompactTextString(m) }
  1657. func (*DependsTopologyItem) ProtoMessage() {}
  1658. func (*DependsTopologyItem) Descriptor() ([]byte, []int) {
  1659. return fileDescriptor_api_f0d39efb13fd4b71, []int{31}
  1660. }
  1661. func (m *DependsTopologyItem) XXX_Unmarshal(b []byte) error {
  1662. return xxx_messageInfo_DependsTopologyItem.Unmarshal(m, b)
  1663. }
  1664. func (m *DependsTopologyItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1665. return xxx_messageInfo_DependsTopologyItem.Marshal(b, m, deterministic)
  1666. }
  1667. func (dst *DependsTopologyItem) XXX_Merge(src proto.Message) {
  1668. xxx_messageInfo_DependsTopologyItem.Merge(dst, src)
  1669. }
  1670. func (m *DependsTopologyItem) XXX_Size() int {
  1671. return xxx_messageInfo_DependsTopologyItem.Size(m)
  1672. }
  1673. func (m *DependsTopologyItem) XXX_DiscardUnknown() {
  1674. xxx_messageInfo_DependsTopologyItem.DiscardUnknown(m)
  1675. }
  1676. var xxx_messageInfo_DependsTopologyItem proto.InternalMessageInfo
  1677. func (m *DependsTopologyItem) GetServiceName() string {
  1678. if m != nil {
  1679. return m.ServiceName
  1680. }
  1681. return ""
  1682. }
  1683. func (m *DependsTopologyItem) GetDependOn() string {
  1684. if m != nil {
  1685. return m.DependOn
  1686. }
  1687. return ""
  1688. }
  1689. type DependsTopologyReply struct {
  1690. Items []*DependsTopologyItem `protobuf:"bytes,1,rep,name=items" json:"items,omitempty"`
  1691. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1692. XXX_unrecognized []byte `json:"-"`
  1693. XXX_sizecache int32 `json:"-"`
  1694. }
  1695. func (m *DependsTopologyReply) Reset() { *m = DependsTopologyReply{} }
  1696. func (m *DependsTopologyReply) String() string { return proto.CompactTextString(m) }
  1697. func (*DependsTopologyReply) ProtoMessage() {}
  1698. func (*DependsTopologyReply) Descriptor() ([]byte, []int) {
  1699. return fileDescriptor_api_f0d39efb13fd4b71, []int{32}
  1700. }
  1701. func (m *DependsTopologyReply) XXX_Unmarshal(b []byte) error {
  1702. return xxx_messageInfo_DependsTopologyReply.Unmarshal(m, b)
  1703. }
  1704. func (m *DependsTopologyReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1705. return xxx_messageInfo_DependsTopologyReply.Marshal(b, m, deterministic)
  1706. }
  1707. func (dst *DependsTopologyReply) XXX_Merge(src proto.Message) {
  1708. xxx_messageInfo_DependsTopologyReply.Merge(dst, src)
  1709. }
  1710. func (m *DependsTopologyReply) XXX_Size() int {
  1711. return xxx_messageInfo_DependsTopologyReply.Size(m)
  1712. }
  1713. func (m *DependsTopologyReply) XXX_DiscardUnknown() {
  1714. xxx_messageInfo_DependsTopologyReply.DiscardUnknown(m)
  1715. }
  1716. var xxx_messageInfo_DependsTopologyReply proto.InternalMessageInfo
  1717. func (m *DependsTopologyReply) GetItems() []*DependsTopologyItem {
  1718. if m != nil {
  1719. return m.Items
  1720. }
  1721. return nil
  1722. }
  1723. type OpsLogReq struct {
  1724. TraceId string `protobuf:"bytes,1,opt,name=trace_id,json=traceId,proto3" json:"trace_id,omitempty" form:"trace_id" validate:"required"`
  1725. SpanId string `protobuf:"bytes,2,opt,name=span_id,json=spanId,proto3" json:"span_id,omitempty" form:"span_id"`
  1726. TraceField string `protobuf:"bytes,3,opt,name=trace_field,json=traceField,proto3" json:"trace_field,omitempty" form:"trace_field"`
  1727. ServiceName string `protobuf:"bytes,4,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty" form:"service_name"`
  1728. OperationName string `protobuf:"bytes,5,opt,name=operation_name,json=operationName,proto3" json:"operation_name,omitempty" form:"operation_name"`
  1729. // 开始时间
  1730. Start int64 `protobuf:"varint,6,opt,name=start,proto3" json:"start,omitempty" form:"start"`
  1731. // 结束时间
  1732. End int64 `protobuf:"varint,7,opt,name=end,proto3" json:"end,omitempty" form:"end"`
  1733. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1734. XXX_unrecognized []byte `json:"-"`
  1735. XXX_sizecache int32 `json:"-"`
  1736. }
  1737. func (m *OpsLogReq) Reset() { *m = OpsLogReq{} }
  1738. func (m *OpsLogReq) String() string { return proto.CompactTextString(m) }
  1739. func (*OpsLogReq) ProtoMessage() {}
  1740. func (*OpsLogReq) Descriptor() ([]byte, []int) {
  1741. return fileDescriptor_api_f0d39efb13fd4b71, []int{33}
  1742. }
  1743. func (m *OpsLogReq) XXX_Unmarshal(b []byte) error {
  1744. return xxx_messageInfo_OpsLogReq.Unmarshal(m, b)
  1745. }
  1746. func (m *OpsLogReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1747. return xxx_messageInfo_OpsLogReq.Marshal(b, m, deterministic)
  1748. }
  1749. func (dst *OpsLogReq) XXX_Merge(src proto.Message) {
  1750. xxx_messageInfo_OpsLogReq.Merge(dst, src)
  1751. }
  1752. func (m *OpsLogReq) XXX_Size() int {
  1753. return xxx_messageInfo_OpsLogReq.Size(m)
  1754. }
  1755. func (m *OpsLogReq) XXX_DiscardUnknown() {
  1756. xxx_messageInfo_OpsLogReq.DiscardUnknown(m)
  1757. }
  1758. var xxx_messageInfo_OpsLogReq proto.InternalMessageInfo
  1759. func (m *OpsLogReq) GetTraceId() string {
  1760. if m != nil {
  1761. return m.TraceId
  1762. }
  1763. return ""
  1764. }
  1765. func (m *OpsLogReq) GetSpanId() string {
  1766. if m != nil {
  1767. return m.SpanId
  1768. }
  1769. return ""
  1770. }
  1771. func (m *OpsLogReq) GetTraceField() string {
  1772. if m != nil {
  1773. return m.TraceField
  1774. }
  1775. return ""
  1776. }
  1777. func (m *OpsLogReq) GetServiceName() string {
  1778. if m != nil {
  1779. return m.ServiceName
  1780. }
  1781. return ""
  1782. }
  1783. func (m *OpsLogReq) GetOperationName() string {
  1784. if m != nil {
  1785. return m.OperationName
  1786. }
  1787. return ""
  1788. }
  1789. func (m *OpsLogReq) GetStart() int64 {
  1790. if m != nil {
  1791. return m.Start
  1792. }
  1793. return 0
  1794. }
  1795. func (m *OpsLogReq) GetEnd() int64 {
  1796. if m != nil {
  1797. return m.End
  1798. }
  1799. return 0
  1800. }
  1801. type OpsLogRecord struct {
  1802. Time string `protobuf:"bytes,1,opt,name=time,proto3" json:"time,omitempty"`
  1803. Fields map[string]*TagValue `protobuf:"bytes,2,rep,name=fields" json:"fields,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value"`
  1804. Level string `protobuf:"bytes,3,opt,name=level,proto3" json:"level,omitempty"`
  1805. Message string `protobuf:"bytes,4,opt,name=message,proto3" json:"message,omitempty"`
  1806. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1807. XXX_unrecognized []byte `json:"-"`
  1808. XXX_sizecache int32 `json:"-"`
  1809. }
  1810. func (m *OpsLogRecord) Reset() { *m = OpsLogRecord{} }
  1811. func (m *OpsLogRecord) String() string { return proto.CompactTextString(m) }
  1812. func (*OpsLogRecord) ProtoMessage() {}
  1813. func (*OpsLogRecord) Descriptor() ([]byte, []int) {
  1814. return fileDescriptor_api_f0d39efb13fd4b71, []int{34}
  1815. }
  1816. func (m *OpsLogRecord) XXX_Unmarshal(b []byte) error {
  1817. return xxx_messageInfo_OpsLogRecord.Unmarshal(m, b)
  1818. }
  1819. func (m *OpsLogRecord) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1820. return xxx_messageInfo_OpsLogRecord.Marshal(b, m, deterministic)
  1821. }
  1822. func (dst *OpsLogRecord) XXX_Merge(src proto.Message) {
  1823. xxx_messageInfo_OpsLogRecord.Merge(dst, src)
  1824. }
  1825. func (m *OpsLogRecord) XXX_Size() int {
  1826. return xxx_messageInfo_OpsLogRecord.Size(m)
  1827. }
  1828. func (m *OpsLogRecord) XXX_DiscardUnknown() {
  1829. xxx_messageInfo_OpsLogRecord.DiscardUnknown(m)
  1830. }
  1831. var xxx_messageInfo_OpsLogRecord proto.InternalMessageInfo
  1832. func (m *OpsLogRecord) GetTime() string {
  1833. if m != nil {
  1834. return m.Time
  1835. }
  1836. return ""
  1837. }
  1838. func (m *OpsLogRecord) GetFields() map[string]*TagValue {
  1839. if m != nil {
  1840. return m.Fields
  1841. }
  1842. return nil
  1843. }
  1844. func (m *OpsLogRecord) GetLevel() string {
  1845. if m != nil {
  1846. return m.Level
  1847. }
  1848. return ""
  1849. }
  1850. func (m *OpsLogRecord) GetMessage() string {
  1851. if m != nil {
  1852. return m.Message
  1853. }
  1854. return ""
  1855. }
  1856. type OpsLogReply struct {
  1857. Records []*OpsLogRecord `protobuf:"bytes,1,rep,name=records" json:"records,omitempty"`
  1858. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1859. XXX_unrecognized []byte `json:"-"`
  1860. XXX_sizecache int32 `json:"-"`
  1861. }
  1862. func (m *OpsLogReply) Reset() { *m = OpsLogReply{} }
  1863. func (m *OpsLogReply) String() string { return proto.CompactTextString(m) }
  1864. func (*OpsLogReply) ProtoMessage() {}
  1865. func (*OpsLogReply) Descriptor() ([]byte, []int) {
  1866. return fileDescriptor_api_f0d39efb13fd4b71, []int{35}
  1867. }
  1868. func (m *OpsLogReply) XXX_Unmarshal(b []byte) error {
  1869. return xxx_messageInfo_OpsLogReply.Unmarshal(m, b)
  1870. }
  1871. func (m *OpsLogReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1872. return xxx_messageInfo_OpsLogReply.Marshal(b, m, deterministic)
  1873. }
  1874. func (dst *OpsLogReply) XXX_Merge(src proto.Message) {
  1875. xxx_messageInfo_OpsLogReply.Merge(dst, src)
  1876. }
  1877. func (m *OpsLogReply) XXX_Size() int {
  1878. return xxx_messageInfo_OpsLogReply.Size(m)
  1879. }
  1880. func (m *OpsLogReply) XXX_DiscardUnknown() {
  1881. xxx_messageInfo_OpsLogReply.DiscardUnknown(m)
  1882. }
  1883. var xxx_messageInfo_OpsLogReply proto.InternalMessageInfo
  1884. func (m *OpsLogReply) GetRecords() []*OpsLogRecord {
  1885. if m != nil {
  1886. return m.Records
  1887. }
  1888. return nil
  1889. }
  1890. type ServiceDependReq struct {
  1891. // service_name 不解释!
  1892. ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty" form:"service_name" validate:"required"`
  1893. // operation_name 当 operation_name 为空时查询所有 operation_name 然后 merge 结果
  1894. OperationName string `protobuf:"bytes,2,opt,name=operation_name,json=operationName,proto3" json:"operation_name,omitempty" form:"operation_name"`
  1895. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1896. XXX_unrecognized []byte `json:"-"`
  1897. XXX_sizecache int32 `json:"-"`
  1898. }
  1899. func (m *ServiceDependReq) Reset() { *m = ServiceDependReq{} }
  1900. func (m *ServiceDependReq) String() string { return proto.CompactTextString(m) }
  1901. func (*ServiceDependReq) ProtoMessage() {}
  1902. func (*ServiceDependReq) Descriptor() ([]byte, []int) {
  1903. return fileDescriptor_api_f0d39efb13fd4b71, []int{36}
  1904. }
  1905. func (m *ServiceDependReq) XXX_Unmarshal(b []byte) error {
  1906. return xxx_messageInfo_ServiceDependReq.Unmarshal(m, b)
  1907. }
  1908. func (m *ServiceDependReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1909. return xxx_messageInfo_ServiceDependReq.Marshal(b, m, deterministic)
  1910. }
  1911. func (dst *ServiceDependReq) XXX_Merge(src proto.Message) {
  1912. xxx_messageInfo_ServiceDependReq.Merge(dst, src)
  1913. }
  1914. func (m *ServiceDependReq) XXX_Size() int {
  1915. return xxx_messageInfo_ServiceDependReq.Size(m)
  1916. }
  1917. func (m *ServiceDependReq) XXX_DiscardUnknown() {
  1918. xxx_messageInfo_ServiceDependReq.DiscardUnknown(m)
  1919. }
  1920. var xxx_messageInfo_ServiceDependReq proto.InternalMessageInfo
  1921. func (m *ServiceDependReq) GetServiceName() string {
  1922. if m != nil {
  1923. return m.ServiceName
  1924. }
  1925. return ""
  1926. }
  1927. func (m *ServiceDependReq) GetOperationName() string {
  1928. if m != nil {
  1929. return m.OperationName
  1930. }
  1931. return ""
  1932. }
  1933. type ServiceDependReply struct {
  1934. Items []*ServiceDependItem `protobuf:"bytes,1,rep,name=items" json:"items,omitempty"`
  1935. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1936. XXX_unrecognized []byte `json:"-"`
  1937. XXX_sizecache int32 `json:"-"`
  1938. }
  1939. func (m *ServiceDependReply) Reset() { *m = ServiceDependReply{} }
  1940. func (m *ServiceDependReply) String() string { return proto.CompactTextString(m) }
  1941. func (*ServiceDependReply) ProtoMessage() {}
  1942. func (*ServiceDependReply) Descriptor() ([]byte, []int) {
  1943. return fileDescriptor_api_f0d39efb13fd4b71, []int{37}
  1944. }
  1945. func (m *ServiceDependReply) XXX_Unmarshal(b []byte) error {
  1946. return xxx_messageInfo_ServiceDependReply.Unmarshal(m, b)
  1947. }
  1948. func (m *ServiceDependReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1949. return xxx_messageInfo_ServiceDependReply.Marshal(b, m, deterministic)
  1950. }
  1951. func (dst *ServiceDependReply) XXX_Merge(src proto.Message) {
  1952. xxx_messageInfo_ServiceDependReply.Merge(dst, src)
  1953. }
  1954. func (m *ServiceDependReply) XXX_Size() int {
  1955. return xxx_messageInfo_ServiceDependReply.Size(m)
  1956. }
  1957. func (m *ServiceDependReply) XXX_DiscardUnknown() {
  1958. xxx_messageInfo_ServiceDependReply.DiscardUnknown(m)
  1959. }
  1960. var xxx_messageInfo_ServiceDependReply proto.InternalMessageInfo
  1961. func (m *ServiceDependReply) GetItems() []*ServiceDependItem {
  1962. if m != nil {
  1963. return m.Items
  1964. }
  1965. return nil
  1966. }
  1967. type ServiceDependItem struct {
  1968. // service_name 依赖服务名称, service 为 AppID 其他为组件名 mysql, redis, http 等
  1969. ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"`
  1970. // component, 通讯组件 e.g. net/http, goRPC, gRPC
  1971. Component string `protobuf:"bytes,2,opt,name=component,proto3" json:"component,omitempty"`
  1972. // operation_names 被依赖服务的 operation_names, mysql, redis 等为空
  1973. OperationNames []string `protobuf:"bytes,3,rep,name=operation_names,json=operationNames" json:"operation_names,omitempty"`
  1974. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1975. XXX_unrecognized []byte `json:"-"`
  1976. XXX_sizecache int32 `json:"-"`
  1977. }
  1978. func (m *ServiceDependItem) Reset() { *m = ServiceDependItem{} }
  1979. func (m *ServiceDependItem) String() string { return proto.CompactTextString(m) }
  1980. func (*ServiceDependItem) ProtoMessage() {}
  1981. func (*ServiceDependItem) Descriptor() ([]byte, []int) {
  1982. return fileDescriptor_api_f0d39efb13fd4b71, []int{38}
  1983. }
  1984. func (m *ServiceDependItem) XXX_Unmarshal(b []byte) error {
  1985. return xxx_messageInfo_ServiceDependItem.Unmarshal(m, b)
  1986. }
  1987. func (m *ServiceDependItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1988. return xxx_messageInfo_ServiceDependItem.Marshal(b, m, deterministic)
  1989. }
  1990. func (dst *ServiceDependItem) XXX_Merge(src proto.Message) {
  1991. xxx_messageInfo_ServiceDependItem.Merge(dst, src)
  1992. }
  1993. func (m *ServiceDependItem) XXX_Size() int {
  1994. return xxx_messageInfo_ServiceDependItem.Size(m)
  1995. }
  1996. func (m *ServiceDependItem) XXX_DiscardUnknown() {
  1997. xxx_messageInfo_ServiceDependItem.DiscardUnknown(m)
  1998. }
  1999. var xxx_messageInfo_ServiceDependItem proto.InternalMessageInfo
  2000. func (m *ServiceDependItem) GetServiceName() string {
  2001. if m != nil {
  2002. return m.ServiceName
  2003. }
  2004. return ""
  2005. }
  2006. func (m *ServiceDependItem) GetComponent() string {
  2007. if m != nil {
  2008. return m.Component
  2009. }
  2010. return ""
  2011. }
  2012. func (m *ServiceDependItem) GetOperationNames() []string {
  2013. if m != nil {
  2014. return m.OperationNames
  2015. }
  2016. return nil
  2017. }
  2018. func init() {
  2019. proto.RegisterType((*ListServiceNameReq)(nil), "dapper.query.v1.ListServiceNameReq")
  2020. proto.RegisterType((*ListServiceNameReply)(nil), "dapper.query.v1.ListServiceNameReply")
  2021. proto.RegisterType((*ListOperationNameReq)(nil), "dapper.query.v1.ListOperationNameReq")
  2022. proto.RegisterType((*ListOperationNameReply)(nil), "dapper.query.v1.ListOperationNameReply")
  2023. proto.RegisterType((*ListSpanReq)(nil), "dapper.query.v1.ListSpanReq")
  2024. proto.RegisterType((*SpanListItem)(nil), "dapper.query.v1.SpanListItem")
  2025. proto.RegisterMapType((map[string]*TagValue)(nil), "dapper.query.v1.SpanListItem.TagsEntry")
  2026. proto.RegisterType((*TraceReq)(nil), "dapper.query.v1.TraceReq")
  2027. proto.RegisterType((*RawTraceReq)(nil), "dapper.query.v1.RawTraceReq")
  2028. proto.RegisterType((*RawTraceReply)(nil), "dapper.query.v1.RawTraceReply")
  2029. proto.RegisterType((*TagValue)(nil), "dapper.query.v1.TagValue")
  2030. proto.RegisterType((*Field)(nil), "dapper.query.v1.Field")
  2031. proto.RegisterType((*Log)(nil), "dapper.query.v1.Log")
  2032. proto.RegisterType((*Span)(nil), "dapper.query.v1.Span")
  2033. proto.RegisterMapType((map[string]*TagValue)(nil), "dapper.query.v1.Span.TagsEntry")
  2034. proto.RegisterType((*TraceReply)(nil), "dapper.query.v1.TraceReply")
  2035. proto.RegisterType((*ListSpanReply)(nil), "dapper.query.v1.ListSpanReply")
  2036. proto.RegisterType((*OperationNameRankReq)(nil), "dapper.query.v1.OperationNameRankReq")
  2037. proto.RegisterType((*RankItem)(nil), "dapper.query.v1.RankItem")
  2038. proto.RegisterType((*OperationNameRankReply)(nil), "dapper.query.v1.OperationNameRankReply")
  2039. proto.RegisterType((*DependsRankReq)(nil), "dapper.query.v1.DependsRankReq")
  2040. proto.RegisterType((*DependsRankReply)(nil), "dapper.query.v1.DependsRankReply")
  2041. proto.RegisterType((*SpanSeriesReq)(nil), "dapper.query.v1.SpanSeriesReq")
  2042. proto.RegisterType((*SeriesItem)(nil), "dapper.query.v1.SeriesItem")
  2043. proto.RegisterType((*SpanSeriesReply)(nil), "dapper.query.v1.SpanSeriesReply")
  2044. proto.RegisterType((*CltStatusReq)(nil), "dapper.query.v1.CltStatusReq")
  2045. proto.RegisterType((*Client)(nil), "dapper.query.v1.Client")
  2046. proto.RegisterType((*CltNode)(nil), "dapper.query.v1.CltNode")
  2047. proto.RegisterType((*CltStatusReply)(nil), "dapper.query.v1.CltStatusReply")
  2048. proto.RegisterType((*SamplePointReq)(nil), "dapper.query.v1.SamplePointReq")
  2049. proto.RegisterType((*SamplePointItem)(nil), "dapper.query.v1.SamplePointItem")
  2050. proto.RegisterType((*SamplePointReply)(nil), "dapper.query.v1.SamplePointReply")
  2051. proto.RegisterType((*DependsTopologyReq)(nil), "dapper.query.v1.DependsTopologyReq")
  2052. proto.RegisterType((*DependsTopologyItem)(nil), "dapper.query.v1.DependsTopologyItem")
  2053. proto.RegisterType((*DependsTopologyReply)(nil), "dapper.query.v1.DependsTopologyReply")
  2054. proto.RegisterType((*OpsLogReq)(nil), "dapper.query.v1.OpsLogReq")
  2055. proto.RegisterType((*OpsLogRecord)(nil), "dapper.query.v1.OpsLogRecord")
  2056. proto.RegisterMapType((map[string]*TagValue)(nil), "dapper.query.v1.OpsLogRecord.FieldsEntry")
  2057. proto.RegisterType((*OpsLogReply)(nil), "dapper.query.v1.OpsLogReply")
  2058. proto.RegisterType((*ServiceDependReq)(nil), "dapper.query.v1.ServiceDependReq")
  2059. proto.RegisterType((*ServiceDependReply)(nil), "dapper.query.v1.ServiceDependReply")
  2060. proto.RegisterType((*ServiceDependItem)(nil), "dapper.query.v1.ServiceDependItem")
  2061. }
  2062. // Reference imports to suppress errors if they are not otherwise used.
  2063. var _ context.Context
  2064. var _ grpc.ClientConn
  2065. // This is a compile-time assertion to ensure that this generated file
  2066. // is compatible with the grpc package it is being compiled against.
  2067. const _ = grpc.SupportPackageIsVersion4
  2068. // DapperQueryClient is the client API for DapperQuery service.
  2069. //
  2070. // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
  2071. type DapperQueryClient interface {
  2072. // ListServiceName 列出所有 service
  2073. ListServiceName(ctx context.Context, in *ListServiceNameReq, opts ...grpc.CallOption) (*ListServiceNameReply, error)
  2074. // ListOperationName 列出某一 service 下所有 operation_name 仅 span.kind 为 server 的 operation_name
  2075. ListOperationName(ctx context.Context, in *ListOperationNameReq, opts ...grpc.CallOption) (*ListOperationNameReply, error)
  2076. // ListSpan 列出一个 service_name 某一 operation_name 所有采样到 Span
  2077. ListSpan(ctx context.Context, in *ListSpanReq, opts ...grpc.CallOption) (*ListSpanReply, error)
  2078. // Trace 查询一个 Trace
  2079. Trace(ctx context.Context, in *TraceReq, opts ...grpc.CallOption) (*TraceReply, error)
  2080. // RawTrace 原始 Trace 数据
  2081. RawTrace(ctx context.Context, in *RawTraceReq, opts ...grpc.CallOption) (*RawTraceReply, error)
  2082. // OperationNameRank 查询 OperationName 排名列表
  2083. OperationNameRank(ctx context.Context, in *OperationNameRankReq, opts ...grpc.CallOption) (*OperationNameRankReply, error)
  2084. // DependsRank 查询某一个 service_name:operation_name 下所有依赖组件排名
  2085. DependsRank(ctx context.Context, in *DependsRankReq, opts ...grpc.CallOption) (*DependsRankReply, error)
  2086. // SpanSeries 获取 span 的时间序列数据
  2087. SpanSeries(ctx context.Context, in *SpanSeriesReq, opts ...grpc.CallOption) (*SpanSeriesReply, error)
  2088. // SamplePoint 获取采样点数据
  2089. SamplePoint(ctx context.Context, in *SamplePointReq, opts ...grpc.CallOption) (*SamplePointReply, error)
  2090. // CltStatus 获取 collector 信息
  2091. CltStatus(ctx context.Context, in *CltStatusReq, opts ...grpc.CallOption) (*CltStatusReply, error)
  2092. // DependsTopology 获取依赖拓扑图
  2093. DependsTopology(ctx context.Context, in *DependsTopologyReq, opts ...grpc.CallOption) (*DependsTopologyReply, error)
  2094. // OpsLog 获取 通过 trace-id 获取 opslog 记录
  2095. // 如果请求的 trace-id 没有被记录到, 则需要提供 service_name operation_name 和 timestamp 进行模糊查询
  2096. OpsLog(ctx context.Context, in *OpsLogReq, opts ...grpc.CallOption) (*OpsLogReply, error)
  2097. // ServiceDepend 查询服务的直接依赖
  2098. // TODO: 通过最近收集的到3 个 span 实时计算的,在当前查询的服务出现不正常的时候,查询结果可能不准确
  2099. ServiceDepend(ctx context.Context, in *ServiceDependReq, opts ...grpc.CallOption) (*ServiceDependReply, error)
  2100. }
  2101. type dapperQueryClient struct {
  2102. cc *grpc.ClientConn
  2103. }
  2104. func NewDapperQueryClient(cc *grpc.ClientConn) DapperQueryClient {
  2105. return &dapperQueryClient{cc}
  2106. }
  2107. func (c *dapperQueryClient) ListServiceName(ctx context.Context, in *ListServiceNameReq, opts ...grpc.CallOption) (*ListServiceNameReply, error) {
  2108. out := new(ListServiceNameReply)
  2109. err := c.cc.Invoke(ctx, "/dapper.query.v1.DapperQuery/ListServiceName", in, out, opts...)
  2110. if err != nil {
  2111. return nil, err
  2112. }
  2113. return out, nil
  2114. }
  2115. func (c *dapperQueryClient) ListOperationName(ctx context.Context, in *ListOperationNameReq, opts ...grpc.CallOption) (*ListOperationNameReply, error) {
  2116. out := new(ListOperationNameReply)
  2117. err := c.cc.Invoke(ctx, "/dapper.query.v1.DapperQuery/ListOperationName", in, out, opts...)
  2118. if err != nil {
  2119. return nil, err
  2120. }
  2121. return out, nil
  2122. }
  2123. func (c *dapperQueryClient) ListSpan(ctx context.Context, in *ListSpanReq, opts ...grpc.CallOption) (*ListSpanReply, error) {
  2124. out := new(ListSpanReply)
  2125. err := c.cc.Invoke(ctx, "/dapper.query.v1.DapperQuery/ListSpan", in, out, opts...)
  2126. if err != nil {
  2127. return nil, err
  2128. }
  2129. return out, nil
  2130. }
  2131. func (c *dapperQueryClient) Trace(ctx context.Context, in *TraceReq, opts ...grpc.CallOption) (*TraceReply, error) {
  2132. out := new(TraceReply)
  2133. err := c.cc.Invoke(ctx, "/dapper.query.v1.DapperQuery/Trace", in, out, opts...)
  2134. if err != nil {
  2135. return nil, err
  2136. }
  2137. return out, nil
  2138. }
  2139. func (c *dapperQueryClient) RawTrace(ctx context.Context, in *RawTraceReq, opts ...grpc.CallOption) (*RawTraceReply, error) {
  2140. out := new(RawTraceReply)
  2141. err := c.cc.Invoke(ctx, "/dapper.query.v1.DapperQuery/RawTrace", in, out, opts...)
  2142. if err != nil {
  2143. return nil, err
  2144. }
  2145. return out, nil
  2146. }
  2147. func (c *dapperQueryClient) OperationNameRank(ctx context.Context, in *OperationNameRankReq, opts ...grpc.CallOption) (*OperationNameRankReply, error) {
  2148. out := new(OperationNameRankReply)
  2149. err := c.cc.Invoke(ctx, "/dapper.query.v1.DapperQuery/OperationNameRank", in, out, opts...)
  2150. if err != nil {
  2151. return nil, err
  2152. }
  2153. return out, nil
  2154. }
  2155. func (c *dapperQueryClient) DependsRank(ctx context.Context, in *DependsRankReq, opts ...grpc.CallOption) (*DependsRankReply, error) {
  2156. out := new(DependsRankReply)
  2157. err := c.cc.Invoke(ctx, "/dapper.query.v1.DapperQuery/DependsRank", in, out, opts...)
  2158. if err != nil {
  2159. return nil, err
  2160. }
  2161. return out, nil
  2162. }
  2163. func (c *dapperQueryClient) SpanSeries(ctx context.Context, in *SpanSeriesReq, opts ...grpc.CallOption) (*SpanSeriesReply, error) {
  2164. out := new(SpanSeriesReply)
  2165. err := c.cc.Invoke(ctx, "/dapper.query.v1.DapperQuery/SpanSeries", in, out, opts...)
  2166. if err != nil {
  2167. return nil, err
  2168. }
  2169. return out, nil
  2170. }
  2171. func (c *dapperQueryClient) SamplePoint(ctx context.Context, in *SamplePointReq, opts ...grpc.CallOption) (*SamplePointReply, error) {
  2172. out := new(SamplePointReply)
  2173. err := c.cc.Invoke(ctx, "/dapper.query.v1.DapperQuery/SamplePoint", in, out, opts...)
  2174. if err != nil {
  2175. return nil, err
  2176. }
  2177. return out, nil
  2178. }
  2179. func (c *dapperQueryClient) CltStatus(ctx context.Context, in *CltStatusReq, opts ...grpc.CallOption) (*CltStatusReply, error) {
  2180. out := new(CltStatusReply)
  2181. err := c.cc.Invoke(ctx, "/dapper.query.v1.DapperQuery/CltStatus", in, out, opts...)
  2182. if err != nil {
  2183. return nil, err
  2184. }
  2185. return out, nil
  2186. }
  2187. func (c *dapperQueryClient) DependsTopology(ctx context.Context, in *DependsTopologyReq, opts ...grpc.CallOption) (*DependsTopologyReply, error) {
  2188. out := new(DependsTopologyReply)
  2189. err := c.cc.Invoke(ctx, "/dapper.query.v1.DapperQuery/DependsTopology", in, out, opts...)
  2190. if err != nil {
  2191. return nil, err
  2192. }
  2193. return out, nil
  2194. }
  2195. func (c *dapperQueryClient) OpsLog(ctx context.Context, in *OpsLogReq, opts ...grpc.CallOption) (*OpsLogReply, error) {
  2196. out := new(OpsLogReply)
  2197. err := c.cc.Invoke(ctx, "/dapper.query.v1.DapperQuery/OpsLog", in, out, opts...)
  2198. if err != nil {
  2199. return nil, err
  2200. }
  2201. return out, nil
  2202. }
  2203. func (c *dapperQueryClient) ServiceDepend(ctx context.Context, in *ServiceDependReq, opts ...grpc.CallOption) (*ServiceDependReply, error) {
  2204. out := new(ServiceDependReply)
  2205. err := c.cc.Invoke(ctx, "/dapper.query.v1.DapperQuery/ServiceDepend", in, out, opts...)
  2206. if err != nil {
  2207. return nil, err
  2208. }
  2209. return out, nil
  2210. }
  2211. // DapperQueryServer is the server API for DapperQuery service.
  2212. type DapperQueryServer interface {
  2213. // ListServiceName 列出所有 service
  2214. ListServiceName(context.Context, *ListServiceNameReq) (*ListServiceNameReply, error)
  2215. // ListOperationName 列出某一 service 下所有 operation_name 仅 span.kind 为 server 的 operation_name
  2216. ListOperationName(context.Context, *ListOperationNameReq) (*ListOperationNameReply, error)
  2217. // ListSpan 列出一个 service_name 某一 operation_name 所有采样到 Span
  2218. ListSpan(context.Context, *ListSpanReq) (*ListSpanReply, error)
  2219. // Trace 查询一个 Trace
  2220. Trace(context.Context, *TraceReq) (*TraceReply, error)
  2221. // RawTrace 原始 Trace 数据
  2222. RawTrace(context.Context, *RawTraceReq) (*RawTraceReply, error)
  2223. // OperationNameRank 查询 OperationName 排名列表
  2224. OperationNameRank(context.Context, *OperationNameRankReq) (*OperationNameRankReply, error)
  2225. // DependsRank 查询某一个 service_name:operation_name 下所有依赖组件排名
  2226. DependsRank(context.Context, *DependsRankReq) (*DependsRankReply, error)
  2227. // SpanSeries 获取 span 的时间序列数据
  2228. SpanSeries(context.Context, *SpanSeriesReq) (*SpanSeriesReply, error)
  2229. // SamplePoint 获取采样点数据
  2230. SamplePoint(context.Context, *SamplePointReq) (*SamplePointReply, error)
  2231. // CltStatus 获取 collector 信息
  2232. CltStatus(context.Context, *CltStatusReq) (*CltStatusReply, error)
  2233. // DependsTopology 获取依赖拓扑图
  2234. DependsTopology(context.Context, *DependsTopologyReq) (*DependsTopologyReply, error)
  2235. // OpsLog 获取 通过 trace-id 获取 opslog 记录
  2236. // 如果请求的 trace-id 没有被记录到, 则需要提供 service_name operation_name 和 timestamp 进行模糊查询
  2237. OpsLog(context.Context, *OpsLogReq) (*OpsLogReply, error)
  2238. // ServiceDepend 查询服务的直接依赖
  2239. // TODO: 通过最近收集的到3 个 span 实时计算的,在当前查询的服务出现不正常的时候,查询结果可能不准确
  2240. ServiceDepend(context.Context, *ServiceDependReq) (*ServiceDependReply, error)
  2241. }
  2242. func RegisterDapperQueryServer(s *grpc.Server, srv DapperQueryServer) {
  2243. s.RegisterService(&_DapperQuery_serviceDesc, srv)
  2244. }
  2245. func _DapperQuery_ListServiceName_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2246. in := new(ListServiceNameReq)
  2247. if err := dec(in); err != nil {
  2248. return nil, err
  2249. }
  2250. if interceptor == nil {
  2251. return srv.(DapperQueryServer).ListServiceName(ctx, in)
  2252. }
  2253. info := &grpc.UnaryServerInfo{
  2254. Server: srv,
  2255. FullMethod: "/dapper.query.v1.DapperQuery/ListServiceName",
  2256. }
  2257. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2258. return srv.(DapperQueryServer).ListServiceName(ctx, req.(*ListServiceNameReq))
  2259. }
  2260. return interceptor(ctx, in, info, handler)
  2261. }
  2262. func _DapperQuery_ListOperationName_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2263. in := new(ListOperationNameReq)
  2264. if err := dec(in); err != nil {
  2265. return nil, err
  2266. }
  2267. if interceptor == nil {
  2268. return srv.(DapperQueryServer).ListOperationName(ctx, in)
  2269. }
  2270. info := &grpc.UnaryServerInfo{
  2271. Server: srv,
  2272. FullMethod: "/dapper.query.v1.DapperQuery/ListOperationName",
  2273. }
  2274. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2275. return srv.(DapperQueryServer).ListOperationName(ctx, req.(*ListOperationNameReq))
  2276. }
  2277. return interceptor(ctx, in, info, handler)
  2278. }
  2279. func _DapperQuery_ListSpan_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2280. in := new(ListSpanReq)
  2281. if err := dec(in); err != nil {
  2282. return nil, err
  2283. }
  2284. if interceptor == nil {
  2285. return srv.(DapperQueryServer).ListSpan(ctx, in)
  2286. }
  2287. info := &grpc.UnaryServerInfo{
  2288. Server: srv,
  2289. FullMethod: "/dapper.query.v1.DapperQuery/ListSpan",
  2290. }
  2291. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2292. return srv.(DapperQueryServer).ListSpan(ctx, req.(*ListSpanReq))
  2293. }
  2294. return interceptor(ctx, in, info, handler)
  2295. }
  2296. func _DapperQuery_Trace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2297. in := new(TraceReq)
  2298. if err := dec(in); err != nil {
  2299. return nil, err
  2300. }
  2301. if interceptor == nil {
  2302. return srv.(DapperQueryServer).Trace(ctx, in)
  2303. }
  2304. info := &grpc.UnaryServerInfo{
  2305. Server: srv,
  2306. FullMethod: "/dapper.query.v1.DapperQuery/Trace",
  2307. }
  2308. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2309. return srv.(DapperQueryServer).Trace(ctx, req.(*TraceReq))
  2310. }
  2311. return interceptor(ctx, in, info, handler)
  2312. }
  2313. func _DapperQuery_RawTrace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2314. in := new(RawTraceReq)
  2315. if err := dec(in); err != nil {
  2316. return nil, err
  2317. }
  2318. if interceptor == nil {
  2319. return srv.(DapperQueryServer).RawTrace(ctx, in)
  2320. }
  2321. info := &grpc.UnaryServerInfo{
  2322. Server: srv,
  2323. FullMethod: "/dapper.query.v1.DapperQuery/RawTrace",
  2324. }
  2325. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2326. return srv.(DapperQueryServer).RawTrace(ctx, req.(*RawTraceReq))
  2327. }
  2328. return interceptor(ctx, in, info, handler)
  2329. }
  2330. func _DapperQuery_OperationNameRank_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2331. in := new(OperationNameRankReq)
  2332. if err := dec(in); err != nil {
  2333. return nil, err
  2334. }
  2335. if interceptor == nil {
  2336. return srv.(DapperQueryServer).OperationNameRank(ctx, in)
  2337. }
  2338. info := &grpc.UnaryServerInfo{
  2339. Server: srv,
  2340. FullMethod: "/dapper.query.v1.DapperQuery/OperationNameRank",
  2341. }
  2342. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2343. return srv.(DapperQueryServer).OperationNameRank(ctx, req.(*OperationNameRankReq))
  2344. }
  2345. return interceptor(ctx, in, info, handler)
  2346. }
  2347. func _DapperQuery_DependsRank_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2348. in := new(DependsRankReq)
  2349. if err := dec(in); err != nil {
  2350. return nil, err
  2351. }
  2352. if interceptor == nil {
  2353. return srv.(DapperQueryServer).DependsRank(ctx, in)
  2354. }
  2355. info := &grpc.UnaryServerInfo{
  2356. Server: srv,
  2357. FullMethod: "/dapper.query.v1.DapperQuery/DependsRank",
  2358. }
  2359. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2360. return srv.(DapperQueryServer).DependsRank(ctx, req.(*DependsRankReq))
  2361. }
  2362. return interceptor(ctx, in, info, handler)
  2363. }
  2364. func _DapperQuery_SpanSeries_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2365. in := new(SpanSeriesReq)
  2366. if err := dec(in); err != nil {
  2367. return nil, err
  2368. }
  2369. if interceptor == nil {
  2370. return srv.(DapperQueryServer).SpanSeries(ctx, in)
  2371. }
  2372. info := &grpc.UnaryServerInfo{
  2373. Server: srv,
  2374. FullMethod: "/dapper.query.v1.DapperQuery/SpanSeries",
  2375. }
  2376. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2377. return srv.(DapperQueryServer).SpanSeries(ctx, req.(*SpanSeriesReq))
  2378. }
  2379. return interceptor(ctx, in, info, handler)
  2380. }
  2381. func _DapperQuery_SamplePoint_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2382. in := new(SamplePointReq)
  2383. if err := dec(in); err != nil {
  2384. return nil, err
  2385. }
  2386. if interceptor == nil {
  2387. return srv.(DapperQueryServer).SamplePoint(ctx, in)
  2388. }
  2389. info := &grpc.UnaryServerInfo{
  2390. Server: srv,
  2391. FullMethod: "/dapper.query.v1.DapperQuery/SamplePoint",
  2392. }
  2393. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2394. return srv.(DapperQueryServer).SamplePoint(ctx, req.(*SamplePointReq))
  2395. }
  2396. return interceptor(ctx, in, info, handler)
  2397. }
  2398. func _DapperQuery_CltStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2399. in := new(CltStatusReq)
  2400. if err := dec(in); err != nil {
  2401. return nil, err
  2402. }
  2403. if interceptor == nil {
  2404. return srv.(DapperQueryServer).CltStatus(ctx, in)
  2405. }
  2406. info := &grpc.UnaryServerInfo{
  2407. Server: srv,
  2408. FullMethod: "/dapper.query.v1.DapperQuery/CltStatus",
  2409. }
  2410. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2411. return srv.(DapperQueryServer).CltStatus(ctx, req.(*CltStatusReq))
  2412. }
  2413. return interceptor(ctx, in, info, handler)
  2414. }
  2415. func _DapperQuery_DependsTopology_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2416. in := new(DependsTopologyReq)
  2417. if err := dec(in); err != nil {
  2418. return nil, err
  2419. }
  2420. if interceptor == nil {
  2421. return srv.(DapperQueryServer).DependsTopology(ctx, in)
  2422. }
  2423. info := &grpc.UnaryServerInfo{
  2424. Server: srv,
  2425. FullMethod: "/dapper.query.v1.DapperQuery/DependsTopology",
  2426. }
  2427. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2428. return srv.(DapperQueryServer).DependsTopology(ctx, req.(*DependsTopologyReq))
  2429. }
  2430. return interceptor(ctx, in, info, handler)
  2431. }
  2432. func _DapperQuery_OpsLog_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2433. in := new(OpsLogReq)
  2434. if err := dec(in); err != nil {
  2435. return nil, err
  2436. }
  2437. if interceptor == nil {
  2438. return srv.(DapperQueryServer).OpsLog(ctx, in)
  2439. }
  2440. info := &grpc.UnaryServerInfo{
  2441. Server: srv,
  2442. FullMethod: "/dapper.query.v1.DapperQuery/OpsLog",
  2443. }
  2444. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2445. return srv.(DapperQueryServer).OpsLog(ctx, req.(*OpsLogReq))
  2446. }
  2447. return interceptor(ctx, in, info, handler)
  2448. }
  2449. func _DapperQuery_ServiceDepend_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  2450. in := new(ServiceDependReq)
  2451. if err := dec(in); err != nil {
  2452. return nil, err
  2453. }
  2454. if interceptor == nil {
  2455. return srv.(DapperQueryServer).ServiceDepend(ctx, in)
  2456. }
  2457. info := &grpc.UnaryServerInfo{
  2458. Server: srv,
  2459. FullMethod: "/dapper.query.v1.DapperQuery/ServiceDepend",
  2460. }
  2461. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  2462. return srv.(DapperQueryServer).ServiceDepend(ctx, req.(*ServiceDependReq))
  2463. }
  2464. return interceptor(ctx, in, info, handler)
  2465. }
  2466. var _DapperQuery_serviceDesc = grpc.ServiceDesc{
  2467. ServiceName: "dapper.query.v1.DapperQuery",
  2468. HandlerType: (*DapperQueryServer)(nil),
  2469. Methods: []grpc.MethodDesc{
  2470. {
  2471. MethodName: "ListServiceName",
  2472. Handler: _DapperQuery_ListServiceName_Handler,
  2473. },
  2474. {
  2475. MethodName: "ListOperationName",
  2476. Handler: _DapperQuery_ListOperationName_Handler,
  2477. },
  2478. {
  2479. MethodName: "ListSpan",
  2480. Handler: _DapperQuery_ListSpan_Handler,
  2481. },
  2482. {
  2483. MethodName: "Trace",
  2484. Handler: _DapperQuery_Trace_Handler,
  2485. },
  2486. {
  2487. MethodName: "RawTrace",
  2488. Handler: _DapperQuery_RawTrace_Handler,
  2489. },
  2490. {
  2491. MethodName: "OperationNameRank",
  2492. Handler: _DapperQuery_OperationNameRank_Handler,
  2493. },
  2494. {
  2495. MethodName: "DependsRank",
  2496. Handler: _DapperQuery_DependsRank_Handler,
  2497. },
  2498. {
  2499. MethodName: "SpanSeries",
  2500. Handler: _DapperQuery_SpanSeries_Handler,
  2501. },
  2502. {
  2503. MethodName: "SamplePoint",
  2504. Handler: _DapperQuery_SamplePoint_Handler,
  2505. },
  2506. {
  2507. MethodName: "CltStatus",
  2508. Handler: _DapperQuery_CltStatus_Handler,
  2509. },
  2510. {
  2511. MethodName: "DependsTopology",
  2512. Handler: _DapperQuery_DependsTopology_Handler,
  2513. },
  2514. {
  2515. MethodName: "OpsLog",
  2516. Handler: _DapperQuery_OpsLog_Handler,
  2517. },
  2518. {
  2519. MethodName: "ServiceDepend",
  2520. Handler: _DapperQuery_ServiceDepend_Handler,
  2521. },
  2522. },
  2523. Streams: []grpc.StreamDesc{},
  2524. Metadata: "api/v1/api.proto",
  2525. }
  2526. func init() { proto.RegisterFile("api/v1/api.proto", fileDescriptor_api_f0d39efb13fd4b71) }
  2527. var fileDescriptor_api_f0d39efb13fd4b71 = []byte{
  2528. // 2209 bytes of a gzipped FileDescriptorProto
  2529. 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x39, 0xbd, 0x8f, 0xdb, 0xc8,
  2530. 0xf5, 0xa6, 0xa8, 0x2f, 0x3e, 0x69, 0x3f, 0x3c, 0xb7, 0xb6, 0x65, 0xed, 0xda, 0xd4, 0xce, 0xda,
  2531. 0xb7, 0xbb, 0x67, 0x68, 0x85, 0xb5, 0x0f, 0xe7, 0x83, 0xef, 0x57, 0xf8, 0x64, 0x9f, 0x61, 0xff,
  2532. 0x60, 0xd8, 0x39, 0x7a, 0x93, 0xe2, 0x1a, 0x85, 0x96, 0x46, 0x3a, 0xc6, 0x14, 0x49, 0x93, 0x94,
  2533. 0xce, 0xeb, 0x24, 0xcd, 0x35, 0x01, 0xd2, 0xa4, 0x48, 0x8a, 0x74, 0x69, 0x52, 0xa5, 0xc8, 0x3f,
  2534. 0x93, 0x54, 0x01, 0x22, 0x20, 0x48, 0x8a, 0x20, 0xe9, 0xd4, 0x07, 0x08, 0xe6, 0x0d, 0x29, 0x91,
  2535. 0xe2, 0x48, 0x5e, 0x24, 0x5e, 0x04, 0x41, 0x3a, 0xf1, 0xbd, 0x37, 0xf3, 0xbe, 0xbf, 0x46, 0xb0,
  2536. 0x69, 0x7a, 0x56, 0x6b, 0x7c, 0xdc, 0x32, 0x3d, 0xeb, 0xc8, 0xf3, 0xdd, 0xd0, 0x25, 0x1b, 0x3d,
  2537. 0xd3, 0xf3, 0x98, 0x7f, 0xf4, 0x7a, 0xc4, 0xfc, 0xd3, 0xa3, 0xf1, 0x71, 0x7d, 0x67, 0xe0, 0xba,
  2538. 0x03, 0x9b, 0x71, 0x92, 0x96, 0xe9, 0x38, 0x6e, 0x68, 0x86, 0x96, 0xeb, 0x04, 0x82, 0xbc, 0xde,
  2539. 0x1c, 0x58, 0xe1, 0xd7, 0xa3, 0x97, 0x47, 0x5d, 0x77, 0xd8, 0x1a, 0xb8, 0x03, 0xb7, 0x85, 0xe0,
  2540. 0x97, 0xa3, 0x3e, 0x7e, 0xe1, 0x07, 0xfe, 0x12, 0xe4, 0x74, 0x0b, 0xc8, 0x53, 0x2b, 0x08, 0x5f,
  2541. 0x30, 0x7f, 0x6c, 0x75, 0xd9, 0x33, 0x73, 0xc8, 0x0c, 0xf6, 0x9a, 0x7e, 0x06, 0x5b, 0x19, 0xa8,
  2542. 0x67, 0x9f, 0x92, 0x3d, 0x58, 0x0b, 0x04, 0xac, 0xe3, 0x98, 0x43, 0x16, 0xd4, 0x94, 0x86, 0x7a,
  2543. 0xa0, 0x19, 0xd5, 0x60, 0x4e, 0x18, 0xd0, 0xbe, 0x38, 0xfc, 0xdc, 0x63, 0x3e, 0x4a, 0x16, 0x5d,
  2544. 0x4a, 0x9e, 0x41, 0x35, 0x79, 0xb8, 0xa6, 0x34, 0x94, 0x03, 0xad, 0x7d, 0x6b, 0x3a, 0xd1, 0xf7,
  2545. 0xfb, 0xae, 0x3f, 0xbc, 0x47, 0x93, 0x58, 0xda, 0x18, 0x9b, 0xb6, 0xd5, 0x33, 0x43, 0x76, 0x8f,
  2546. 0xfa, 0xec, 0xf5, 0xc8, 0xf2, 0x59, 0x8f, 0x1a, 0x95, 0x04, 0x23, 0xfa, 0x39, 0x5c, 0x96, 0xf0,
  2547. 0xe1, 0x62, 0xee, 0xc3, 0x86, 0x1b, 0x43, 0x53, 0x82, 0xae, 0xbb, 0x49, 0xe2, 0x80, 0xfe, 0x56,
  2548. 0x85, 0x0a, 0x2a, 0xea, 0x99, 0xce, 0x39, 0x88, 0x48, 0x4e, 0x60, 0x3d, 0x2d, 0x48, 0x2d, 0x87,
  2549. 0x37, 0x36, 0xa7, 0x13, 0xfd, 0x50, 0xdc, 0x98, 0xc6, 0xcb, 0xef, 0x5c, 0x4b, 0x89, 0x4d, 0x3e,
  2550. 0x84, 0x42, 0x10, 0x9a, 0x7e, 0x58, 0x53, 0x1b, 0xca, 0x81, 0xda, 0xde, 0x9c, 0x4e, 0xf4, 0x6a,
  2551. 0x24, 0x1e, 0x07, 0x53, 0x43, 0xa0, 0x49, 0x03, 0x54, 0xe6, 0xf4, 0x6a, 0x79, 0xa4, 0x5a, 0x9f,
  2552. 0x4e, 0x74, 0x10, 0x54, 0xcc, 0xe9, 0x51, 0x83, 0xa3, 0xf8, 0x4d, 0xae, 0xdf, 0x63, 0x7e, 0xad,
  2553. 0x80, 0x62, 0x25, 0x6e, 0x42, 0x30, 0x35, 0x04, 0x9a, 0x7c, 0x0c, 0xe0, 0x3a, 0xf6, 0x69, 0x87,
  2554. 0xf9, 0xbe, 0xeb, 0xd7, 0x8a, 0x0d, 0xe5, 0xa0, 0xdc, 0xbe, 0x34, 0x9d, 0xe8, 0x17, 0x23, 0xe2,
  2555. 0x19, 0x8e, 0x1a, 0x1a, 0xff, 0xf8, 0x82, 0xff, 0x26, 0x87, 0x50, 0x74, 0xfb, 0xfd, 0x80, 0x85,
  2556. 0xb5, 0x52, 0x43, 0x39, 0x28, 0xb4, 0x2f, 0x4e, 0x27, 0xfa, 0x5a, 0x74, 0x02, 0xe1, 0xd4, 0x88,
  2557. 0x08, 0xb8, 0x20, 0xb6, 0x35, 0xb4, 0xc2, 0x5a, 0x19, 0x29, 0x13, 0x82, 0x20, 0x98, 0x1a, 0x02,
  2558. 0x4d, 0xff, 0xaa, 0x42, 0x95, 0x3b, 0x8b, 0x3b, 0xed, 0x49, 0xc8, 0x86, 0xe4, 0x2a, 0x94, 0x43,
  2559. 0xdf, 0xec, 0xb2, 0x8e, 0xd5, 0x13, 0xde, 0x32, 0x4a, 0xf8, 0xfd, 0xa4, 0x47, 0xae, 0x40, 0x29,
  2560. 0xf0, 0x4c, 0x87, 0x63, 0xd0, 0xea, 0x46, 0x91, 0x7f, 0x3e, 0xe9, 0x91, 0x6d, 0xd0, 0x3c, 0xd3,
  2561. 0x67, 0x4e, 0xc8, 0x51, 0x2a, 0xa2, 0xca, 0x02, 0xf0, 0xa4, 0x47, 0x76, 0x17, 0x42, 0x20, 0x8f,
  2562. 0xf8, 0x94, 0x57, 0x6f, 0x66, 0xbc, 0x8a, 0xe6, 0x5b, 0x74, 0xd3, 0x35, 0x00, 0xf4, 0x43, 0x27,
  2563. 0xb4, 0x86, 0x0c, 0x8d, 0xa6, 0x19, 0x1a, 0x42, 0x4e, 0xac, 0x21, 0x23, 0x75, 0x28, 0xf7, 0x46,
  2564. 0x82, 0x1c, 0xed, 0xa3, 0x19, 0xb3, 0x6f, 0xf2, 0x19, 0xe4, 0x43, 0x73, 0x10, 0xd4, 0xaa, 0x0d,
  2565. 0xf5, 0xa0, 0x72, 0x7b, 0xff, 0x68, 0xa1, 0x04, 0x1c, 0x25, 0x4d, 0x70, 0x74, 0x62, 0x0e, 0x82,
  2566. 0x2f, 0x9c, 0xd0, 0x3f, 0x35, 0xf0, 0x10, 0x37, 0x89, 0x15, 0x44, 0xae, 0xe2, 0xe6, 0x2c, 0x1b,
  2567. 0x25, 0x2b, 0x10, 0x1e, 0xd9, 0x85, 0x6a, 0xd7, 0x75, 0x42, 0xd3, 0x72, 0x98, 0xdf, 0xb1, 0xbc,
  2568. 0x9a, 0x26, 0x94, 0x9b, 0xc1, 0x9e, 0x78, 0x44, 0x87, 0x8a, 0xcf, 0x06, 0x5c, 0xb3, 0xb7, 0xae,
  2569. 0xc3, 0x6a, 0x80, 0x14, 0x20, 0x40, 0x5f, 0xb9, 0x0e, 0x23, 0x04, 0xf2, 0x43, 0xd3, 0x7f, 0x55,
  2570. 0xab, 0x20, 0x06, 0x7f, 0xd7, 0x0d, 0xd0, 0x66, 0x52, 0x90, 0x4d, 0x50, 0x5f, 0xb1, 0xd3, 0xc8,
  2571. 0x1b, 0xfc, 0x27, 0x69, 0x41, 0x61, 0x6c, 0xda, 0x23, 0x11, 0xfd, 0x95, 0xdb, 0x57, 0x33, 0xfa,
  2572. 0x9c, 0x98, 0x83, 0xef, 0x71, 0x02, 0x43, 0xd0, 0xdd, 0xcb, 0x7d, 0xaa, 0xd0, 0x1f, 0x42, 0xf9,
  2573. 0x84, 0x7b, 0x92, 0xe7, 0x65, 0x7b, 0xd1, 0xcb, 0xed, 0xfd, 0xe9, 0x44, 0xdf, 0x13, 0x11, 0x12,
  2574. 0x63, 0xe4, 0xb9, 0x33, 0x0b, 0x87, 0x5b, 0x0b, 0xe1, 0xd0, 0x26, 0xd3, 0x89, 0xbe, 0x1e, 0xe5,
  2575. 0x8d, 0x40, 0xd0, 0x38, 0x44, 0xe8, 0x97, 0x50, 0x31, 0xcc, 0x6f, 0xde, 0x27, 0x7f, 0xfa, 0x7f,
  2576. 0xb0, 0x36, 0xbf, 0x92, 0x57, 0xa9, 0x5b, 0x50, 0xb0, 0x42, 0x36, 0x14, 0xb5, 0xa9, 0x72, 0xfb,
  2577. 0x92, 0xd4, 0xcb, 0x86, 0xa0, 0xa1, 0xbf, 0x52, 0xa0, 0x1c, 0x5b, 0x89, 0xec, 0x41, 0x35, 0x08,
  2578. 0x7d, 0xcb, 0x19, 0x74, 0xe6, 0x66, 0xd5, 0x1e, 0x5f, 0x30, 0x2a, 0x02, 0x2a, 0x88, 0x76, 0xa1,
  2579. 0x62, 0x39, 0xe1, 0x27, 0x1f, 0x47, 0x34, 0x58, 0x2b, 0x1e, 0x5f, 0x30, 0x00, 0x81, 0x82, 0x44,
  2580. 0x07, 0x78, 0xe9, 0xba, 0x76, 0x44, 0xc1, 0x23, 0xbd, 0xfc, 0xf8, 0x82, 0xa1, 0x71, 0xd8, 0xec,
  2581. 0x8e, 0xbe, 0xed, 0x9a, 0x61, 0x44, 0xc1, 0xc3, 0x3c, 0xc7, 0xef, 0x40, 0x20, 0x92, 0xb4, 0x4b,
  2582. 0x91, 0x6f, 0x69, 0x0b, 0x0a, 0x8f, 0x2c, 0x66, 0xf7, 0x24, 0xfe, 0xdf, 0x4a, 0xfa, 0x5f, 0x8b,
  2583. 0x9c, 0x4c, 0x5f, 0x80, 0xfa, 0xd4, 0x1d, 0x90, 0x1d, 0xd0, 0x78, 0x82, 0x04, 0xa1, 0x39, 0xf4,
  2584. 0xf0, 0x90, 0x6a, 0xcc, 0x01, 0xe4, 0x08, 0x8a, 0x7d, 0x7e, 0x6b, 0x50, 0xcb, 0xa1, 0x95, 0x2e,
  2585. 0x67, 0xac, 0x84, 0x4c, 0x8d, 0x88, 0x8a, 0xfe, 0x5e, 0x85, 0x3c, 0xb7, 0x5b, 0x26, 0x8f, 0x95,
  2586. 0xb3, 0xe4, 0x71, 0x4e, 0x96, 0xc7, 0xc9, 0x12, 0xa3, 0x2e, 0x2d, 0x31, 0xf9, 0xe5, 0x25, 0xa6,
  2587. 0xb0, 0x50, 0x62, 0xb2, 0x85, 0x41, 0x5d, 0x55, 0x18, 0xd4, 0x44, 0x61, 0xb8, 0x13, 0x15, 0x86,
  2588. 0x32, 0x1a, 0x43, 0x97, 0x86, 0x4c, 0xa6, 0x20, 0x1c, 0x40, 0xde, 0x76, 0x07, 0x41, 0x4d, 0xc3,
  2589. 0x43, 0x5b, 0x99, 0x43, 0x4f, 0xdd, 0x81, 0x81, 0x14, 0xdc, 0x51, 0x36, 0x1b, 0x33, 0x1b, 0xd3,
  2590. 0xbe, 0x60, 0x88, 0x0f, 0xd2, 0x84, 0x62, 0xf7, 0x6b, 0x8b, 0xfb, 0xa0, 0xb2, 0x2a, 0x52, 0x23,
  2591. 0xa2, 0x73, 0x29, 0x06, 0xbf, 0x54, 0x00, 0x12, 0xa9, 0x93, 0x98, 0x43, 0xba, 0xee, 0xc8, 0x09,
  2592. 0xf1, 0xfe, 0xc2, 0x6c, 0x0e, 0x79, 0xc0, 0x61, 0x68, 0x66, 0xee, 0x1c, 0x41, 0x91, 0x43, 0x0a,
  2593. 0x8d, 0x43, 0x04, 0x7a, 0x1b, 0xb4, 0xa1, 0xf9, 0xa6, 0x23, 0xf4, 0x55, 0x11, 0x5b, 0x1e, 0x9a,
  2594. 0x6f, 0x9e, 0xa2, 0xca, 0x87, 0x90, 0xf7, 0x5d, 0x37, 0x44, 0xaf, 0x2e, 0x55, 0x18, 0x49, 0xe8,
  2595. 0x43, 0x58, 0x9b, 0x8f, 0x10, 0x5c, 0xb8, 0x3b, 0x71, 0x5e, 0x8b, 0x88, 0xbd, 0xb6, 0xb2, 0x7a,
  2596. 0xc7, 0xf9, 0xfd, 0x67, 0x05, 0xb6, 0xd2, 0x93, 0x8c, 0xe9, 0xbc, 0x3a, 0x8f, 0x91, 0x64, 0x36,
  2597. 0x3c, 0xe4, 0xce, 0x34, 0x3c, 0xa8, 0xcb, 0x87, 0x87, 0x63, 0xd0, 0x7c, 0xd3, 0x79, 0xd5, 0x09,
  2598. 0x4f, 0xbd, 0xa8, 0x4d, 0xb6, 0xb7, 0xa6, 0x13, 0x7d, 0x53, 0xd0, 0xcd, 0x50, 0xd4, 0x28, 0xf3,
  2599. 0xdf, 0x27, 0xfc, 0xe7, 0x0f, 0xa0, 0xcc, 0xf5, 0xc2, 0xce, 0xfd, 0xfe, 0x12, 0x74, 0x56, 0x5e,
  2600. 0xb8, 0xb0, 0x4a, 0x5c, 0x5e, 0xfa, 0x70, 0x59, 0x62, 0x50, 0xee, 0xa0, 0xed, 0xa4, 0xe0, 0x82,
  2601. 0xed, 0x4c, 0x44, 0x1e, 0x9e, 0x49, 0xef, 0x65, 0xc3, 0x33, 0x56, 0x20, 0xf6, 0xdc, 0x1f, 0x15,
  2602. 0x58, 0x7f, 0xc8, 0x3c, 0xe6, 0xf4, 0x82, 0x73, 0xf7, 0xd9, 0xbf, 0x3d, 0xf0, 0xa5, 0x7c, 0x56,
  2603. 0x38, 0x93, 0xcf, 0xbe, 0x0f, 0x9b, 0x29, 0xf5, 0xde, 0xbf, 0x05, 0x7f, 0x93, 0x83, 0x35, 0x9e,
  2604. 0x13, 0x2f, 0x98, 0x6f, 0xb1, 0xe0, 0x7f, 0x71, 0x0e, 0x3f, 0x9c, 0x75, 0x39, 0x1c, 0x13, 0x93,
  2605. 0x93, 0x72, 0xd4, 0xd7, 0x66, 0x0d, 0xee, 0x11, 0x80, 0xb0, 0x13, 0x26, 0xd1, 0x16, 0x14, 0x10,
  2606. 0x1e, 0x39, 0x41, 0x7c, 0x10, 0x0a, 0x45, 0xcc, 0x01, 0xe1, 0x02, 0xb5, 0x0d, 0x7f, 0x98, 0xe8,
  2607. 0xc5, 0x8f, 0xb0, 0xf1, 0x1b, 0x11, 0x86, 0x8e, 0x61, 0x23, 0x69, 0x73, 0xee, 0xd5, 0x3a, 0x94,
  2608. 0x2d, 0x27, 0x64, 0xfe, 0xd8, 0xb4, 0x31, 0x36, 0x54, 0x63, 0xf6, 0xcd, 0x19, 0x61, 0x53, 0x8e,
  2609. 0x16, 0x29, 0xf1, 0x41, 0x8e, 0xd3, 0xae, 0xde, 0xce, 0x96, 0xba, 0x99, 0xa8, 0xb1, 0xb3, 0xd7,
  2610. 0xa1, 0xfa, 0xc0, 0x0e, 0x5f, 0x84, 0x66, 0x38, 0xe2, 0xae, 0xa6, 0x7d, 0x28, 0x3e, 0xb0, 0x2d,
  2611. 0xe6, 0x84, 0x7c, 0xb0, 0x34, 0x7b, 0x3d, 0x3f, 0x52, 0x05, 0x7f, 0xf3, 0x40, 0x63, 0xbe, 0x9f,
  2612. 0x28, 0xe1, 0xaa, 0x51, 0x66, 0xbe, 0x2f, 0x2a, 0x38, 0x81, 0xbc, 0x6f, 0x86, 0xd1, 0x68, 0x63,
  2613. 0xe0, 0x6f, 0xde, 0x91, 0x47, 0x9e, 0x68, 0xac, 0x68, 0x6f, 0xa3, 0x38, 0xf2, 0x78, 0x57, 0xa5,
  2614. 0x43, 0x28, 0x3d, 0xb0, 0xc3, 0x67, 0x6e, 0x0f, 0x27, 0x58, 0xc7, 0xed, 0xc5, 0x81, 0x8b, 0xbf,
  2615. 0x39, 0xa3, 0xd7, 0x23, 0x36, 0x62, 0x1d, 0x9b, 0x39, 0x31, 0x23, 0x04, 0x3c, 0x65, 0x0e, 0x39,
  2616. 0x86, 0x52, 0x17, 0x65, 0x0c, 0x6a, 0x2a, 0x2a, 0x7a, 0x25, 0xa3, 0xa8, 0xd0, 0xc1, 0x88, 0xe9,
  2617. 0xe8, 0x7d, 0x58, 0x4f, 0xa8, 0xc9, 0xad, 0x7b, 0x04, 0x05, 0xce, 0x29, 0x1e, 0xf7, 0x6a, 0x92,
  2618. 0x2b, 0x50, 0x3c, 0x43, 0x90, 0xd1, 0xbf, 0xe5, 0x60, 0xfd, 0x85, 0x39, 0xf4, 0x6c, 0xf6, 0x1d,
  2619. 0xd7, 0x72, 0xc2, 0xff, 0x9e, 0xb4, 0x48, 0x2f, 0x8b, 0xea, 0x19, 0x97, 0xc5, 0x07, 0x8b, 0xc1,
  2620. 0x97, 0x1c, 0xb1, 0x63, 0x8c, 0x9c, 0xff, 0x3c, 0x4a, 0xef, 0x42, 0x7e, 0xbe, 0x6c, 0xb5, 0xf7,
  2621. 0xa6, 0x13, 0x5d, 0x8f, 0x66, 0x74, 0x6b, 0x99, 0xf0, 0x78, 0x80, 0xfe, 0x08, 0x36, 0x12, 0xb6,
  2622. 0xfe, 0x97, 0x37, 0xcb, 0xe4, 0xe8, 0xa6, 0x2e, 0x8c, 0x6e, 0xc9, 0xb5, 0x2c, 0x9f, 0x5a, 0xcb,
  2623. 0xe8, 0xff, 0xc3, 0x66, 0xca, 0xd3, 0x3c, 0x5c, 0x3e, 0x49, 0x6f, 0x07, 0x8d, 0x6c, 0x6a, 0xa5,
  2624. 0xe5, 0x8d, 0xf3, 0x6b, 0x0b, 0x48, 0x54, 0xae, 0x4f, 0x5c, 0xcf, 0xb5, 0xdd, 0xc1, 0x29, 0xcf,
  2625. 0xb2, 0xef, 0xc2, 0x07, 0x0b, 0xd0, 0xb3, 0xf6, 0xe0, 0x6d, 0xd0, 0x7a, 0x78, 0xb2, 0xe3, 0x3a,
  2626. 0x91, 0xb6, 0x65, 0x01, 0x78, 0xee, 0x50, 0x03, 0xb6, 0x32, 0xcc, 0xb8, 0xf0, 0xf7, 0xd2, 0xc2,
  2627. 0xdf, 0xc8, 0x08, 0x2f, 0x11, 0x26, 0x56, 0xe0, 0x1f, 0x39, 0xd0, 0x9e, 0x7b, 0x01, 0x1f, 0x4a,
  2628. 0xff, 0x03, 0x9b, 0x1f, 0xb9, 0x0b, 0x15, 0x71, 0xad, 0xa8, 0xab, 0x38, 0xf0, 0xb7, 0x2f, 0x4f,
  2629. 0x27, 0x3a, 0x49, 0xf2, 0x44, 0x24, 0x35, 0x00, 0xbf, 0xc4, 0xda, 0x73, 0x4f, 0xf6, 0x70, 0xd0,
  2630. 0xbe, 0x32, 0x9d, 0xe8, 0x1f, 0x48, 0x92, 0x33, 0x6d, 0xe4, 0xfb, 0xf2, 0x17, 0x85, 0xf6, 0xd5,
  2631. 0xe9, 0x44, 0xbf, 0x24, 0x4d, 0xc4, 0xa5, 0xbd, 0xa8, 0x78, 0xa6, 0x5e, 0x54, 0x5a, 0xda, 0x8b,
  2632. 0xe8, 0xdf, 0x15, 0xa8, 0xc6, 0xf6, 0xef, 0xba, 0x7e, 0x8f, 0x97, 0x4b, 0x4c, 0xaa, 0xa8, 0x5c,
  2633. 0xf2, 0xdf, 0xe4, 0xf3, 0x85, 0xb5, 0xec, 0x30, 0xe3, 0xe1, 0xe4, 0x15, 0x62, 0x47, 0x8b, 0x76,
  2634. 0x92, 0xe8, 0xe0, 0x7c, 0xd7, 0x10, 0x3b, 0x55, 0xb4, 0x6b, 0xd4, 0xa0, 0x34, 0x64, 0x41, 0x60,
  2635. 0x0e, 0xe2, 0x97, 0x97, 0xf8, 0xb3, 0x7e, 0x02, 0x95, 0xc4, 0x35, 0xef, 0x6b, 0xb1, 0x78, 0x04,
  2636. 0x95, 0x58, 0x52, 0x1e, 0xb8, 0x77, 0xa1, 0xe4, 0xa3, 0xc8, 0x71, 0xe8, 0x5e, 0x5b, 0xa9, 0x98,
  2637. 0x11, 0x53, 0xd3, 0x5f, 0x2b, 0xb0, 0x19, 0x3d, 0x97, 0x8a, 0xd8, 0x3e, 0x8f, 0x7a, 0x7d, 0x7f,
  2638. 0x49, 0xbd, 0x3e, 0x73, 0x98, 0xd0, 0x67, 0x40, 0x16, 0xa4, 0xe4, 0x5a, 0x7f, 0x9a, 0x4e, 0x57,
  2639. 0x2a, 0x6b, 0xe3, 0xf3, 0x33, 0xc9, 0x64, 0xfd, 0x31, 0x5c, 0xcc, 0xe0, 0xce, 0x52, 0x55, 0x76,
  2640. 0x40, 0xeb, 0xba, 0x43, 0xcf, 0x75, 0x58, 0xd4, 0xd7, 0x35, 0x63, 0x0e, 0x90, 0xbd, 0xdf, 0xaa,
  2641. 0xb2, 0xf7, 0xdb, 0xdb, 0x7f, 0xaa, 0x42, 0xe5, 0x21, 0xca, 0xfa, 0x25, 0x17, 0x95, 0xfc, 0x44,
  2642. 0x81, 0x8d, 0x85, 0x87, 0x6b, 0xb2, 0x97, 0xdd, 0x77, 0x33, 0x0f, 0xde, 0xf5, 0x9b, 0xef, 0x26,
  2643. 0xf2, 0xec, 0x53, 0x7a, 0xf0, 0xed, 0xef, 0xfe, 0xf2, 0xf3, 0x1c, 0x25, 0x8d, 0xd6, 0x9b, 0x16,
  2644. 0x36, 0x1d, 0xc7, 0xb4, 0x5b, 0xe2, 0x64, 0x2b, 0x52, 0xaf, 0x89, 0xf2, 0x92, 0x9f, 0x29, 0x70,
  2645. 0x31, 0xf3, 0x3a, 0x4d, 0xe4, 0x6c, 0x16, 0x5f, 0xca, 0xeb, 0xfb, 0x67, 0x21, 0xe3, 0xf2, 0x7c,
  2646. 0x84, 0xf2, 0xdc, 0x20, 0x54, 0x22, 0xcf, 0xcc, 0x54, 0x91, 0x44, 0x0e, 0x94, 0xe3, 0x3d, 0x95,
  2647. 0xec, 0xc8, 0xd5, 0x15, 0xaf, 0xe0, 0xf5, 0xeb, 0x2b, 0xb0, 0x9c, 0xeb, 0x0d, 0xe4, 0x7a, 0x9d,
  2648. 0xec, 0x48, 0xb8, 0xda, 0x56, 0x10, 0x36, 0x79, 0x29, 0x25, 0x26, 0x14, 0x70, 0x63, 0x27, 0x92,
  2649. 0x44, 0x8c, 0xde, 0xd5, 0xea, 0xdb, 0xcb, 0x50, 0x9c, 0x4d, 0x03, 0xd9, 0xd4, 0x49, 0x4d, 0xc2,
  2650. 0x06, 0xeb, 0x2e, 0x57, 0x29, 0x7e, 0x52, 0x93, 0xa8, 0x94, 0x78, 0xc0, 0x93, 0xa8, 0x94, 0x7a,
  2651. 0x8b, 0x5b, 0xa9, 0x92, 0x6f, 0x7e, 0xd3, 0x14, 0xfc, 0x7e, 0xa1, 0xc0, 0xc5, 0xcc, 0x4e, 0x29,
  2652. 0x71, 0xaa, 0x6c, 0x91, 0x97, 0x38, 0x55, 0xbe, 0x9e, 0xd2, 0x16, 0xca, 0x72, 0x48, 0xf6, 0xdf,
  2653. 0xed, 0xd4, 0x26, 0x5f, 0xba, 0xc8, 0x5b, 0xa8, 0x24, 0x36, 0x34, 0xa2, 0x2f, 0xeb, 0xb6, 0xb1,
  2654. 0x24, 0xbb, 0xab, 0x09, 0xb8, 0x0c, 0xfb, 0x28, 0xc3, 0x2e, 0xd1, 0x25, 0x32, 0x88, 0xee, 0x1f,
  2655. 0xf1, 0x1e, 0x03, 0xcc, 0xd7, 0x08, 0x72, 0x5d, 0xfa, 0xd6, 0x31, 0xdb, 0xeb, 0xea, 0x8d, 0x95,
  2656. 0x78, 0xce, 0xf8, 0x43, 0x64, 0xdc, 0x20, 0xd7, 0x65, 0x19, 0xe6, 0x99, 0x4e, 0x33, 0x10, 0x9c,
  2657. 0xde, 0x42, 0x25, 0x31, 0x00, 0x49, 0x74, 0x4e, 0x8f, 0xce, 0x12, 0x9d, 0x17, 0x27, 0xae, 0x95,
  2658. 0x3a, 0x07, 0x48, 0xdc, 0xf4, 0x90, 0x99, 0x0f, 0xda, 0x6c, 0xb6, 0x27, 0xd7, 0x64, 0x73, 0xfc,
  2659. 0x6c, 0xbd, 0xa9, 0xeb, 0xab, 0xd0, 0x9c, 0xeb, 0x4d, 0xe4, 0xaa, 0x93, 0x6b, 0x12, 0xae, 0x5d,
  2660. 0x3b, 0x6c, 0x06, 0x82, 0xcd, 0x4f, 0x15, 0xd8, 0x58, 0x18, 0x9a, 0x24, 0x95, 0x2d, 0x3b, 0xf9,
  2661. 0x49, 0x2a, 0x9b, 0x6c, 0x62, 0xa3, 0xb7, 0x50, 0x8c, 0x9b, 0x64, 0x6f, 0x85, 0xc3, 0xc3, 0x98,
  2662. 0x71, 0x1f, 0x8a, 0xa2, 0x0b, 0x92, 0xfa, 0xd2, 0xf6, 0xf8, 0xba, 0xbe, 0xb3, 0x14, 0xc7, 0x19,
  2663. 0x52, 0x64, 0xb8, 0x43, 0xea, 0xd2, 0x28, 0x0f, 0x9a, 0xb6, 0x3b, 0x20, 0xdf, 0x2a, 0xb0, 0x96,
  2664. 0x6a, 0x2f, 0x64, 0x77, 0x75, 0x6b, 0xe2, 0x6c, 0xf7, 0xde, 0x45, 0xc2, 0xb9, 0x1f, 0x22, 0xf7,
  2665. 0x3d, 0xb2, 0xbb, 0xa2, 0x90, 0x0b, 0xb5, 0xdb, 0xf9, 0xaf, 0x72, 0xe3, 0xe3, 0x97, 0x45, 0xfc,
  2666. 0xbb, 0xf4, 0xce, 0x3f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x63, 0x88, 0x46, 0xf5, 0xa0, 0x1d, 0x00,
  2667. 0x00,
  2668. }