From 971dec97be74b2eb1089b483d486f8ea0fac822f Mon Sep 17 00:00:00 2001 From: felixhao Date: Tue, 27 Aug 2019 16:03:09 +0800 Subject: [PATCH] add trace doc --- doc/img/zipkin.jpg | Bin 0 -> 65836 bytes doc/wiki-cn/dapper.md | 0 doc/wiki-cn/summary.md | 2 +- doc/wiki-cn/trace.md | 42 +++++++++++++++++++++++++++++++++++++++++ 4 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 doc/img/zipkin.jpg delete mode 100644 doc/wiki-cn/dapper.md create mode 100644 doc/wiki-cn/trace.md diff --git a/doc/img/zipkin.jpg b/doc/img/zipkin.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8fca3794df32618d0fe3096dcc4dff2326a71f61 GIT binary patch literal 65836 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%0DEX+o8k~i5 zolOmMMzd&OqTNoeh#`Oz>5}&kS4IkSdJ+oQyHXz86|wIwD2SH`SB1#k!typ1Qm^>% zU>BF_@^JEofS%WP0uo5y>WIG3c|>`xJ5SnR0yOD5`)ONPTC7@BW45LC2ewRV{jWZv zsiqjq)Cd_Cq6oVUr&`{}eOc=Hj=I%>w@klwJ3@H!8QW#w>WI2O`C>4(p`BB&JSb04 zqvWNJNmm*PMnX58FMBJ^!g%b@cNJeS%2a7?;-|a$;IU}bbC*sk6{6z)|ALi6PcCAP zVQSvzZ=x#6iQC$8M@RG~Vq;s9-I6x9(%mv1 zsVy?oJd0%y^&7ejSrYQqmm|Tsy3a?DDF~EF^A$3+e*(u9vxjir8pvBv;kZvvWMOw_ z=7r6cEf zZ*+Q39pf5Y*6pyX2919)Hhs^LyV|0F+h9Dzfp~%ZF3a7*H+!f04RUy)o12f~oE{FKg;lc;?iUyHP5cLdXAjN?v zPLI!=I`YX>j&y37`~}$-NsgPhFMqbO-L3(p<8tdg>Y6T=eJ5ab3t#l2gUwFqHAsi4 zJ>is)dcBi5mY{hwW@&KevYc6jqr2McPy(L-Ef58cq{X%0XMhgRP=^(04a%%T4o8`l z4K49KgOM+XkSQysTrSVPY!Ydz@SR|ltgQIy9CGGAku2fw6D*K=ZeLzuw93v}NsP;a zfIqKoa*P|P3oFYG-VabEyj4tg_5S&H*KTXYG&{-(;PNrmUnL?}r=_t0VY8jp?@q=( z0$gcNNv;TP*PO03wFOEb`$EVLCO zUOh*JQo8U^rB{r%8BPxdRt=e}A91|12OlaVG^O*6FXH-uW^Uq)icp&4J)CgqPe^53eAChQHGRm zfp=1kQyVX@xeP#P`|_L0)rFbf%{U?~++Iz8Zn{h#dgZIww|Q&}s;NpjTr^+dcy>D9 z{v%G^1XGYSt7CR#U!rcay~+K>;t7m1R?yCbcH(CL>&IcjYg~~L_i)LXU_2qVuxZM* zzI99{hdGA~-VT$ba?K>ez0d6D4!R{{cxFDr%Jb#!375az9qTx~IS zJD3+v?52JnE1TGxt+q0eyb#~{VxW*|#<}$Ff#Y%PiF9&%7!QUg%z`cw3!JC z>B&m(4N<*#`jf^cR_P{-;pL5V4A&}-9BNQfMX{#ai;Qw zyQw$>R@S!f1fTP>0MV(!WjLM^e#MUOG|D~7`t)N&X?tq1xjgu|Zq2?o;n03MAMM80 zQe|15?3wKbe^gd6-0|i*Pg$I3m5^^5t>syTaeCDIC1fuCD)I^pxcxpiGa5#JEU~Yc zg^O6x$I}JY%Piw*i2_Ril%(x%l^|+m^EJ-`4B+^kK+8xI$nMo!gC_IgG+Nif+08dp zL&dc3>^;@IRphO^@$#jX@NCqdb3Yg=DUf?-G@ zKtd8(>2a%`3CygQgvj>+Bj#^V69-Qon z`UqLMEFHxgdFO9>dQTj&)um!;keA^7cQA)|GN}A-QdWQeJCHmNG%M5;L2nGcp62F& zH-g%_&6HP*mwLyBhPHp{x?IqFZ850lY%%_dAyNR4B#j`)rGqd_v6-OtVjMUYCYWD# zoEai)PDT3y8*qPN(~3aq<@!z}Se^oN!>4zh96)9soOGB9TG^$R8;Es!I&XSQuN3&~ zz#DdO*MaP8=Ni#CF~C6s$=Uw#4dP^{bp}n>J-du`GGy6Z(JF7LGXiU*6-mFaB3blH zxm8_AZEH$~^?8#%jteyC+s<>!SB8xjESJaexgQEH?qpgLf76O8dmj#g;R0~#C=_x^ zV#86M0ei4?l!hogDBoUPg5Qsmr^jDji!VR2N|+D3w6(K!KY;$((56N76RxXTl(Y&@ z-bE6e-O@vGma9(s3Je*2@&Xis8lGn#A_enk}S4+F#Hvh&04q(trFXkgS&~F3A-$ zJ>abeB3e7zinRoDFHY^huCjPxq)2QP({&8p&t24YrOIh!*^M$VjBiB~uhRLP9oQ~A zRTUFr%PfmKNKtSfp`0Ql2DmOYC}Q$CVVd{xq?d2%ae|&!CmdUk9liNcobp6|-Es~b zt$=({ghS0#1033QJc+%tIgny%>V15LN9=~e=);|vw~g}gGF_QXg2b*Qi=mg9BfmQ7 zeJ7yC(@%9nq2RewR&b$UN(-Te!c?NsmtrL0nVo?Gr3JQ|ZEfjef^!GG#hZ1u<=+WX zvcD5}Uy>V!ekYLC!5`5qM&cS9^jSHQ8ZJXzgdro?V9UXgC7x=PUS*qe?yoenjrGQ= z$|ZQZ)BMveo{dENCi_1Be+Y^m}Ov1&XQa4M=MU zY8dY9fT{Q(2DG{%@?w)=$Y;BkV!l$AYpOYcsPN3aA12*$*l57oHgO?gVms(NP_rj; zv+jNykH+b_LJ!i%*blagHvqr%CoPzl3T!G2G*pVQF0@777|1K@RuB{TI3i1V&KCwy1fI(xgrCI4F1 zI@_NWwHp_Pt)3mJD_mzZjmdvv0-g|z2j}$WD!LLTx`k|c=6WMNDj)SDa_QO$E|@wd zj>gQv{WFIE^kCX#Yrdgd&)gh|bm#T-6qNYLz?6u4P?Kq4(~xuy-QUGFXpU9_Ssb+`6we2Rf2V=9{A zz;0O+voK(*H({DNmwOFCLMFU5cWryIBH>;-F$qlmI^hhnlT3)LFNNJP>)}6j8%Pr8 zI$zhob_M6EgSAVVo4V!X4Im_$az z_j!p~&q43Ch_AfKwT&x}bG_o8vF+Qu>_&ZES|4KE;XuIaa*>_X`fv8~P8;=G%3}7O zRsUh10;#`@ke=3m@=#yat{o7|R!g(}Zl|AS$^7TvX3oZj&p(ggztyw&N05}WR%T0V z0ZIexPSs{E-1s6ulFrN0fGUfDkaBGFj-UYbGmEkLs5|Fg$(-&mk`=X^>m6Y0+E_wa{b_~ELb+Cf#= zJ6^LL_zV4T&A(g^{^*a8;QwleT6ksR0zcOsqwKc!=Cht+{CX<&<}tpKvXTV~e_fbr zG;K0sqt5*HQf_bi_qFK9n#~4A^mq;R9yk1QJOA?{rQbc=b-6*v`)}E)hyM0^|La%| z#mD#A;_9m{N$R!qPk{39TX@8-m`CM8-iDLnlreBCc2EBMPtr?;0CpT)E3a3HDfCA` zMS#2!W_?~-8MYFU;3%0x-+_xNv2!6p)3+Xdot1kwVYdBvwOue?)e~H`tiQrSW$jV1e*Z76+@Uom)1%=_cPlLUnGj*l#2J`tkA{)?i z^n!QY$b5P>|*VjVdQB3cZb?H*_x6Y@p zd?6)YaPydYnY**{^lpA85ul-s{c4h=7)$a@2nkBjW@Kq?r^N+gQC;DXNtP=*?%6q~$#VUl zHN+aFrC>cnDhUxi~^kkXI*^6M_@486HcdDXoNPISl3o|gg8=rlG+=p zKJOMi{{Tw%mGUMRA9S*No(Hlpz$q2_N!1py*buPc-3D_r)yQSjcW)ltP|R}HMIYEm);%*{ai!#NmljX=C^VWN$;Rq@MaZ? zY+`^kz=`nTscv0h9S*qN+oXm!3c-hsaGrqR`8K{^L-|ZEV@m%D%Fq>znjO_01qmCM z!Y!pt8^ohk*T-*9c^*9Mp5hbY?DV++$cR92fO3^NdF*$BOnd!3Z%`1LT#jJeO@5Be z|HLT!!~jEG?!l97=`DP(ARsEeJem8&tF%W3{H|s=|UmcJ4D*K#%n$Pa_;p_fC3odP5emTjquW6Rq9I z+x=c(td0UEFu+;k%$^Caes%bEQ&FcQVfXp``0co+ckhEWh8jd2S#{c}0@zFZ7J&N^ zpGzmuFW9c>o0x)%w6%*lZZWEL&s;w}0MzNrX3Obowl|5RRoFY*%vEBi7F>vUkZbtX zO8k+J^~tp#4}5Si>yk|LhL<}QHJcSyV`)D>E+diUUF=*)V9Uszwf!-odx$q$DV%Lu zYP0RxZuw=`XMmVW81kI)q^&#^Oh#Z9qS90N31>^jJx7bZmGmG*Kk_R7ClRV|_i0h@ z1qWQPhinJ3y@!Ll^0UgnKa@qhSco^Do4NuVUxquuBjiz1@`08J%*Ijv!AH2*Ng{MA z&JJoSRyAnxNQ}=j8)VjfC4x)In2$O1l!@l;z1Bm+z!OgUR!(rF;%VhOnRZ>PSY*>3 zIiIo8rO*f=VP-E>Za=(u3yw@p09dG>`V>O7wgraY&iJttQfg?(zMeZuy>#+$FsTVh zDHMUF!Wbg*3xoF5-9FaELN{Te+oaQ92PS&?U#9WLhq-)AJ$xD~=wesMGU#=E4i=*A zhHf!EJMb_S2ATI3((xp_w5(nk?OfhJGHn?G$&A;CUXrv_eecyDs9k;1U*nS@TbmKo z-|qUnqmhu|3?XaNW0wO%?~IF3usxXcR_G1RoScX|1Yfi4ft-^}Gp1RV**IDgSA`UB z33b2bK~36x@nmPQ{1${gj7zQEnwoaaQcIfp731wgVHmrwTP}PY-Fovx2y^Ja*G-Oo zSf?4_u;LMFWqB1cyjjlL7~Zq}WiP`d-?pu5Mg z?*#DkbYz;n>c5e=9}kNaGP`vG_u!;ym@<#42>;EwBA5QHf=nrs{ib+_<}2y~K~*8V z_nuq9gcd`i>1m9n32@R_EABz^QmFfNf?nLrmQCpDK>&IcQq3Q7iJU>bJtc@Bt66rTKit-guD(g7v_5{w0Pk{ zxzBkoCM-N)A9i-lN4Ecw=4|)5Cndt20*FQ<<0;#0nM(mIxp5W70pVi0Y=T#$`8FeN zpz(0vD0zD({SQ-oVWq=pHX3gGZPe&~fOy<9;B$+3G9+Mkuc2>hV$F5X^nM$sOVk6% zwXl)<_o8+d-3y=Rvg+2I;8EWR(DlkcHOSteP|@HI%gW@!znuaWuk(H5AF`+W=Y{{z z_>)ipmr=diepucf)54(G^^Z{k1u2v-BGoz+RLuB&?_?!c2Y6WMy;V>Qrqv^#A?Uhr zMz%+?#rp>OC+q$+T=@0V@_w2|fAof8L$k+?)?a^A|3A(UjuXS55bk6pHXgp<0cB^x z7?H2MRH*cT#LFZ+gB)i+ej867yWRYJ_t=Zg8|$dZm@nID8dX*!Z)wEBELX>YD0D$M1+(8&LY{Z+fE zKXm2r=^wK$AFqB(#iaju$lTn%o~7FRkAnew8_^3~a{!H*MR> znK1#;E49_kUAySb(%c{2uYKlXdBwGmtLBw84b0N8Z;sV=a>mJt!$0<&zi&XV9Yk%h z_Lzj3NZ@7CPv8l;!-fO26%{J)ef4Ff931r^(MF{O(tzgk4K?}i{eL7C0vJl?mgOnE zp5a2#l!$Er_)R8ro+wx|;AwH(!P>TghS)uHZabq=z_i264Tq*eUixj&dw7L)IFbV* z$Bv;0L~`K7(G8{E@di~02vpZuEJ14{`p%f|IR@?3h}vr2Pm)IwbFP7VO}O^?I-F*W z45JhLv|DrN2+rUVS&QH*`1p(~r+jGrrBUjqnQ>JsCu7gLb~Hwgv&l{2 z2@kg>M5tDDbl!X!Dxp5KpENXB=BZj(ut=&+&k4488e$TpOPHK<4yST@*?{S5s-=v{4$;mC!~ady%wcl29LIC44mAx{@m-BWh;=? zdzvLG%w7Ff#V%d>65N}rluwASY;-Fj;F;muZ`TK58XL!I$3oYRCh-RCJ6>WQrUM8| z7AT}yb|!AqE|b^ieO6l>8#$icwkrAHO(xFzam|oZFYdTJpu?S~qW5G!>`@8)>&qN1 zoOJW9jfmSP0rGEqMvlR-xCtHGz!wih>s=_``7i9VI~P`!rH0mB;ujOTVz9!vLF;2z zm;pdH!i!HUTuPN8HXPB{rbko?rl1*wsQmVc4woXr3#_v9@E{+0T;NAH>jrIH)-i3z zx+(TNKCd0@P~O+-Y0q3fkn~s>HY3+IqDtysZ?_y501bXW5X%E(b@OzX`c4oZGw4`H z(}-hqdY>Mo9apZVHN1N*-vr17n6!q_Qx3{%jG$V3v`W-4B2l&9lVy1@>O0V|nnH7| zjw1J}QOO*l5EgE)+31;31eM|>u{?*3NG`0D4V}HAo5q0bT}$7`aXe3-l=zDrXP#N? z5x=hY{4C!{z8s&8hkWCwfjtu|brTymF;V9oZ3}oA5;>~f#C(l_Nr~S`T1DEidNF?! zHkajhqC6|lxEjxTl`nfek+ zNWZAs18Jz4Jx9vfmtVf=+{MKJP){->7ue^Zs%oN(N7fBl`f9Rvg}7APh+?6K1p-JUZoWJvBL);gA;1g8%Fw&Z^?OOn}r~O zAuqCdD64>+H>mL_EYzb|%W7~!gK9FarT?Pk*#`^ec8*bcfMuT$m|xsYJ@2KAarKi?iDTSuvckTlOH@KwvuqBRr&V8 zp-1KxYI;y-UI3&td?Nq3H+_9XWVPa;=^}K?%*HA-l9)97+;w)pwiU=83V#teeG#L> z&$1o6gD6g1u(1(gUeByOpSfFqR(|$re4ObGlV`OXmkl+BY;Rz)vxt%{iKpd7`T~pQ zBpXHp_U&`sAu*7Dwqt(os3b*0+ffgyta$<($A>F{m~%r#e7gp>4Mp z{!GEqz|iz8LfVztsr>_4$dA;>-!$hmo8jcRE6qpNfzEtJ>(#aJM*;n0nU&E@aKxlL zrK&w2O}MD=zk&{J7 z1oeB;;*~Qp`gSC)=5H7ve2J_g*tf_lM%SJ@u_!mW9{E)@g0r}!u~gfx?sk^G#6zSM zDR&GafqWG1duTQ%l4SWt9h|1Zu$RVXw@)KW2Pn;w@M-CH`FRPPmC=sQGB>m0x!$nK zG(2e|rnd<6Qci77#0NU2o8qXx6BzXKR;3KAp*4p&N{1{fG{RucFpf#o`LHqJ8mO=e zk(qE-iv`Yde)G4p(?;B4A3}9Mg8bg+2^eNN-O~E=_!Hv}GDJF4s^ExQO-3;9i;f1B z5tSVW<@0xOsd6Gt#pjW>!7X=z9qXC=_KCHqCMw-H#3wl9B`r;%a7 zq}JD6a6(^1+g6b^m>9c-?d2ZJ%bHhyiJmQMv#hHscPOyD)p?scR88Szz)l0r?8P*6 z0)fqU&d;o*!!EC~GL{!3Dj`bILd6EW>6}{ z0%ij#7}0cOwDL$YT;q=ES19GsOs-~KCm}1bK;p{G&>kvTQtS=ni)B%?yrdnKBA{bw zH_gnFY2V`*>ImX?8=O`8;><=1S~X>@apT64C*-b%r5leKP2E2@GBi|mB$cQ{MEUtK zDaw8AP(Q0y;O$sH!5g&UbCHaqC55SUNKCWHl)EMDd0ZcADws4=U|dNcc3C0qIU8S> zRsHpD?dS2-9{NEwil5xf8x2$6h)LecS{08m?V9mBe#a?%iv_uIyMU+(&2YjrE6pc1 zT=3DvVRNqx%52ZX^xSyB%!mP3Y>))R;D=un=~A) zQcRNbMyw1v+BqgKJ`HE!)V)}owjjQXc$>6xyV+T;5#SdqfG&5>((iZDjY8*lGmGeM zF_pa`*tT(XfA!*SyRjZIt`d{^A$rvdoc7MljnkDetbEurcIs@*(o+Wgw?uKwp&{Q~ zfrH}{DDa6qpKZgd|_Wu$A6oEL(qW$Z_v-bAnaZ%eRY2SW;})F-5Ga9CD}z zJhRDUP=q-sEEqFbtI9g@Fw}IW)~A!1KhzQ-@_|>88IRT|&u(8@EzEOEeT?Ye;AEF= zURZ@)id!LR)4eNOSr{Vr+dhIat7KS4YWfO(q!w!x{{hvUk7!PDlH9nel8IhY;f8T2 zLV`m1cvk8CUUhp4HJ{Qovx*D~WK>{UK3AkLjdV?Twn(I_u2PjE zpxF?$;uzck;8+8TkMzfkIoH5+Uic_u$A ztS&7LRZWx>G$k&}^@QD&dN!Q?%M**?v>v0mJRjPdMgmkym z1&Uejx8)fM%TJs|nq%r3;lULnNE&QlnCMVB*77^Sn=1w*^C51TM(Pl#@cctR^R0>X zvirw6T%vjQhhdIVnhkK~>605nax`_mPy6<(*+|!_Zn!0E<-3B6r*3?k&)pm^NYedQ*pw6DXB zl+1ZF(W(c(>D5#{UkG24YjruqB} zwLNvug8@fPrs!-w8%V_&j~KQK+aGPqc-M5>cl;bd^E2Mqr|Q*LLS+4BMN zonNRhqpGwrV2)U>UaUsAnNMl?c|xU*U*Ea+_NMN$br;=sHE{O1C-PDjajtTlNUW!K ztsr}|uPxnZ%=m-HA|l^%g)d*G3f%T*55auIxXuZMBxzNYV7NdOohQ;mC;Sy8&Q{aT zCnZMoZ@m*$>4Bv}T;=O+ro$V_N%10#A#y_{xG2oFcK;HVJb5np#=2TX{Kk$+v-dev z270$UQ~w&rZK0>s0~tV|i@=nD><`8NXV%`UiI34q`%9 zx55ZfAzvT9p&7`g(cR(4Q)|<7p1B&f^Y?B*%RIB<^bJJcUG=lD#gX<5sC~E|rf^Mm zIspUG8$i4<(R|SNv^YTq?w((RNpgw=AJRJ3FI$K|oSRki-f}m#3b&G=nLN@_!^XcB z+tfQ&=-cmPQPv*lK~)<;-hE1$T&9l`HEVNh?K)SpN$4?jXIPNk%h zZ8qKP_J9gB*D0@tms26j|RzH<;<9-(qW)fYn~PoQx zIw`qey>uPP;-xp_Bep6vd=ShfC73h^L4D(X3BC+2%<8pvgfV|n#P=tzHU(9%LSEz7 zit0`I8raD8VL@!9HTITSt>m>?U~JZF8L9rRi1X7CS)hc($5BD|DjC=#x7ZPdEG6%M ztM=r9j|@gG{o@n>w#U*YJEo7t8@(ATnDw-I0QXY8QLM;^<}$B!s6qqM!53E}!4eY| z?F9zw;#Fb8wZpHAHP7)RUrc)z{(gpeLTQB3-a1vXL28nr83QGC^yX>xL}yzfXufUlo~?L6pL6wszKg&fuv7 z-<$~?pg8dY3yv7u>wqlBxqP9!2tUK!jn)I|DzEF*ubQGSYDRG&nv`fFMMLj?tuH79 zVc^Z@u>t`8!)cpDb}PnvK8&|1b)sQwm|dOTqBPp+mQ0$XD3s(RO*YT(MstvYqg=y+ zNw515z|G`9>ksS+2_szYs=agxYpMG)V^cumUO!&Lk$@L11-` zAZ3|(?j_q#l*E5W*7RS0*J7Qvs&-O*H66tLI%@JRS03iuoC;-q96O2NAcy6>-3rP2 z7CyuO8V>)D?ZlwExqIQ@RM|PcA6W#rS5Qx9VOsG+s6wn?P6cCI9^dGxoKGTLw@88%1s(?3gB{5 z@!ci}dpUp(7hiX5{hgpxA8HCPtV0iO)-~P*(ymMXj&%8fc=@+}>hVNa7ffj8$dzXE ze5C0fkL#wIyaR=X+N520y17*3?7B;A96(aB*pB+0s7&$wr?gMMX%7{K)Q4^LV^EtCe=2MUTkh#qK#spurK$q<^zE(=*IsFse zI-Sm*5|7&_qL_EDzi~rQ8j0{kc_LVyCCQZF!Tf_E{B_)=ft>;602`}OQU^sYi`?|| zJC{l#?-E+DlIi{<&@u!lnri$(6+v99SE_`Qm_`BKGr zA>7_r%8jH|_=&B@TOXF8#KHT~DzGKm82U}_H>YL~QT9x{SfYBC^&>{#Cbjq0{0jQ& z8wFWA7j78b)=R$q6txKT(jEty)IxiLKGS4p4IIcU!$Gi&0FJJvFVBlFXL8NZ{;o5GC3IWn!ks6C#jp93UUJ!; zW4Cy`GlIaERBy7p(P=bAYq{1UufuA~rzcW?1Gm4!;r#zJ|Ul+Y421ff1(0>Q7y!MZM zgoMY}BZd3`F`_Cc`H}1;tBFKEBQ*hr5`7X$5P$O5&lG%))Ip$dBk$H}G-j(e48F$%aAOI9hVO8DCmnO(d#1&4M8HxAI^mJ1@?JjJ9+QbE zQWZ_|>0I7MFE!JOEEU{J3A{ZoZ`BV9STeQ@Ywn9i$YNQJc zt(^BXK|75uGyoLPSh>AFld9o+U4yATZJylCh&mrN9-wYbxI9o@#i!!f^9*&BSPJE4YlMUsP&jzNAD?QfO)E}4X`AOeW1YgO9OW{yw{*k z9DrZ#NnJZyXk2?Cvx}z`P{(^Tf2+U&C`;lv;NV==>;!ef*SC_s9z&7+b+;FHA0hN@ zoo)#|t9-&?7=N<=W*3Gjyq6YH@IWr>+`q1bT;7%)lSx?6Y zaszu)lR~e@r2~ae2St-fbg(q@2Cdn~_p&lb56YwC45sgj_S;!so8^q~3M($kqS+c~ zbiAwD=~Tr^W~>uB`B)qZ8#}(&HV9u4%K}j93jGV6c0XsknKu%E6)&$=-G^TQL4&Zc`0uzs%0xkLO5JxRin^GC8q5ttRyoJYuNFi zjnMVV#!i}JYAm`t!ZyXoW5%mdDv!!j6C>=lglwJj=KZ5An;lW~5gDM&g1d~^6*c7n zFyxa+hCsct7=u@Y(NFlXNpJ7geZzyN=uo*Gb#*attL&{4Gg4 zE)u>}VQDrk#)AC!Rk!oYy3KmFpdxs=0j8h@h*uc8_EJ+8^U2s;>JS_$v`KUlIGFNN zdm?@sEFcjZRvzGTEDxoHLFR+=4Ab9DKqTkCgi7se_m>hhepy$C&B4f~)+Jb(5ySaB z!}*U?#S%4{jFke@W$tW0@>XePdxXc;mC1kczV+vwveO+O?nRSrXbM`LW*^+jFI%QG zQKy*{Vy3$CvZSP#xCt9j-!0eMf+QPqLM2;kj^+vG@ke&bHtB20+-#AsTyQqaspE4{ zVP?Ch475l7xAqMA{Hylxrn2BXIvS33u`HVf!IqYu-0`WveMqtN$1@MHS04+cP`24m zDcab|-NeL298hd}+qJYFKlU%(-7gDaiYkZ!7?^Pf3Z%9N{>k78+l zZ)T(dx^kH(_39a(Y28bi?`b3-Nq(Gx)->EcICyoS9|f?L`XHJ>jOU*_;vsYp{+(ds z_*lJAh^Z#qb+h-uCJ{q@VVrX+70$6S)e4Ai0(Hv<@F?~G3WO#z>+`HMo*ju>dkkVz zUKeonGfZ`)U?k7Tev&+eQ0UX*q=ywl1s^LCt&$mEjn1igjTAtp=uhlHd5|464x_%ceW zZJh1KP4ky`GpcY&n2FAYKDVXA=0uIUfGrhDTL%y-Gt@trK%m~9iR$h-va!)O`;{r^ zVRnF||1aXS%6#0e(tx0h5bPqp5BOI3?nXJxt^>PCTWTu0xEpcZ%s+g_o%_ylLtO71 zs4-djejQdYbuOQ0S$QBiy{0zgh^V~W`L<=Eu0vF$+tnbBi2N?O?6dKI1aj$r1c3VY zGH`VbKwkARAZHIES3vz(X=-cJr`wTw+Plo|^R8lXIBs}cH`(Dsm3Xh8m1s!$~5=K_egj%JJEU`U))%P##3Y~I8*SnbV zlw)+a>atL{fCCYJ#^>=`+#AKAivwpHl(hWXv~Pve9q;KR{+nW(Eu2FabpEV$~p1vXV##k0IcTPGJ3UVVA* zw%?|yvHv6#&K_L;o=s@EWg6^l_iSH<0scoQ9`Q%)tY33wK3Swy3vy-EzDhBDO`j1W zLSq@b*$~4)!$tkHk!GTQzcO%W#(nwE`{rZ6@+c3R&a36rKmGTnfr@O#@4O!prThyk zd$3S@J3QOJ%?gli{s{AdUDF>Uk7mV5Yrp+h9e&y2uRF$HcKA2#(6hp**b}>a`Z20z z>dS=capiiXEF>*0q`}d_)%rerTApvnwa?f7Y^(pDdH4ONY?Z&A&;g%wSaTyR+sgu( zC&0m0iZJ%98+7kGLC`KFmp|^1?(7_~Wo3X(IxQB-ZJcd#{CN3uy_n1L9J9iTm@f&Naw zp})C@t$aMopn1jGGIJ!n<6z)BLBtIF=4hwm%H#LonXQ6-@LIt{T`g4TQ;KKq+ZuCh zR=r17<2)pNEzwE+Ggyk{b)r`J@IsBRhD?3!IoYp8Dswh(TKVluzi=}M_bhjMY0i7I zHKj6&!9w!q^@BHRbf}N?ldbKY8Xp?PM@zp}8ar#0rW{0{d;2y$`)DBm+o+ZUZl3#K zfZo^@*Y5;vZ{h#=CU!WWOE^UJ^PKd7hcvh%8Z`2rzAGyTQnvPVI?ltywlZ%o-d*BT z{A%sNJgyUy*xOtlpP!HFbcC@<_rBIH{LVM_5Ogy|; zK-ZGWRHj}>iralKD0b|aV=HAH=(PT%tQvA`uoc$=a8B>XJ7`D;^*33mCW=QXi8}+w z4JXp2^PtlUzcG1VNx)BnmH+XD@m}sie{}qa5XA0SJ*lE|uve!5Nf*q^puFZ%d!PYh zRX(VeKKf?kcmQYeqM!>np>PsnrJzKkZEm@JtjT83Zf%UYSrLgGumGputR|dvBqwfX zsLVTggaHMKei0Of2f4~odQ<3Nxwc_2up?LEdymi^O&GsgPBCp1^PSEYs|Y3U@T`BV z)<4zLP{vf#$1-SSbI*Gip?NIsL?Jr`jaU2M$% z)83UwL%H{HB}tSBW3n{~Wf?-KWGc&W#Y9<0RLa^=4Q6Dbu4E~O$i3F7Yc0lZ7%`JA z#mH8c$u{H0Ezu0hFk{^3p7)>Xeb4D#ob%q(>5u1}=Z|OkJ-^@g`<&13yL>*4b@(Rp z-h~E)?e<};r)`f{pGx(s3-utG_-&}%VQ6+tNj45Gzs&FP;5c}ibL_AqDk zXhmDV7Ser>DO6Tlat4cXEk4EDY14o@={9?WFXIk>|4PcvqbvI3AD=Ua|97QQ#DDne zU;esQhoDl6OnN6js?Y@+cEU#ERJMp@|E#4@JCX);P<5vs-FY&y=E_vQxu02ure&p3 z==$rljor2fjHbW~omS=o|4}l*?%UVnG`My?CJ?qs(gZ@BSnqkbJ=(O!WFCf&fYpy2;skYi4x0G3q0ujMD|xy zs@9x^0|}o^Metl$(@22NHu%v{S3qJ{rB70(VS8M`PKW}Wh^Dd%c~(Ha#elFlOyC7j z@>5kK3#9k@pT`m14hP%Y?(2QeoA2j=*grMH+3+ak-maJcTzuRn9Kzu80Mc&0EOybQitR}DWRQ7A`^6=EueKaS71PnD5kh&7OtqKC zOgg>hg)^n+qEc`}Dn$#Gd}*av*wkbnpPLNyEB63lXnYG{ejbQkTzd{knZHwsxxbiJ ze2EiP1p{V;x55f+(z4j%+3ZB`#~YIjrkMvO@uyOoLhoms3=7oMb!n5@d_hD*I`*^^ zdi_)|I(1cGLp>67JqRK0?5i{Au6;ePS38*&Yj0!LkW27N%kd;%&^TCin|#FUP(?E= z_bX$;b54ct2Krw!5ZqY=-w@ufvnoJSY~Icz3@miT8G}5TGlnhh5H`T0nrs^FfQOgi zEkQEJOh5UmfIubP?X2rbF9c3-haiGrbz%8%dF-2d?-ExZ*Nb%)_Z}(uSwTxinr(j z307LqYw4kgVJXv%b)#8@K6P=Yhu^w}r1URGJx$P>vi851)GyV?h>^{);kt(kCbr`0 z=iRAnaYlA^5w^q9Lu{xeTXA3)sbb)hu947}P&q(e@PS885 zvz#^WT+ZA)!3$>LTbEyT7N?FXJ+AKk2-}*UqyArFs1pZw;%+p>r}A(kUsv^ci4R6icXAVeD-=H@E1KhECv5A|67oElnL*A?XoM=;3l9=et+h$(Udxl^Dm3std^y~u zULKhEwhj~JC1YpJ;Ji<^k8Z9pQMSHjVs(5vP}dtlc%Rem57yqdQ}tN03VK<~T)xqB zZomPM@hy#}iU%oWa5b3FN@iA=Z7=FWfM#w3!IpjGe5y^|)wXs1zQ+yci}w^#OuZxP zxuApyZ;gVUaILrQlB}0{*J_^79d9r~wAVlX6mKBfBX6fyu_UxR?1}JK@UyFWZgjcMl2ur>E@RgjUuNp=_aMj!ype5rLwMjy!?j# zAE<449d7i_N5Zi)gPI{z?dgVeSKYbt91Kg8nUKdonVRkJLw2GWRM|nH)JY|Emyb4~ z+C*aRp7&-L$99Lo^%BmvnlF1iNU;Onw(%te%(G(au;KV1{5mBO%RpmLus5TPTqZgC zoDqL~%&q-ADc#y<)H&@;w60jpFX7!5ub1IXA7T`BIe63rLXM-&HMAjfZUD(m!J$z% zm*FadZ5(T^!Kkkc_`K=PdNcbN=OSM7KD^G#tG_1qdH8m$hb!v|JEk8M-o76p@ecIq z{y`J23y-SBKNd3OyJRbiS>NCnr*84D@WnYl$E!0>ALb6fO~30hNbk__Kvvh@E1B>~ z^E6Msx}>sO{msv$@yD0+l4{m~b^mkJ2Ar>p{d5@3m)utv;ZyJlHe_5{wvri2@SQgd z<%jcThUS*S4)R_YU(_PyKD s7kXqr{CLfFzJDjX5&Tld;k*3CztepGKgJ^XIdS3-KmIOlTyS;hPi0Jdv;Y7A literal 0 HcmV?d00001 diff --git a/doc/wiki-cn/dapper.md b/doc/wiki-cn/dapper.md deleted file mode 100644 index e69de29bb..000000000 diff --git a/doc/wiki-cn/summary.md b/doc/wiki-cn/summary.md index 09de6a4e6..cc575f6cf 100644 --- a/doc/wiki-cn/summary.md +++ b/doc/wiki-cn/summary.md @@ -17,7 +17,7 @@ * [config](config.md) * [paladin](config-paladin.md) * [ecode](ecode.md) -* [dapper trace](dapper.md) +* [trace](dapper.md) * [log](logger.md) * [log-agent](log-agent.md) * [database](database.md) diff --git a/doc/wiki-cn/trace.md b/doc/wiki-cn/trace.md new file mode 100644 index 000000000..53990da90 --- /dev/null +++ b/doc/wiki-cn/trace.md @@ -0,0 +1,42 @@ +# 背景 + +当代的互联网的服务,通常都是用复杂的、大规模分布式集群来实现的。互联网应用构建在不同的软件模块集上,这些软件模块,有可能是由不同的团队开发、可能使用不同的编程语言来实现、有可能布在了几千台服务器,横跨多个不同的数据中心。因此,就需要一些可以帮助理解系统行为、用于分析性能问题的工具。 + +# 概览 + +* kratos内部的trace基于opentracing语义 +* 使用protobuf协议描述trace结构 +* 全链路支持(gRPC/HTTP/MySQL/Redis/Memcached等) + +## 参考文档 + +[opentracing](https://github.com/opentracing-contrib/opentracing-specification-zh/blob/master/specification.md) +[dapper](https://bigbully.github.io/Dapper-translation/) + +# 使用 + +kratos本身不提供整套`trace`数据方案,但在`net/trace/report.go`内声明了`repoter`接口,可以简单的集成现有开源系统,比如:`zipkin`和`jaeger`。 + +### zipkin使用 + +可以看[zipkin](https://github.com/bilibili/kratos/tree/master/pkg/net/trace/zipkin)的协议上报实现,具体使用方式如下: + +1. 前提是需要有一套自己搭建的`zipkin`集群 +2. 在业务代码的`main`函数内进行初始化,代码如下: + +```go +// 忽略其他代码 +import "github.com/bilibili/kratos/pkg/net/trace/zipkin" +// 忽略其他代码 +func main(){ + // 忽略其他代码 + zipkin.Init(&zipkin.Config{ + Endpoint: "http://localhost:9411/api/v2/spans", + }) + // 忽略其他代码 +} +``` + +# 效果图 + +![zipkin](/doc/img/zipkin.jpg)