[PATCH] Basic Support for Trace Compass

Ravindra Meena rmeena840 at gmail.com
Thu Aug 8 12:03:12 UTC 2019


---
 images/user/event-recording-trace.png  | Bin 0 -> 9573 bytes
 images/user/event-recording-trace.puml |  12 +++
 user/tracing/eventrecording.rst        | 117 ++++++++++++++++++++++++-
 3 files changed, 128 insertions(+), 1 deletion(-)
 create mode 100644 images/user/event-recording-trace.png
 create mode 100644 images/user/event-recording-trace.puml

diff --git a/images/user/event-recording-trace.png b/images/user/event-recording-trace.png
new file mode 100644
index 0000000000000000000000000000000000000000..eeb28b052bc42f0beb6c8cee4928c1e1161c570e
GIT binary patch
literal 9573
zcmb7qbySpJ_b*)zjdV8%G9m(!gET|uNDUz=CEYcYbcZyE5|Yvl(jlFKgdm;LFz|c)
zzVEx%d)Hm}-gW;Oo|$#n&)M}kpS|~audXVOk4KG%f`Wpts34<>f`WztJb%VP13uS0
zriy_-T&}V(S93=vFFOlMR}^^*2McFYSBp1{W?qceuC7iZe0)xJrVg%d_I6Lr9qoz1
zFKJOwPz`LfVXpuA9R(E-<C&$S(d7^fA!>76msA$pL4ERRHdWeO+s>S^4$U|dwc(A{
z{EHSudB6&0ZSRlotwKj_8QC<iRCHdSrT?bNA9+MjIi%ij*kA0T>T%?s4!J!<r_THB
zH9VdE4pw>^(O3JiIjJs&W*1G%Sit%l^kIm;3_b9d7 at W5AYoz9)2Gbw<7J;{|Ox{&d
zNO171PiTlyXslm3X{G3D$JXNyE?(9ZUG<nsO5G@`hBW!CjfI2re$+8mTpX_0 at 9z?K
z4PKS=?n|&LNxVU%*`vtmEGp55F!4 at C?w`fmABR+xy&3(JSAq3TIAowhuq%xtKZU1>
zwSFO-cd$ZXLPJB^ztMv{m~nkEEZA>8^6*Dsj*2i%j3m1jhui1<gMk;b*obYrh%|bP
zSGtmRy^_`31I-q at CZ>dmo(Ezzo&M0!rqMn&1MW=4Twd~Oc<+<1yclSI9mNu_C?loq
zxp<I`udTh+bYv4<H~aBf$-8&a=bCThe%q$%i>KE15LG{`^;8!yu3H*l`+(3hRJ;>*
z##bsxh?kwFETSw|jF!Xbl?p>A!w}eZ3S{Jb%-j_nnMaP#=r3#6_;5ArcR^+87-pKj
z at OA3}?o%Bm?sL(9D|Yn9C&weet4 at ndR)e08PY_jBgG`oE9rzaVe|X$fe(~bPV{3!a
z(NO_XV5#;P-oz~QhluYLcvOZMi)<4_X}8q)CC{W~_7gr$D)5UbMB_UGmHEhHg>G&!
zIkzJQoQH!R$qZ at _m$I|7Gd4C>R8&+^Q871XQIY#A;5`^tXPeSxf<ibnJiNEJXTu)}
z&f`=Ik<!+l&Jp*SoSIT$Pg=11G|1T<SRh7*CF*ggtf(mUPF+h&I_dAeiLrnWKnYU_
zrTYK#YZE0FtgkOaP__Op6?jc|AT#Kn-En##x-JgN!U_BeJdUtWJoaX-ZSK?H)c42X
zRyP+1h|0cLx`eE|imQCXf8LQyZxWwOb~y|uc<IHDnH$HThDPXq;BDZ0zL6w}&2hNI
z^%y>yO*1eQSb&2*6k}?lvu*%i`MmLVVEERlJ49pMC09by&W>jlObjTHeE$UTvyGwE
z=kk$_gv8~+4|!kXrc(>YqulmWC7jam=4LxUc|Z`UX<$hK^EL7^Z7iEc*lE at LsI4L7
zA3Y{HK<vttY;bf5=r at _uo%P-&2|s^MiObz{6u=`PsGD}n&7PaKHacz9$0HZDT5mm)
z<$C<+Ygv7it%q2~4$eP}t5Eu0yxt$rSIa{qatn+bV;mudt7MCu3?$GMKL#HxHMwsL
zz$2~^SmMUoXI%eCozar&sIFQ!)QpX|!c1cMDmSWlz+ggoEcWUlfx?)Vz`%u>J74hG
zV-ss`$?UY$wN5DX8Fs+Q>kqlv*{esA^lp%qc0bDzoZ|8qk=KKRN5R;wwaI at K^<Qo~
zw|B8Pxc2jUk*PJr{7dEQ$^exlpP!TZDMF29o8i>J$<A_maJ&4fo at qFQ%~43u%_Th|
zuJEr<oii5o9gT&A7^mc!<MQBS)Jc0Z?GO1@#AnatM_%>FAHwN6Zucujp2()aNaDA5
z+5Z&+_&Y82Exa?9thb+M4>>bB4*%q_QGI(wbeV9(ve!?Gfvl7iL<4c#w9_$zIDsHF
zq`KszBw%T0S&;uCKfbc}0(F7`R1B-%8MzSf{bBezip|H{>L1a?^l1W(e5zaIss=eP
zY`?cNTr(Xqc&+L5AQyY4fn9ifsA#e!#QmEloc(*vO>28`F&qUXAK&GS5P$7NA-<Ff
z{d78IUoKSl_1iz;r|mIwqmw;w(`y|^xzcYn(&ami;hr_Y_OD>B%{do(lTrH1BTcq%
z>sFre4EkEKG>FD6?M35Q+M}V!Z?pU7AMzwN{m&`{O~-%iq5e$+PQB9db4znm%mOhp
z<dzgPTB56|eGTV}&XKRCBaiF%1*34&{r%pDyI;FVWX|#}Iu!KruIIs~GS{}2e*o!J
zHaE{}{`qJr{hu`4WL>stb}uT{Z0_b56(tHFMs^{}igZ3uZ#Nj!{g?#BN%AEyBCVu$
zri^D!!3hm>arM!U6mL$R4|e!*ZB3E=v!i}!^cBk#UpnpkaXyAWO%4uDg*_|eKpYqG
z at JrMMbWTt`0im~V1(|jp-SZz7-F0l(K4f)$W?*GkLv{=jif7W)fOHG at G(%8lmJ at QJ
zO}*=y3^EUAT~eK$C3T{^F`*GD-r~D}UEU3#pp?@3Vm(aK=hi%MBoPqY_(AIyVpJKo
z4xvvxuT_pg*soXtbeVa<^fP-QC+s6E`fdZT><t`D+vmH?aJy`<QgA4B#uF2fRAANH
z;i$NS%p4)+3&uORtYlxTGNod!gnnv08&!gvR*D#_xVBX9ob|ENYHL_4YhBxT3j+Wa
zx%03YT$40mKzPjy5y{%4F|M|oYWhfPZ+tK%eN%DZ;CAOg>%UgJNj^WEO;rD|wgr(t
zsSFG%n;t8h)2*z2nA+pu9)`7jz)7JU!DG!EU?Bl=;U at f0z^F`!oLPhsDUTs`+Fh3N
z>_;F5#m|MkS4^8@^rZUWmy@>1OM5SvuDd=L(J+3<%p_dVv$NYT)hR2;D)V?{{B!xT
z;cYiL7jJxedZX1?&e at r3(%>7xOx}G0>B3d>6bLa^&XbL>2=4(W005rdV6f0mvwzw>
z>TyhSEh;8SA!5&)uoca-LjzT$>b^$4)O1921rD at KH7(M$n;n at aNf>qX?l#Ob>_5IJ
zZ*6UDZ~wV#4IBMUc7;+J at _R_%9X}F0-a)iCb~pr>cbJkqxa7@!vy0-(^ug374G$_|
z8OYs at c_AKwLFuS9q{tDfq(tPBfcPwIH2AQ0-X?kLH}pBz?GEo2(bnBQGd(RJD9C*v
z7Vl(xK%kAw`JTE)IVX!$JtRmX^bPsRqj!=nJv`q6w*b89>=0?c>W{@MF<W4-9eH0I
zqUso?&LAXRD|=zjpK)rKU(5AKE8xYYx?F0n?>^xL-fdV-UQv-O5~T}88+V;P0f;zP
z!bq at _V?GqlTVCqDl_c%|XuMkEzA)ScBhUOP&r@=d`$eqqWch&>Vy96{ml&uv(qgs;
z^K}x%I>J}*0^29l4;|NGrQP0qxYM*JQ{p`aAa0oT(opkzb%w?c0&$9DQI&JVB!L|n
zJRV{xRC5C2!@GH%UW(RTKL1y7@;ZPd)@+RVOv5s{`8eq1Wkrj=fZ{T!tWAul&LaKo
zBT%bX#DTg)=lC6(+9e%@EmN+%=CFaC7)63F{HWi*Xt=DJ$e_tmT5G6meojDVehd9W
zAO>tYu8pJ?8gwe7jrL&=z&kn$Wd(xx??5`ZuZm0<a*Fg8>6)Mqs{pRUKnLI(0A3{q
zS`11<-tx(N>4&;JZ*wNFI&FO)X+ at 50#h2bLZX>iGblEFu*ek<Sl4_f!+yEAOw-P|=
z2(TF2?0LSJxLX!F7_~ZYgzBX at Fi(}m571zVtw>wRKy;Ho0w`@O_!&$AXlR9#O at +j#
zBc!7NHzpg5v|F|G)cujmHL1<VruVlu<E{zM5e>p{9J!2x;0EJQ at N#wM$%lMlI2TS_
zn7&6Huua&k{_3W~nG at ek9$tR3p~Y21{0_iDaeWzM-trqUYg{~CCp`woa)8vRY|AZg
z4yD_#lQ?dC72~iAAGemxf5wRF**PmL_#97Wf2SM;cR+u&0fLsD$_#2Q8pgB;ol0f-
z#+}ijnx-c%B5zgyxyTDUC;I0Qj}Fd3{B!>tbUr~H;yZE)p7_p-&p3z*MZ?<g!$?h(
zpy<~r%eEzgEHA}38UhJd_hAmye!<!9NWw*i6smX>)<0bwWTxXy4nl(Or!sL&eFb1b
zp(7NskMC=!Qk*XU)xP_(5!Yj~niK+n-c1(H4Eh4~7S?|^Pp#%@0aL at Ko7O?$hHn;E
z{JA}i_Y!`o6Yi$`b%kiI`=rk^5`4v{7>DvCD*Ce6Bm6u>9fNUigp$15$IO2EWKIwO
z!bXhwVv-BwK-}jvuI^O^LTptA+8zpg5t(9ibt1-|_!1)$eUO3^u4rW at jS|bc<}G$s
zgpx at L#ETR3lp^{4R`Xd8DVmr%V2^x8qRNk-oAom-W79)H%Q~VctjQzrwBK|Jtm-+K
z=w!VX2`6EwV}F)D72*Z6 at U=$1Pb--(Pqlq+R{hqo8zRm at PYtZ3M@9UFd!A?gige5;
zo=5;KdTcMDGXVBK#V&=Q-Qd__5?pHBgrFAa^wy{p_g@!q%0GrhPyi(6HIc9qfRQ!*
zA+~F?;1iq at z<Bhh%CCnICV{jZb3(100%7Ns($n!4ucXw^zjOFPlFThWAhC$b60#HG
z1C7?tX90E?h(?Pk1;pFvDp7WX5<p$z_?!-L^LYX*ZFfg8I8lQz#=QPu6d6!P2<@FF
zG663KUQJAPm7JNA<cS|U%l}Rrcjlx8wbcB1;e00NC8BGNfd+tAQ;}apMnk;h9!b?)
z-ui&S&bQwZ?x!}s;HV2gaU9KG!o^~gx=2?yCSHptQl}>N7;r?zj?Mm5FixqwxYQu3
zGN;a#xB4`rBepO!dDc|jkw->x_(R^UEwYqAxg1vio+3^}%frzxbC1Tq%L(??XMWb3
zR0k~{#kyK4PXG at cj3P0VRdo9bJVZ%88E;{xB at ADGHb-6Ahr;{rk5|{m01)K0)J43M
zw5JAno5 at 2)+Eib8t?tAmyr%2GazSOt4<H{;Z*!7y%y84W!df(R;Y|R^>`o51Ri|E@
zgy8;6U2}e{YT$oYhwo5b20<&u7>B+wr`7vth>I at s3;^ckZL!a3X}{^$<^YCuZ%EgX
znf>|^i3fcabm(27AGzMi=1tfihkzjqurO6y9S{G{8eL&O at 0+t7<jwisa!W&HWo4I%
z$(i0HKrL;42I)%2&H0 at l{P39ksQ6hmJ8>*|c-Pm4tx!I$9`<Lx+Pnx;Utixi0C~<N
z9o7jWl)O8Rrg|PrFJ4;9K{vNDRgdsK-wh at 2)Zl@)-%S=lRjWJ!3KeYzO|hJrv9C?|
zmI=*r8UjvPfI=yl<(Cu|3g9DJ8roGDXy0g%XT5a6O4u9=xc}3z;{UK3a(a5&<g!JA
zrOWmcTIjlNwD_mKzP_<hI4a%YouN|r`|It#rlzLJtS?`9MiNp9K_J6sR~zYXmuW#=
zZ%Rr^?(grZZIo?X0v>Kxy1KWww}a5Jb0h<P;*wXw>Pt+VKYA-1O#id11Qhzt%I0eU
zX?uFQA`QyUAL<$UBcMl*pb83A&3EMn4dhP^=Z|uZQ6H2XFmg!;xe{kdIaG_s!gVVQ
zueS^1E_SA{2^JR at xkusEX1y$NV!<GfKfg!G7a~K4xyxxQ;-ou25PPiu`sFjwI{}6M
zt`yy9fNYkykZ1P!FJhw?PH at H@`TP506VfNA_S+KM9<V&QmlgH#@nP|LkN_Dq26m&p
z7MsQGyE||U(5i`QCe|UqQx9>wCqDmTUs2erbD<<YA*CSxRb0h_>am`OePf76zGHVw
zjoj!pKn461#`h;Q^h1JdE@*)2fyc67tf96RW<+n{@8sk(ES`VY(~(HSL~GdOjHzJ*
z#04q4vU={r?@UKC@$|T4ulu{}C<;FEKYEqMF+XFkake8QcAu8jI^Pl9hRug$%Mk70
zQgkfOhr~wCY6a|Oweox39yCbt+?oV-d<!RhSdZds7s?n689UwNQ29VcPak_-&zS#9
z4(`3f#uXb!`%?1 at wrI3vazVXL3n!HZGS7sJNY>AVyhBs}i`I*jT-5`HJZA~z-kBF9
zPibnDukVTFa#we+mW}*+ at -O0ICy7Au9<KY`<hWl96`00y#Ggp~Lf3R0jQPlonyssk
zn7r#kU_;F at g&dXw=OV`tSon#vD<yy3BKqD?Q;D1IaD8qRKZC_GJNoCMO*^}qvql#T
z6z3}Tw8#bPDl<L(3Q%DE+jNPR<jpqA^;pOC?@S<;KIeGjH9e<x-<d2*H}`pv7ief^
z{h%GWsC!WGrbqQxln!>1qiXM)(_TB;enfRLJ*a4Xw|;)Wrh3&`iYhTq;HVR*Ip^==
zpLo0!89E0;3KH&Cr;L<1ll#QA*Xt&In|dfiHOZ>XH^tMA1ju#YfF5Zu_-;4uK+~S8
zWbkjUb|KvLuyBHL+F|JTk$9cEr#K5y<h-xSP2l_y7{2R0?*k)a+^cP6&Jk!ntakH_
zFN=EZrhz(!+q`~<(W6~c`#m?R0_26`aONi%6%kgwk|B|eTd{`3Q#%bRg~2>oi}9ky
z=m<-<jfS$6pqcB_ArzlI2t}n3dBKxK|C3zbDSUi<VUd#L9d1zG)zy_h@}?Z#(LPmC
zmPk_SNap^GI>z4K-pm?$qg%qi?RwSzOSP}BPwAJKQs&opm3GrH&BIC*YGsYhmfzS)
zLxKkr>RS=BbaAoH_ at GrC1p$%o6ckLpS8L$~w>rAIVPRpBl|4>klQFZiv#YBn*Dn!I
zd-oa}8%wl4N5&&(^x&_fRaklk`acn)ZqBi|H#^@s^+i*aU!DQ36B+95)v{<l<1vd;
zDWsYxb^ivjk=R8+bTNVvtu%5{^!D(FfU^ntUJED~^+NY%w$vy&+S(0SY*|`XR#;fL
zc^xwOn}?^O7M8}Dvq$sunQLidbKl=x14q#`JZ+<0Ufu>1>)`UK8u^@K9xH>8LzZhU
zD)aaC-l*H9sRG%k9=5j^G4qVcfSF8?0FtUIURNf~M_5E)o|fqfIxIzuzHa+4usc+p
zw6?Z35KAl*ui_!%Y#Rl*YT at LKW0d&F*x2Ryxz0``_ZCQ7*Z*u=1FS~*DBpdpJCqx@
z#rt7wXoy<Gm2(!sm>3_=_)uSHq#Zqfl4sIYZQhT at dg`aOm=y|u#E^T2Wk-<qqPw0)
zl+ywXhRXVpkU*1K*m<w8Fbf+oTe-_07P{R+oIuN@?`DO+ZaTeS{^~jlw;{E0$~cWL
z!=~a3FJ6q|9|D;ali?<SdRG-73B}8Xg`AlFIvWW9#)kRpi-c96QQ*5CFX8I0XIbIc
zXuKj7vs58$had06?_D<3#z$sqV)XLYmJwI!H2en}D=Uarm}ur543>VEWv}Nl2owcM
zzbk){hPxK}KHzwGg=PCSJ2*g?qNt03%0m}7M2Z5VW5;uf3X`b;jZ002EgnPU`4eX=
zBX$UR_}{4JjEc6>fKtwX1h^YO+Dr@#{xZ{OQzp)a1+tqYPl;k<>?of2Kz>euBa|92
z2Z6U`oDu+4pz_s>K@%M5tmD;q?DE{pVV@*{vR${@j<ghmF{o0A12nBIZ0`lom`sD>
zqQ&SBf%pYJKU?NR#b})efCfeU_2cmJHJ|Ue=zGnE>Z#BD=`&l9KV3$NSnPm?#O7>i
z>`L|#!<r382teI~6Dd^v?JUXQo~o2EjoIRtz8xfrs~Tun0MqjRJww_+lNlHSa4mo$
z at 16EN>hAQPp?L(<!i=~IXmOg*Ix5r&^YDqFkWvqcpdX~TAzcAl-><y3E;kb}lI2VI
zEi=R6Djt`!4V-bS4*-_}kkb{nJCCkJ>SmRZuoW80dVH*o(;#oLzjknJ^ux$C2r!Tg
zn(1*{Y)5^*0Q2`LEIb7?!nvX)vqH71rwl`8*d*WCHi-c9i{428j(80Zuse&tXahV$
z#)w-C<N|l9y_u+jLa~an?3^%AShrU6NSluP2aNQPRshK0%KLVjHZjn);~^SPSTgff
zEXG+Zz(0XNctNgPB_&3HMU;q^4qp-4LtqHYB?cy9SXJFz&@iL&BDk4WB!jJVfh7l*
zhl;Z&gXmJhzyWXuR-!-uYps1ux9nX*O#*HkSK1utF%M;J-A|eR at l6&g^%H=1b#4)8
z(6QynbPJ&t<FG=I7_5e1TFb|q#9-@=hk4cP$6-!zGI22-1uoon4RWe6_iZxVfnt83
zH`WAU-DbdI)&Od?kD0@`t98AmZ^09OTx`n at cIz2$XhH`V<DJ~~*bSt&09hXI5+*oc
z3=O3ep?&F=9a1FfyQM11qnB|eqVvXV8#iHAphu=Dc`lT-D?XpNoY_3Kx`1+l7HE8_
zdFJBIAn`OofmK}lWh4<8%iR#zV)+Ug?CVQ5A7#!JZ0Le95m4bdp7e3t#KkBmFwlnV
z0$g9hlyL@|TrZ{TVsQ+u{eC`zI+f3}pjlrDsMZq3PO^jw-L&+eW$K|(LNdg-A|a^L
zFj$c5PVidQ(k^v}{=;3nSfLttWlzRU2WY2l&VWlp+Kfpl7n_qM{OM~k+Kzy(OiDqd
z2X7-ANahTi(8TD3?*_{|!g3{zHRs#V+)Is%o&5^sH;wBq*NK;FyXEki>etO5f$kho
zCvJxUwUybq>>fZmHm=z=1pylcn16p?jB&!}JrE?%@zzChEqFw<_)x(cOM3B_*6OaW
zZRT?J$<<q$afT=6^{<zvIFz1BY<KelarE$xpx;t1pPv&4hGAeEb1*M$O!R6YAK=$|
zk=#Z7uL~OmZZIAWj!*m~bJE3c;(XI}JTO2gxFtyRc%`9)s*V+z9wIeQ;ZFpBFh`j>
zr$y%tm6V4gHSk7PuFZD2aIg;0=gdRbFq-kO_fT_G4u+a at Um3k|yE{aC2z||Bb>!Dc
z0nXEMg9CH{(C*fMLyw$_FMb at b=&b7PXGqyE1)zdpbmjMc0!ERxyc44wnNzUBD!7tC
zEfodoiNjS%Bz<f)aLkuTX0XnquzD_*<$9|YqmQQ-lK_Z^PEX*C%`SPo*AX4?{*tqi
z6m<CWroO4>0&r4%p409mI=VkcbL7d^RIQUaweQ~i2xl|djGqyhR#5C-%=4I#kU<0q
zK(8HnKQk&FxxzpOQR*E6ezbS1yjB}vwdICRX*k3iwkgxUEo>2+p7Q*AuZet6t~h&g
zFZ(8EUENPHk>}i-^n at TuBwcHi{W|O~_I<UfG+iYlmg__e=`hs1Ui!oj!Bo#oxBWnx
zeJ>e&dA~Zx)fT`4@;ZLcNI_7V107NXD&5Rs&hR}m_lcl;)b7Cr>R7YR1*446uHg&h
zRYr9Floo at Rs?w87q-Vi(5=c;k18i+;%RQcc`jD9U)om_7rq#`4KPx#rCzO|vjn1jd
zf%3T){i6ZJ`PX at mUI+>KBp1FNujX~*<U44>baE8-4N~32sC+ACkXGm1)^+s2i4Rst
za=57}R5rmy=Q${{Kfmx^HLb)ps at d^3ZfiX&_!cg{CrEoBT0d at XEIFN&`Eq4%sdt=O
zAjs|Cvl~$kBUKtfo<A_k at oKjtH-Xw^_9_DOyVI7VSeMC7V1_elZVKt2ZJV1Ich3w2
zAFJm^#Kepa4?p4J0;&!hJ3Cg8 at XohAYwH#j2&HGS+86!0Aro*X at 4p5*xag`k$0F2=
z4x~g_^t+ at Q8X7(q`-*C6LK(`IUo*g~9|<c9^A7}3O;?*Fs$I6eCnu9_;BZp at _rIOt
zb_bH0LI45(e@`a2AumJ^^c+yoQ{)-X&$?jCGB!I_h4K$yua=e!8(nuE=!K7~fyv9+
z#XXmVdF)LN6n=djv(tF`o-}|B-j`}LsecP_#eN)$MOBIA*6ZA7&mIJQ8wr;h9aki@
zK8a-~oB;cVQQkFJ!GAuYsB9&1zIHZ_>+Y=6-d-5$9PGDrb9tiIem86INS1<H=x|Ur
z3aAS$e!=gIT0Jl3t69JuQ*FI^Eb{jSjh<<kmO0+GFg??}x(g=IK9tgE#?f)*>HVmq
z+&8zkZ)2`5zh_ToW%aC at 1ax<<f#V+x;JJvUiMdOz?oLxM1SjVi3(5}2gog6U;C(IZ
z6hWwq($VHE&iLDIrG2sAN*$Ou-EH!P+bvV`!gcf)<ydd8 at Lo!owat7{(WjKGEENeP
zRQU8tI>517($w^!+5Ldoz@#eR!H3+4;DMc^V-H3t+~J3VF5lJJEvNK}4C at tn@U?W9
z=h6Jhr{*=DPi}k6TVuHuHRevy`O>+aLnjomOe<}?1_f2JzM&(Zs*VedT7HK8S%vRM
zL!w}yx1GNGShRLq-|MnPw*Eb7>+$`9m;K7GU9=mbY at MWfTcWvFGOuS>W=`l9E8hgd
zI_@^_muLc}WN!qX=!P(nL!qj<_gMng=p9ms9I=exu>j<rzi+B;N_IAi1cPKw$QT9R
zZ)WC7V`SvyZ*K0yYS|O2*R5A6y=aq+i6WpLY79N_8v6Y~@~%;6P|}ZZuoDkxLr|07
zLaq;cyZTCLBXe!7E1OzXqH8Z?xm;CI at m-?1iOwo2b9=21;Qg4uV53*%(c6K6%t%q2
z$qt1m#kZYsUkN9Zwi{yc>y0sD)Mr|Du7^vI^Xo$#bOADM^pX_q8$hdt$!ENRyR>nW
zJz(P4-L>#rMW|8}E<5eF1QyYcz<f-9rssV}B6E!}K8iE9Jpnc!on)1b8v{h&;5*eS
z-##~+1rTb%`dw>aCubl)V?%?M0GEUWIXjb-=LBf-XZhCb_Br>*GXUNDa8mZ at ME9em
zCLWuBV?MO-8DmB`y5aEd0{=BJ(+Mzxtok5tkbUI71q#8!_cpYJr1+Okd)K>;#DblI
z|61MhPk?f^2yqU_q8{~G6^w*Ft}un6sTM^{`9oFukP;Z5;SkZYuq#sZ0$K$BoPx at p
zOzecCOt*&{-q|^LAWbPuj#ZyNS;|mK^WB}&)fMEGthZp$MDwIvY9~Us!uNF+T-JzL
zb)aO-V`>N`B_`Rm>`bd at _G^)O>5t-YF`$tH$*FNaDEQG3HDe&fHoxX6v$nAF8zM_q
zdV16R3rzf5VR#-5oeaB}{F&lRu5Z6cqFmcvbG;u9f<81Tk!#|4xx3NhZwnI2(}iGl
z5$0!0H}|*0#80saeD~WfQ(Z+?=*Fm4J8#eTe%MIr*oqs7d}@yI9w;=#Lig(7;YBK!
zJmx7i@=YZ~z_L=So1NeF!6f9u+<kY77^8AcR9(+}f0!~VGpGDKtsI9&MM|VRlmfXd
zT$witWU)6H)?dHWd?o!tey$Yu6^X$wHr4%X<C~0NH^e4SdM9FIsyC`hv&4SbS17pa
ze2;yH2#Am&a6+PA3W?H|XY#N~pn##_T418pQX at x7@bW$KXmIQsh~bchH$Lr>$ySXA
zh0=_h=g#`(Y^z5P7|uQ=?4M5+3rEwKct+0qfh|nw#N%Xr0Z3GMn|C7=tbSwLA1fpu
zdxz-`QKx2rpj~J9mDdrPjswQwFS>Ju8yQ`6hw{1G3a3D!)gSLBC&whB=tRzNH-0fc
zxjdl?d1(}iY6$%z)tIV{@q}(-x`dSYyvKp%Mj_3PbJRngGD|cq^hR!oUFUD01L=Fy
zB>V65WtKsEH-8Htf;QGtgCjh~qKY-^RxLoEi@~u=L*>I6pBWE`ft4G;ny6VabXy%A
zY?H at PZpJO{uDy|99>h$f0rp21>-sFn;Th%H37EuP#}GQlm1;CE5hA7b4KkQ)R`u>|
zJAfQMIEBgf&8>B3zr2B*S)g+p#t%Mj$jC6 at dCJ@S`<NnEH0GYpG%y0Of;X3VTQx~+
zDv3n)oBRK379IcHi+j|gg>*m|LuO_U{=gE6_zx2Oqsj;Qrm0_?_cwD$6T38j64F18
zlUH#wxNc8CcF<2>kb|*++pmQ2RF;+dtw>K6WFoaZJ;9|+#5=xzx%v%HYoL<yVLwk?
zt9wKE at y=4i-Y>n~wFGiFnm7cN<1$c6Q<JvFNLwgkjv(5#Im5dGKwPz)X|+Ejz%_@=
zL<uQMr at vPg1ljz8!K*TqL|Ar8HyEa!@4<|q`Q(3}j+9kgJEVZL?m)1K)+7fGx at rh2
za59hoU!L-C5Ww|~wX`hPmtBqYkI+Tx58GnH>VII&nnHGrb8yj>E{)}-f7qizDFuXt
z7}_i6=jV0GbY(TXwav`d|LdN{tT<?Uo__rw5^=0)qnr251iYFi%C(GZ8T!t29q4f0
z+}yaUk<k5+ZjB8)OvIfwQP<QAUI}F4N<PH++T93#rqtWlCl?ot`d>=|i=+s(NxlBF
zq6U$gO8&pDKyg^bw*1- at HkoarOG&{VCcV_|_oL7R(tkk&(2JHgXqE1f1)M{_{<rHc
c;}6)8<!?o(756>@7oJcQWmRP=UYP{{544OnNdN!<

literal 0
HcmV?d00001

diff --git a/images/user/event-recording-trace.puml b/images/user/event-recording-trace.puml
new file mode 100644
index 0000000..6705748
--- /dev/null
+++ b/images/user/event-recording-trace.puml
@@ -0,0 +1,12 @@
+ at startuml
+
+rectangle Host
+rectangle "Target/QEMU Target" as target
+rectangle "Trace Compass" as tracecompass
+rectangle "Babeltrace" as babeltrace
+Host --> target : Connecting
+target --> Host : RTEMS Trace Data
+Host --> tracecompass : CTF
+Host --> babeltrace : CTF
+
+ at enduml
\ No newline at end of file
diff --git a/user/tracing/eventrecording.rst b/user/tracing/eventrecording.rst
index d799774..554e5bc 100644
--- a/user/tracing/eventrecording.rst
+++ b/user/tracing/eventrecording.rst
@@ -6,7 +6,7 @@
 .. _EventRecording:
 
 Event Recording
-===============
+***************
 
 The `event recording` support focuses on the recording of high frequency
 events such as
@@ -56,3 +56,118 @@ started by :c:func:`rtems_record_start_server` via a TCP connection.
 
 On the host computer you may use the command line tool :file:`rtems-record` to
 get recorded events from the record server running on the target system.
+
+.. _tracecompass:
+
+Trace Compass
+=============
+
+`Trace Compass <https://www.eclipse.org/tracecompass/>`_ is a tool to analyse 
+and display trace data graphically. Trace data can be gathered from  RTEMS 
+applications via various means, for example:
+
+- :ref:`RTEMS Trace Linker <TraceLinker>`
+- :ref:`RTEMS Capture Engine <CaptureEngine>`
+- :ref:`RTEMS Event Recording <EventRecording>`
+
+Event Recording infrastructure is used to analyse and display some basic 
+information. The basic information is defined by the Linux kernel trace 
+support (lttng) and includes CPU Usage, IRQ Analysis(IRQ Statistics, 
+IRQ Table etc.), Linux Kernel(Control Flow, Resources etc.)
+
+Advanced support for Trace Compass includes dynamic memory traces, stack usage,
+network packet flow, etc.
+
+Currently the event recording infrastructure lacks the generation of trace
+data in CTF format.
+
+This scheme of tracing goes through the flow of events described in a subsequent
+flowchart. This requires the environment setup of 
+`rtems-libbsd <https://github.com/RTEMS/rtems-libbsd>`_  and 
+`rtems-tools <https://github.com/RTEMS/rtems-tools>`_:
+
+Step 1: The QEMU simulator is used to run a LibBSD based application and connect
+it to a virtual network on host. This requires to create a TAP virtual Ethernet
+interface for this. The QEMU command line is used for board support package, e.g
+the arm/xilinx_zynq_a9_qemu BSP etc. The host can be connected to target via 
+telnet.
+
+Step 2: On the host computer the command line tool rtems-record can be used to
+get recorded events from the record server running on the target system. 
+Recorded events can be sent to a host computer with a very simple record server
+started by rtems_record_start_server() via a TCP connection.
+
+Step 3: The trace data received at host from QEMU target is converted into CTF.
+Since, Babeltrace and Trace Compass are two compatible software which can read
+and write CTF. The converted CTF ca be passed to any of these softwares.
+
+.. figure:: ../../images/user/event-recording-trace.png
+  :align: center
+  :width: 75%
+
+RTEMS Trace Item Generation Example
+===================================
+
+Step 1: Clone the repositories 
+`rtems-libbsd <https://github.com/rmeena840/rtems-libbsd/tree/ravindra-rtems>`_  
+and 
+`rtems-tools <https://github.com/rmeena840/rtems-tools/tree/ravindra-rtems>`_.
+
+Step 2: The Qemu command line varies by board support package, here is an
+example for the arm/xilinx_zynq_a9_qemu BSP:
+
+.. code-block:: none
+
+  cd rtems-libbsd
+
+  qemu-system-arm -serial null -serial mon:stdio -nographic \
+  -M xilinx-zynq-a9 -m 256M \
+  -net tap,ifname=qtap,script=no,downscript=no \
+  -net nic,model=cadence_gem,macaddr=0e:b0:ba:5e:ba:12 \
+  -kernel build/arm-rtems5-xilinx_zynq_a9_qemu-default/media01.exe
+
+Step 3: This requires to TAP virtual Ethernet interface for this:
+
+.. code-block:: none
+
+  sudo tunctl -p -t qtap -u $(whoami)
+  sudo ip link set dev qtap up
+  sudo ip addr add 169.254.1.1/16 dev qtap
+
+After some seconds it will acquire a IPv4 link-local address, e.g.
+
+.. code-block:: none
+  
+  info: cgem0: probing for an IPv4LL address
+  debug: cgem0: checking for 169.254.XXX.XXX
+
+Use telnet command to connect host to target.
+
+.. code-block:: none
+  
+  telnet 169.254.XXX.XXX
+
+Step 4: After successfully connected to the target, we can get event records
+item  from QEMU target text format by using the following commands:
+
+.. code-block:: none
+
+  cd rtems-tools
+  ./build/misc/rtems-record -H 169.254.XXX.XXX -p 1234 | head
+
+The received trace generated on host will look like this:
+
+.. code-block:: none
+
+  0.003629099:0:THREAD_SWITCH_OUT:9010001
+  0.003629099:0:THREAD_STACK_CURRENT:e68
+  0.003629099:0:THREAD_SWITCH_IN:a010005
+  0.003847169:0:THREAD_SWITCH_OUT:a010005
+  0.003847169:0:THREAD_STACK_CURRENT:7ea8
+  0.003847169:0:THREAD_SWITCH_IN:9010001
+  0.004627569:0:THREAD_SWITCH_OUT:9010001
+  0.004627569:0:THREAD_STACK_CURRENT:e68
+  0.004627569:0:THREAD_SWITCH_IN:a010005
+  0.004912869:0:THREAD_SWITCH_OUT:a010005
+
+The received event records items is not in CTF format.
-- 
2.21.0



More information about the devel mailing list