From 502f9e46b9d21e2a8f76eec523ba8d9083863845 Mon Sep 17 00:00:00 2001 From: Olivier Albertini Date: Wed, 16 Oct 2019 15:06:18 -0400 Subject: [PATCH] feat(plugin-dns): add lookup patches (#424) * feat(plugin-dns): add lookup patches ref: #423 add docs add example include promise patch for lookup Signed-off-by: Olivier Albertini * fix: add mayurkale22 recommendations --- examples/dns/README.md | 60 +++++ examples/dns/client.js | 42 ++++ examples/dns/images/jaeger-ui.png | Bin 0 -> 332068 bytes examples/dns/images/zipkin-ui.png | Bin 0 -> 145891 bytes examples/dns/package.json | 40 ++++ examples/dns/setup.js | 41 ++++ packages/opentelemetry-plugin-dns/.npmignore | 4 + packages/opentelemetry-plugin-dns/LICENSE | 201 ++++++++++++++++ packages/opentelemetry-plugin-dns/README.md | 59 +++++ .../opentelemetry-plugin-dns/package.json | 66 ++++++ packages/opentelemetry-plugin-dns/src/dns.ts | 213 +++++++++++++++++ .../src/enums/AddressFamily.ts | 21 ++ .../src/enums/AttributeNames.ts | 29 +++ .../opentelemetry-plugin-dns/src/index.ts | 18 ++ .../opentelemetry-plugin-dns/src/types.ts | 100 ++++++++ .../opentelemetry-plugin-dns/src/utils.ts | 211 +++++++++++++++++ .../test/functionals/dns-disable.test.ts | 66 ++++++ .../test/functionals/dns-enable.test.ts | 44 ++++ .../test/functionals/utils.test.ts | 179 ++++++++++++++ .../test/integrations/dns-lookup.test.ts | 221 ++++++++++++++++++ .../integrations/dnspromise-lookup.test.ts | 216 +++++++++++++++++ .../test/utils/assertSpan.ts | 69 ++++++ .../test/utils/utils.ts | 27 +++ .../opentelemetry-plugin-dns/tsconfig.json | 11 + packages/opentelemetry-plugin-dns/tslint.json | 4 + 25 files changed, 1942 insertions(+) create mode 100644 examples/dns/README.md create mode 100644 examples/dns/client.js create mode 100644 examples/dns/images/jaeger-ui.png create mode 100644 examples/dns/images/zipkin-ui.png create mode 100644 examples/dns/package.json create mode 100644 examples/dns/setup.js create mode 100644 packages/opentelemetry-plugin-dns/.npmignore create mode 100644 packages/opentelemetry-plugin-dns/LICENSE create mode 100644 packages/opentelemetry-plugin-dns/README.md create mode 100644 packages/opentelemetry-plugin-dns/package.json create mode 100644 packages/opentelemetry-plugin-dns/src/dns.ts create mode 100644 packages/opentelemetry-plugin-dns/src/enums/AddressFamily.ts create mode 100644 packages/opentelemetry-plugin-dns/src/enums/AttributeNames.ts create mode 100644 packages/opentelemetry-plugin-dns/src/index.ts create mode 100644 packages/opentelemetry-plugin-dns/src/types.ts create mode 100644 packages/opentelemetry-plugin-dns/src/utils.ts create mode 100644 packages/opentelemetry-plugin-dns/test/functionals/dns-disable.test.ts create mode 100644 packages/opentelemetry-plugin-dns/test/functionals/dns-enable.test.ts create mode 100644 packages/opentelemetry-plugin-dns/test/functionals/utils.test.ts create mode 100644 packages/opentelemetry-plugin-dns/test/integrations/dns-lookup.test.ts create mode 100644 packages/opentelemetry-plugin-dns/test/integrations/dnspromise-lookup.test.ts create mode 100644 packages/opentelemetry-plugin-dns/test/utils/assertSpan.ts create mode 100644 packages/opentelemetry-plugin-dns/test/utils/utils.ts create mode 100644 packages/opentelemetry-plugin-dns/tsconfig.json create mode 100644 packages/opentelemetry-plugin-dns/tslint.json diff --git a/examples/dns/README.md b/examples/dns/README.md new file mode 100644 index 0000000000..3d18e2816f --- /dev/null +++ b/examples/dns/README.md @@ -0,0 +1,60 @@ +# Overview + +OpenTelemetry DNS Instrumentation allows the user to automatically collect trace data and export them to the backend of choice (we can use Zipkin or Jaeger for this example), to give observability to distributed systems. + +This is a simple example that demonstrates tracing DNS request. The example +shows key aspects of tracing such as +- Root Span (on Client) +- Child Span (on Client) +- Span Attributes + +## Installation + +```sh +$ # from this directory +$ npm install +``` + +Setup [Zipkin Tracing](https://zipkin.io/pages/quickstart.html) +or +Setup [Jaeger Tracing](https://www.jaegertracing.io/docs/latest/getting-started/#all-in-one) + +## Run the Application + +### Zipkin + + - Run the client + + ```sh + $ # from this directory + $ npm run zipkin:client + ``` + +#### Zipkin UI +`zipkin:client` script should output the `traceid` in the terminal (e.g `traceid: 4815c3d576d930189725f1f1d1bdfcc6`). +Go to Zipkin with your browser [http://localhost:9411/zipkin/traces/(your-trace-id)]() (e.g http://localhost:9411/zipkin/traces/4815c3d576d930189725f1f1d1bdfcc6) + +

+ +### Jaeger + + - Run the client + + ```sh + $ # from this directory + $ npm run jaeger:client + ``` +#### Jaeger UI + +`jaeger:client` script should output the `traceid` in the terminal (e.g `traceid: 4815c3d576d930189725f1f1d1bdfcc6`). +Go to Jaeger with your browser [http://localhost:16686/trace/(your-trace-id)]() (e.g http://localhost:16686/trace/4815c3d576d930189725f1f1d1bdfcc6) + +

+ +## Useful links +- For more information on OpenTelemetry, visit: +- For more information on OpenTelemetry for Node.js, visit: + +## LICENSE + +Apache License 2.0 diff --git a/examples/dns/client.js b/examples/dns/client.js new file mode 100644 index 0000000000..83399387ab --- /dev/null +++ b/examples/dns/client.js @@ -0,0 +1,42 @@ +'use strict'; + +const opentelemetry = require('@opentelemetry/core'); +const config = require('./setup'); + +/** + * The trace instance needs to be initialized first, if you want to enable + * automatic tracing for built-in plugins (DNS in this case). + */ +config.setupTracerAndExporters('dns-client-service'); + +const dns = require('dns').promises; +const tracer = opentelemetry.getTracer(); + +/** A function which makes a dns lookup and handles response. */ +function makeLookup() { + // span corresponds to dns lookup. Here, we have manually created + // the span, which is created to track work that happens outside of the + // dns lookup query. + const span = tracer.startSpan('dnsLookup'); + tracer.withSpan(span, async () => { + try { + await dns.lookup('montreal.ca'); + } catch (error) { + span.setAttributes({ + 'error.name': error.name, + 'error.message': error.message + }); + }finally{ + console.log(`traceid: ${span.context().traceId}`); + span.end(); + } + }); + + // The process must live for at least the interval past any traces that + // must be exported, or some risk being lost if they are recorded after the + // last export. + console.log('Sleeping 5 seconds before shutdown to ensure all records are flushed.') + setTimeout(() => { console.log('Completed.'); }, 5000); +} + +makeLookup(); diff --git a/examples/dns/images/jaeger-ui.png b/examples/dns/images/jaeger-ui.png new file mode 100644 index 0000000000000000000000000000000000000000..334d3220b1bcd98a2db25d6b5450aaa511e3b29b GIT binary patch literal 332068 zcmeFZWmH^iyDf-2fdIkX6Wq0cKyXijyF+jb?hsspy95vJ1Sl+o!acZKL2!5I#rK^) z=iJky_wBv^^%yr}P_k;-E6@APIiI-_uA(H3iAIbD0|SF8EA#F>3=9S{3=9%43KFp8 zH~b1e=}jVc)D_O)E;Q_3&D)Js2Yg23j<$^G@jzU6zi(SKu=r z=c61h=zX#2A(#thXX>r`JLvB1mFH zEl+yOiwI$-zQdCJ7o#^%Z#?1hGO=KAupEoTMn*%gDPi1S8@ypc@ZUkdnC3z&loKX0 zh9^?MHZH}nD02i}zB?uj(7z6VKe2=9<0e;5#`OP;K2;ZSJr^f^$J7n79WVKQzl9c0uLKfM2ptB~?l-`LTAMoM&rLpxVM8wWiFU z03WmFbST4JPcRJl;#61<5^R{ ztN~*4paqq9Pv#!Xu7_0v5op5OUoLw$)@I43MVeoN^Cq3M;KZYqhmBYB@7vcA6 zTsZEE2z0B;VZmY|`vl+9Uj8MXILBIJ`tbeyQuDTA48>iXZdO5zQug;MXl#ro;&4c=psKZA1rG# zLsU<1kdX~r$(ALjhWZoB)yk*q?|Z~T5lo1MQMth?r0o||pC>Mf%~dbY_g<7b50f4; zS-5X6TxV7ZviM)^*t699nuXnG{){6OOV*VRi!Kz?V3<;!FDKj<;j2;cEzc75ySEcn z>@~%SdwS}C(tsX`u9vRpcPLuOuYoI?RfUw1#PB-F5N2NQGjuIoRKIh^+a&mMvfOFPDN{F4&2j1GWVY|gk^+(Wr(PW{=JL7 z`qe&ySEuh7MvQ;LDuKgGU0A+Oy=KprF0L`;Wq(+Nw=yVXMwGo_h{lopG>2hqIKja* z95Qh6UrZ_I!Vpv`>%L0LAl9OlN;Ohm^eOilZPGfC?}{B#Vtpmwq&tQEr9%A4KRxgB z4&fAmS^l^sjv(T&6#5uWJ)Yhd^*q-dyLwbmxc)o)+^ik0dJ6bd{N5gB4uTK~c{>fyhQqBWWBbE=H8G}$i68P+i}Ls~muk%lmAc(=jiM6&%VJIQj#^(F53 zBHD9zJc=OLmAI;K%;12Ei#iuf6wE13XC$nh33Qtw zn{ubDryQqhr?{suk}1aWC&fLg2#INlTZy)b>H}tSd}jXNr5lQo-Y1j@Od(Fa`9yPp zaY25Ol$@NLl$B+hT#AJ+R)L%NNJ*b2{>mirCgytT{Eogj`u{zd*7_d>_I6Cd2go_^E7 zevE`@dJ6?lY2qjh!hQ-Z5vQlV6$RA~43h|xT17gFY-yJnX&I8~vcuCES)6-37U`j> z(9|jpQS)V!u4FiR`%+in_M>bRsIMD*8TW9cV2yeZKr$`gvu6X93i}R|}m_ zndO^Zan2P&5W?f163}&{6}%PP7PNC{TMriW5D3rwl*uZTKe9Yx48SwI2x~#

vrx*tL^wSWjSg&-^`HF_0dlmwgO&V`=QRW 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�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

MqH&)MIXw|H~AW@BOm|~ zx!hdu%{xO6K8eQS@QBk*RPP-+0CRUnE+$Y@v5E4XH)IJyZ4^t|xvssDP6VKk2c)ow zWD((M&`w`{iFl!{*{fLCbOS&!n}>cU?DD3yjMVJhF1?ujANrHL!+1Z(VqEC3&GaS(pR}%Innda%EA+=eFc?C*(xm|sh&$EDrb9&6K0O zycbeh;9AD9G=#sCQx%fRm6X`z#%NbQ2|>OMG7S|sttoK*$I z%DKE}GFj5`zZOA|ZS1t%g9f9erknRXrMc;vnFW6HKd{gIsjrZXuBPQ&B@_WB9GpR) zyHvM_p9I#+mwMvBx+vbntaFjCjDVEA`Knld9~u854H(Djo)t z96mEniBcG`k5eXf9$o&Ik4X&W$I@TRHNXok7$Yl97%!KTvA^AlwXb`14Ptre9gwPX zl>$LSs&_r#oJeLQfBy)dxK+J2L8JQ@8o)6+4(`M`HY`H$#k9D`%8T>CKAvCAvh{|V zpK=wUSk6U}#B^6m2vv4cAM%}Vja9j`NJc$y_OXYXo;^xz`GHCk`WW-HSnS88+0ijI zf3tW13{%zTI$Pf=^dn3&=Y7IGIqq68%&vp{($clo6Sf@f9M@VM`SfenrF)u^q5K#_ zGzws%T1D=QM|2^|b8~6yP`NkEWL2`OaE6qtfnA42vr0@C0lU?;eHXGYhtk9nf;J^h z;S75SrC)_(ggj#Lf2b%YsfmlGRT8?}X>8wSbEZPtwz8H)t(Lz)sJ7N~jGPN=_fB+& zk(f2sXJ$8NT5QK%t2Vg>eb4k*$?yO`ftZJry0254L|Pdb@J7}?+Rfp1W&9_>w$N}G zjEAWZYxZFjoO$$2%C={oK#^aOZh!pd#Xhw?+Op)rzi%XcbnI$w&pIV{lhP#7j2S`uaT51Lg&$3B(zKi2zo`ca2^@XK zzkN0VO%l2WuoWjcy3=$q-yU(yJ1d2~R@BBpP9*-hnWo2$HA|X?U*&e&DA&B;RnaSF zt$umz`;+}2;xCulYUOrc&AfS;Hd~a)o6?`8YF%K2X=K(imp7L5;9!$Y4~n&E%*b>A zg}jA4JN}rXhl%zhy9VAF`t9;FT#q6ma&a>tQZCtYCFr#;wsw;!5d}nbNxK`R*y5Ze zj>txzPExm)e#wq5;_6{t2e0hvI(HW7ZZavDdaV!w;B)X_$R;E%mmU=L>Ml$uwkFmV zv~Nou(gFX8oJOOh;49%_(eQZCY-t69b^B#!Hp9F(Uu&ym=!pGjV+iJwx?87j@viPT zMyrl1*(?7wBKm5Xv8ze@c1TpoxajGV=sMs&eVlNiH6|~^_^hW)ShD@tnumVlP6-*r zMg4l6Obaoj%2Ww}2TbcJ%0z zHvPDYtDs0u#g#eEpNG=%bMvhrfX2;AWL5K!oR$wX}O}ok78jsaMgm7xbDqo zA=&}P7!HoTZTU7huFMJi#v3smBaF6(R~Rb2bbXw>wq&zNw|Bk?aidf4(pJXyo|ys9gxUhhHJX zf|pQK5eEub(+24$(}eAUWtK0*mSkS2{Pk7DIDLQW##`g`t3KoC(Sl@W7fZ(H_VTyA zf^2nA4;zMY1iivTX-0DpX`^MRvxu9wbl4K8cPf+hEn}M57m+oa)S7{kl_HG{pKApd zZx>fQ`|WpX|JVi=vTgG_R{07~xKWgBQl_(VQ@ED^aI&w7w-b}U@E4y8(kne#)i46@ z5!Ok1`En;SslB_m+rT7q@iHiDVb@mYfyXJ-U>S*WwA8!(R&^|tPTA9iwIEhTg|8a& zolui=)s(r1lrgaky&zdM!l=H_Ms zz$zkM?5zf9-*|?F4i?WXK(J7eGObQ{A?M#aIQLY%h&xuGWk!gbi#gFZ8sHr2p=PeO z2-=0fwyxg$5JYaibQ&^YE`UEvNWrA08X&PyLD#|LX_QOjo4E1*h!c;QQqB{2Y!jPw zC8NTKctguZK~@g{xR-HEvSvKVK6FhE>s%=+{V^H!^yb;3x6(=5%23D<#p97GehMmveck00%m2?0XGmr8RIM9SSb9<&@pSx~I>Rio*6TtVPt;0Ef3Z*Cw>J;&~d|MAy*63n(zG zRH`@8UFeHe_uLz^*wfq1_r|k@G@Z#|`;yTC0jFG^zGx|kafX;98#M!#X)*}}-x-LQ zxftYH`M%X#@;roVDPs7*wG?rtX2JN{#3k;U`1nYS=#94c^3iO2Os3^*72TfL5HU(- zPl{%+MXqcn6#3m>OZ7Ryu-~5XcMnh+x~W#;D)mN4tJ#KHLg$MGI#%)k!pR=lpY(J+ z-Z)@LM`3Wf~bv#FLbjM*sJgiUN641m`=AC$8otJ8VX{|5v4VNb!b~~$}3(h zL`Y%(WT`58f>n0Tmk&|g<-ZEW5Z3^WXupmN`60mT`KO)-aID(8`)=h>j}_qMTFD2x zmG+8}5`xHA=6FBRKJ6DV#Qd6>TH+e&KX6cK+<}E`ac7SCX(brsZlKqjc}l3T;LGEI z@Vd4st+aLA=z98}mUEVpwTXbmn0?}ru|r}#UO+@p$`+1c&5U|5a&riz=SEUmbU>W$ zF;>hW7<0e3jg63GKUDzGRZ&sBiD4jGywh}E;p_`fu(EK)i&WmnWvAc~BYoq%7DG04 zrVIWi91|gJbkFO_pJh)g!=%$YR>l(t;ir-P(tyH5cX-3_IRYzM6`V-lsb&nRHF6OXCULSY8wW^ix)$P3&i ztTw#g&LPP3&}W_^XqFyN9yNoMbAvs4L4t3tmDRb`d!?nhpPX2zie%8YNb0>3<%xD? z(j*jih>=1~f2`M_nv$wI-;`qlikDAztbuac{oaLbGG;S`WX-n!Gd_ZVY;JEqu_x+5 zig6;|Mdkfe@^IQ&I>;c_zi96(uTL!UF;?+V4!Xy8wZR4;6jTj#ddrBG`Or6e^bPaa z*o}E@-)DK#0LH~`(v7f^`XvHjS~f^er}VGh=QfRb0Ac=II#hLW3}%Izs|OHA47^$? zHicg*f0K6qU{f%ap%u^2+7Lte6&mhPyVTZ%FpXj2T=15e6K&^DIUg)t&{$eIb8+wF zV5{3(v5(|ruf^W0fGf|(u{O5O+cn;LJSp4I?CiKw(k(_Tsl3ECw$ZHqn@?ipcG{OG z0pa-y-&w5Ibg%L>>Hc^vp20uWbku&FPKN{h{H{mBYdjz!`QwYM4{yT5t#Z|3d}W!w zIJHO~H|yP`QMp1AxZ0J0>$$Pqen8wR#DK*OJ+zwq=c^gz!~F`Acwa!*^yp3Q2QbT_ zC(cj01-@tXlPGk4nYKM!Y_~-G|K_(tOcu|)UJEOktd3;((EoA1k$y+gvEy#+QFyt6 zP`{J9M}qHje6a&@!K8zcGnG5jTP9*Ps%pxjA}b-p)VHOMkPw~}!CV+#l)$hGV{9`0 zjdkA6CJtP*q>JIMn}sp4wuGb%&YsKrKCOYzY)u|lkQY7ldsnsR#c=%FW9#8UFD zG?ky2u{2`PEXXoGHw1&Tg-bbh%g~_OsleIFl{XnH6`VVBMQ&zU_%k7%Ao&A#;5Xs( zTVgGiVq>vPMq=J|77}^x5z-aa6_B<1&g(MTpyu?9K6LXnFlA zxvbJqT$MkjhClVIQ%l26y#08F-h&zddrSAg@E>SZC@Ao(dlzvO)`Uqm#`}izC%FBc zQA=F#_D=P71;pel_) zeUVvc#ElBmZ%{s(mgv2j!8O->)dIG9|Bll@u_jAQ{loK2!iWz`q=Y51(^+sMV}TG72t z%1Ef>fNK3B+5+CXwq3F>P;P=LA*~9xzI(cb z21xPv^-;jy^fVArCJ!pGau-=(8e2yUyzCIz<=+|jFz0c7FT28&(0n5xqc9MeZ$`zp zT-&Ie)KDXv^)3N`AMB?#@!$DFx zZw{-$$Fsukq_W)yZQ8=LgPQH~vuv+56fMOq9<2d(wMlN}I^YHrzsWIlH>>lHlR^jp z6jg)igtNN3a(c_A&+-iOK=tE+)4%q;xFK-!{DFNIN)``AuQuG>w{>gZftTm-6ux6o ze4(-VIGkpbftclU``hpN#3J~tQhmq%-1OpXFKJtyc3S3ImZYc7~x%{FxvwCcLVF#Dd@T>2+W;{&nqhJNVD%#o*45Fo>DP`FlF+zR$X z!^VAu!Lfjshd9jNN`dzhsNJL<=9H*&{FF2QuM5 z=7#(a<16%cSPM1= z*!~AY(ZA8eV_{F$idUE&3U>>sj{8bYPV$HUV_?l9vUa1_(~qFHYg|=KKf(4}tT2}h zKKgusRzuCH$Waz-f=#I(_9*|Pq@x;U_5GUOMIA%O+uUd3g}yPXi&RV%6jt9Zgk#|o zQrQFi27L8JOGFit@5c1Z%qvF%$$a69r0p~f1=On(cJe+oQoSBklubGxU+}Uc5t(d^5fc z$oAJ|gL`Du9yaA6>(N-Ne$2tj*Ri0HuZNx`(kRLM-3-W?kc{Fh5qD;%oFXS%}#8WwM6&!{vAi|6jg2!eV`&!4fJqxwj>J*iylI zKV}{C*j4wt02cf*U`HA4Nv$b#DqFDmIy-fjIhYcdOD}o4={$JT;axLH;7yB;Gh=z- zU=vv8nT!m~OP_&9bKQ{I)-OA*3fAkdC$hY&pLCbGFZU=cclXqP{PR)GwP@O3xjWd0 zpBy1zW-&%KT(M7G_lF&!KLgT^xM}qh`XPDK<$X)aN)uPByhi?$TajBf7DI_Nu%A4& z7M8G-Yz;`jGi)Bei9VM8JDXoW!CGF@@aPbDuQRKzOV9)S`|ipo{ZVQn$ZiZR71HbY z_rvj-{|p!zKb+xfS1d|Vb7^UpftK|4Bo(J4E3>~zWLiQaRcWrVp7SeQ&F#U1I)7R?>|aESaLFmm#rKFxKN zo!^O#EYo+6_p|B$cf9}qKi*H|g@;%r`EO{+f4ZUd`S%2B(c_Shc+WHS42y*ul6-Co3TeMPwtFS`$JV9c;@6uq1{n%(MQ13AU@fi-(6h-@S<3D{6Az< z#rLkui;Gh+1&X|8W(AKUf2%Zh@PpN@+GcOda{_by?GX5yjk`q$cUD)s1OvY-Yhbgx zeAQdva@;Cv+0{LczRBpF6nitG=h@BBylcQ`z!S8sn6ie>@4ty`?_1VhB&C87z!rMYlJI}G>#35JlKmWses>ANr9yKP9TN*S_@UQ*1jBU|i9|GP~@`$B7d5dIQNJ66=Jw zojs}W{mwI5=7NpwF>qbpC9xd@kNEjsdl2sT7asQn8|`nRxV)>ZEGi7PC^fK4dG`Q% zam>jVJA|WlxpdK-;2SzVS*Pr**S8vM2K8jh(cQC^3J1)t{?Vcux5Pw2P{uFKM!j4D$cnpLVzcA*9c9+y~4*Y_? zZg%+YzKJs&y1#bE>h|uEtU$ncO*jj+>jWlZ!CR=lr+;KO`cj4-@(bE*ccZ6{f}il9 zwk7O1_|IpDd?}AQ3*YZh=KtSogx=JD^BS3=^5!BDZ6_C>95isvzMK}jd-czVLXLLW zN$l9}JNJgUB}vwd*!|Wz06~~6I7t8c0dNjX7D{$+@o@pL&B@Qs?rzezKR^f@li`x| zdz)*8j?T$rB2jVuJ16bw9bkRF-7jX^v09etVAu8Z9e3{t2&dUO#|$GR&+L996m-9C zZ#3LJH!Hkg+t+afqyPFqU+$ZK{eZWfcO&_?#5IU|l7aON<$3x$2nNGB&x0jD%;@#q z!J8G{uVw1`rzIRe0iOA$R@cFuqYI*s8Iq;d*B-myzi8S9!t`h-ZOW6~Zybi=YFU1# z-P<)5^@KHJQDwko_c9D~fV2Lu9{>)5*P&wfp+dn^-@zW=g*UUk0ZV?HZq2%LIa)Nq zy*|8x?@;=nWVXk!7PRvVq*ZYe{8TC>)HM^O{`U;1J_r;ACbn)Oi; zDwBa1tt*o^%CNvGBrO4JjcJ#m-w*a)dY=giE5*+bv|RFib*cPA`Aj)AV=t#}Qm?81 zfsAL;BWDY#d#1KkdHh$dxX^hK~rt1=^`yJQ&t`~)8dU~vg^Ue zfIpYb)PH)VK@p{6;)Ox4pQ$VZ6|_uvT(VF>!?`ZdX_Ee<;%dm+9MrFrT%CAN^-}Ru zr)WdY+P6#uY~l^qYo=eha!dzNtb|~%Qgjk=d}uI`@oKcbW#M7 zP;hy8-d*j&t7bnHz_Rxkf=Ge~VIdzb1R$^uwV26*}`&xeb^g_qT zAl_*>F(Y%fw6J{Z^wx3vUAU}@0<+(BA5g*S+Mo}b2=ZB(g}e+1oF~;)(FY7RXt_Sw$8_C(24=DX zZq=~Kk2vU2L~Zus@*d4y^~uVqpeGJ86fVn8?aU$lUw`%wHpr^*be%IZn*#s!T*MRv z1g73DVA`Y%sOfT0+8am(-%E-38_2+e@O zDwoR4X<(tHSRnGNbtt%arb9!nN^Wpc0H%=%R4t=ur4U!kh-xl2 zu3q)YX9I{X)4Rw5iN$dqkg#vYRgz(0uVt*=DmFo!Al1DFvBOqDgTw&Rr_FEyb}8R- znp_k|mRMGl{`*MRL8+;41e!YLHc+n-2YQ9&8T#HUqnWMX@MUBcN(1TUTSGU;jgnmh z^)z){cBef2Z->9|UXsnHPe3ox04n%)0lB{`Ka&IH0NJJs5^uDw*;vkG+T?#J76#jo z6mkPfzPhaOuH^P2F=#$;5*Dbn>S@^X3snM<@@$ALRep5=LM>x(HyM9aL@@7xbS=AX z>=*9D$L*QncJ0eoPMXsl1v;{iiorX3bG5lNHHGk;`71x{K~Vuzu7;q_cbKz+Bl7Yn z8JQ@Ok*iTeKp21>mj-M8W=NAr$A(UC#PX- zVnDdswVq_kY)p`{;4Zr~avb;P75&D1 z-ZC`btAIcs8x`GOgg{s3r^umfbb`soG_bg-H(j#+>2mKTmb(GRzxWu}WqlKZ#b~^morDbm z%jBS*F&G?~7xDsDsWIf;WSyCf%H^**9`4As1sVz&5cxEmfa!SmeWEZ0_&BBCE8R_tOBpWh!@8sm$a9m!<&lkO^QO{qARF`I1Cy?xs z42vzDC+34${UnBohO-dL*%}D1XM1!%JP9GGPlpCL()(RWGNMw3mx<}xOdtjE6@OdFt&?%GZXo~%ONUk!hGq3K1O{a`kxK%3&2wA0eaNNOu`2plh zDUApuI06fX=%nESUGa#tPwjI&iIQ#6BCd94Ee8wM^_ozcnT)Q3HT_~wQ zfdZV2c-Mh4Y{N|+&D_Npo1An5n%ro(7Ud`NmU!3|sOMvLt^_X!V?p};c-$WH-O&2qrQDMW4B}5K|CLoi0m!5FX@)z)rD7t6J&p3x? z+%CH4l_?v_H6&9?+@nvhF5ovz4qfBmY+9;JJr>@jV^Y=R9+4cB5~-hoD2o@p#|JqS z?s51za}&)wD!S2>vakou?ndmAkJYC^2Q{8Y8rLun2rxy9T#ePqtRWym5^`8GhPta1 z(Cy5I{5H0KSWUOVailONIo5bwLsnz5_+3w|@}m5Ld->)nH50P7=VhH*-LX|QkY9ZU ztYH_#sW2{dNk!Kbw0>_|SJGAT8Zkizov<5x%`b1d%8c!IRU3@_M+N1-IV%4eVm(zb z?F}YUVLl*e^%kEMGPDjHw>8nFigA23G;i*!ho-8lyFzlNKGI%eq*;}5=AGczvZdXoO zh-3mT*CsmQY8(K>#}6>DCnvURC^OE5>4xC2s_iF%DR7hNThE=WTp5eifn<4Q%Jh7= zLYV_?eMTd6a?+x%8yZ1%Qn8j$K*N5h

ISizX@(G9OvZ*WV`kGqq@%PZ;k2_AE>gQYT6t>rOMa=6*LKsM|6>rn>sOpKOQd94nB|iW zmHGD5)kX3?-xOH87Oyf*9+IA`wFZ)LvqFhaW}pu3!7m!}7y;lx4AX9}HjC6$Vu9qT zKHnQRwZl#lXxynnFjK9&BNn!wqgeRl1p3nrth!Q&s{nG!4T9F5`z2d-B$@wdcu|fC z`#xN0D05IaNZWF4p18`)`)(DyA*y@^S*Ipzy}17-Vi3SpOzc2e&my$V#&1gHksJ83 zL;G5ZS@lcS-=@C5#fv@~!=t->SM^*n#@kBB_6EF%WqDtS@jAZe`Tk1;CWU;bggkUc zBGNnDvyJF++izM0c}~HPuGO>#+TeZcBZ;*uo}9`_K6-r3S3MMefj6wn9}+$ZtJaYB zL0)WlbV@n*U>H(YDSmwlE!Uh%#cc>v+n+Bf<%63Rtn~0Ad1ah^OO^QWQW&)ncr8Od z5)Be?(QcLt=?o9Rhl5sq6XxQ$4uxOl<%qOuV{xVt@qtPX207Dk^-4;W9GA}eBDkL> z_!|7se7nFVuu*B=DY(D-&-pHh1{nC``so7cI+nB^+&%^w`@* zJ8yQ@7bxK^;pFd@40>+>_M3Lqq?$v9A_(0=_E4D@Tm&6Fhfih#H%F!=!(D_xmz}m| zDZ(E2?$)>I60Rj7N;Xygs)Y_v_m5D2tF9_IBV0*3dp&JQasZp! z?b9kxpN9+ef&7O16|>wdFoM}vH$6mYb5Iz{lMlIn;RZB_3`DueS?_f|eF9LzVG2-0 zZ_Iih3FQ|#uUfu2w>%0GrWG&u+UWGq!KedAE*Xs;kZ5MYjgld{+7z6r1u@KY9w)Db zjZ<=92CaPWew-JQy-~uYTMzw4Df|KzDZ1K`uv{eR3m=ALKaY&xMXc~4k2DJvs_Hp+ z@^Hq~OXHpR#~mdSfOd$}c}9xV$t_Z>KUo3yBwJF8vwGjKkH2Vn(Iat>}4=pa_iI>d2peW*m!m%>bc)Wv_FGS|-FA z(PsA|Qk9U;Uzy-U{scMuog|VMsbwlK`+p2<|LL&R8Xi5a^XbMx@2w4b?$*^XPUV6d zSeAww?{H&ZCoMIgwm74yBHY!}W#CX%Y%}MIKP#LKbUHeGdpkv|WFH zFeIVjnwUe7xQuf06%J0m2eFtXW!+yO9n`G?Q!`q@aj~2|c+AN8UU9z*8N=93-Vga@ zj2Ca&5Jas-KV}?InR7#rTptLx6Zg=4=)GBjQ1 zE-a!?hjoSyNX77uE6Sb+mS!2T0bz{d{|HGq_PF0VvJ}Ah&SE}&e$PYuuo~C41k4qC z0wkz(5feS)_d~dB1Q*|>de!Xg3+`5$#n(xNb27-}WOVQtrkrO|j*&U_HniPEww?dz zSNv}wvgt$Sy7;`qp}3@wq)EubV%qmv6<0COE#J%r@$r2QPFzynr+tFXF2zMx2DrXs z!@8SQnkPVPW9ZtCfy!!q`m2fl;7yoYp9;&H19L3Wwv%iyNT`Y`38@EIgEO6zrUo}V zn_bASE6FR|&7bG~&f*YZ5EqIpQibOUe0Cj?Cqc(AM+ns9|Ecte@}0!|u7G^~I7j7L&q!})jY z*^aUbtr>U$TaR*@fTV($Bcolr;p31&LG>NYiaK~|`MPJxeoFlEO1z>-GZB-)P#wij# z>Ykpo|6!=TQSB9njD*-#6sugo%TQb@xW{SF$2tY<2yFtST+C@p(xE)3G|PF9se(4& z_uI#^OTbaa_P1`u!1#bT&SJ*87C^grLor214Qt6iUCy0~@c-dYob*g@!1nuIK<;-R zoHY;3D*U~H1#dfHH|#aLa?zD^<^FFS-h7` zD|xeL)9U@w! zyqrqP(SFeA9gOD9Q_6TH5UThpIlu&vC?(5$w_Y{TZ}A^Cd5z)5fqHK2RAWCtL4 z|Ce^x^f)tLT;Abukg6^fq64vkht^4gk8)1K_MfyXx)=Xvh#g;^D+sd%V-v?|P)Jw| z2v?oMYarL=Y*`fH{n%sGT4lt(C$V+_==W*Rl8XX1e;)EFl`&}lX}N#P>RxqG?VzzJ zjKiu++V>Z%NDe5)WI`qUgLQ*Y;jibvLcW-xHMrLm4+o{@DL_FRrnnO;KD&>{lkhbg zd<;DhWlu(u+)@*+prWh9-3Ri3F2DVkbY+(FgR>1ra$T29ws>{dL8zb*|3#|~M6lz% zkYln2?4KOP(_Ty8-?P}DpDtP7ZF{xE%)SN6;85;4T{;|O!C_<)_UAq9aKlQ$=YvxB zLCwupX7(ZS4glyC)ZTB8hp&YXu;SzoSA19Yo8VYaG~O4fZ=L?#@+AG2r#C3`O$xjv zqrrrnOPRS0;NP%+No@D52v1rie!hWESiD}9IC7oHp;&ljJl^)xjkc7fnD5!)0fCrq zy|hiXh+A)(mlb*|ZRtlS@cpsQSnI||xdDMoqB!#q zxa~-sia@;#O6(Ju=ViolnmJ8SvcDg!t5s)(({-G&DI;Z z@7EOe`dcV+I2e=SbT3=(C7nFp=Hn~><*4!0wvU}nKwa2%Vu|3gB z4s7ueMFV}Fi>=!1w=|9E<)p3`3fX#;gbT!*cjVYPW2ovx^`M_W$>U=?jxa#ML!a2 zmmn6tcBPi`U!Ngm_Lzai| zg^y7D1qm@{7}%Gk%m|z%B`>>&Eeg^8Kla`_EXu8I9~MLrK}Ap+2?r1uNs&$wq!p1) zB}G8Mkp>9~r5w5yr6i?68l+)pq(x$+W2hm2>vqe2-o2madAG;$9mn_A`=7|LX5H&v z>snWw=Xu2<8LAHnP5O`ud7@(ydr-jHzAp|a zMhk_h)c_Q&0oZ_##_HU)AE~fo=VIRCC7A7r1I?L_(Dru{p6ppb_1WW zoZDNe_DEw1z$-n1lJ{2*SN#S@VifD7yc!-k1N{((Ek4QJpT$MvP>^lQJs+z4&0Ze2 zQUw%XmATx&p(BAOCSH*bSb6yRx_UN9?BalP@DK3O`&A#(OwgyOIn?9I707a{ug)QKP0Q0TWJOLt_g~=8eys#wd zate6}tnwK<DL~*lnO25Byj)7@?Add;RCLpAwOVcI2FV856B!OBD_D><3LlbF{XTlnS zbcMsxkv!VK*=Mr5A_BT>eMGk*=sDzeEtv21ksg5Cr10!C#u?O4``YRX*>rwEhyIHj z2<@I*{0l0_S^$51%vZzEoRn-C6lu#ZZx_aktFvbJnk53GV(dm>JPrbPVNoLEQS%fX zPU80+BUY}?ymuBB<(w%pVTK}=qL50}Qu|GifrQ5=!a+h|@1o>>Ld4B+m>jqruyRFx zstSn4t*b_pQ2kY157F=B3YFA^j8Y0d*;ZLFpWo1iwJ;O3+C;)`{A~OcJijZ}a$~4T zHFiYln+FM}a|E7y+Ia=3JG0`T(l^3LJP`l?aYAZ|oBFQ#0D_?%>we)zD z&&!IH2R-c4NdBMRU8S+{A?yaz5JOG|IvmC|y&FD$S(QhuDIxK`>J^ZTA8bmPgpsCv z(D3OYl=qcY(Da`quUdWSoFJG3%Y%cv;A-&Iy>Kh?!9|rw>gz@fBML3fs&=BvEzZdF z0w}Lve|QySpP|xso7=X=M8#(CeCxt)O0b!!?ndAlVdpAL*+!76uHvN zxC=@MIw^en;dpp-02yHt`H@mB=|y!R(RlU^opcqXl$WDI888T$x6TV1_ZcofaRI>$ zMYoWL*7M|Ciw9zoQx=q>lAw(S2tE4cXyoY4Bk|r;|4a};EFT1kR7@3=`|<3Pdv-?! zX9-y|r{caI_CWjHN^u9?>I!hO`XPP3i?6rpZ?Y>cV1OUE?f)U51=>(@SpqxXyfX{q zC$fK*m^+16bW*t;kZH1_{ZK{)N-)|Ay$`S5)iQ7% zaqP5DywCCj_Eubunssh&3dE*aWFQ8~5v8Bz4L6Q94LOIUN!pd*q+*hMtKWU{$fQy( zR!-$~3JusO2p$#6D+@(1xN#yRV6}YwL?Bs6 z91~ukq0rF!vb*-pt=x#zFW3nX`64X0hsJr@;P*?2#1ls1a}dA*^~lMoKHO!?1$5&t`#pfV>C&T5st{p7m%nJ0N`qK=vzb&zMVKu(09c+lKo9 z#?@$JqI`^|+b0HqJ@@nx=40g3J{b0|9{`Ud-e+};7U0SS<2oq?{)8-v5#G`K!JFQH z@kbc=UolDTUnE%x!&org1ZK_5W4zf0U|?w{(P#VqdLS+(@I9#n1CNhmQ&MP(l3WEp zLH-S=I3Uc%Pc#PPP=I9reuIV~0hC+<(5}KfZPs7&eQN`NZCgP-uZ~x{7w`eB{t83| z0OI$BjK@zL4giLV0jRp;bsS;`u&b?sgr6F@U{v2*03SG+ZYKLnFdJZHw=MsQm0ce6 zeV<6n^v4vqcEFOJt`1)O)wWy0P#gLN!p!4-_jtR^-#i~rT+99wOLrZ5_P^kH0SKC3 zp8XiTrzi&=GJFUAi?cu+T?xLz)MjkR{ulmF0NM<}&d-qxhw_s2W^juSH*N3BW;iE@qbUZFkb_Q(aX^ESL?Pj?Uy}Y zTOZgXh7FeE+5M&jjxE`rm&$+nhhYt1BQ%{f3Ei42nh{qOikMgG6e@N-VpN1=_~xJ>Gm&mK86$fTv^F=lYH%Ip5>En4S2mn+%Orqe-@iTA$NYxJse> zv&4Fl@^}Po=;g5IM*M;`|HI!)82*4(?SS>fulGx#4rWxZjR`*H;ruTl>d#;CLJR@Z zc&k4I&4ERH3e6}-e(@L%{;!R5eE9$RKeOTBH3&XPIRB@2;|>umN_bfQ;r;z-BouYQ zzG>)yOa2--niP63(tJW^esd=fWq~PpW>X0tbE2Xlicjx?<|pOi0pU-Jjjtc(f0e$ zNF(qJq|61!Z^_Ua+KbeiKd$}mUQCDHe39wmpA4B;XfN{S_5bc(Y=%}1OYm*=4_o9p z39*>|fZP9;#pHrsys6aC&EpxLgl>xy>|Z#JP0aBx{>!Qwo`>ivw<6~59)FM&K=ipT zUdJ3WJC6VVzYOrAMjCo%wf6mAAMg}}xLv_&AL@VW2_#j@p`9a) zn7ea40x5KjF>vty=01U5%hC=(aP7~UBv^iim4M{$&T0HB*gxr&-|kNyQ|m&DNFnMJH>dq?uVMpa0@~X~kDo~pvelhxDJPHlt$&)(|NM^{31}6YAAh=kJi;8b ziU*CqThaFX+p2l~ZB_r#!gDP_tC;Zh^zj;aL#y~dWiF0?@oR>EAJH%eT19rgxj#L_ z{~0SE+q%ErNPiu&#s^wO|F-tyH7J8tak($$>hG>1J+z7q+MiU8N1%k#6DON*9$#4h zbfOvldV>Fc!vFrv|MoOoW6&zhhaKxo%bs3{cgopE>S{>UBWYy4r{u@Pt?Soxv1xy_*`MoPt zA2s{Xwd8SNmGEo(a7}<6($2q|Lmipd6=BkFhk)>^0MUOwQh(cV6prB1J!x?J`JZ%U zQRr1QA@VH&-CakyPRi!0{qKzg10#8>QE&a}hDQi6?pQ%X#Id3pTtYPvoIKoo zi!W+^Vmtrn^RuZSes!!y>-X23`qu$!(&VYRK7hY2Ly+brniX$=<9}S#ub$}#s-e|T znKM_Ycij{sC;|qTUm%5<;d27m-EDw?d}Nju1**u8V@x9Fh)@Ik2j?X?1{gMKFZVm5_KLWV>%=ICJ zXrgY)=AQGtEylqCh_O@-P_~()yt9dr7EBHRmB~JUiXjm$L1mghQTMIvx$!;kX2gWP zAW}abb(R8z{enHq;0V;r;C_ArJ0U<){k!?gvq;nfJHn8FurjFqzij)lQzYqFsJonW zs7;9=9VjenKnQ^%kW+Ms6A7Jy*hoU99Kt2wD^VZalFt5su?;^dAEuH1uxiapi>0G;AE1jh}cRa^_XWXMgV#v6Eaxx`9qGa5U8^g?NNJ*JPVXq zlgg`_3Kn%^(({qwF2~+Cd(928zR*zVi)CrfdIB_gHxt*QX62F_aQWWNB6C5{kpoY z2W2OZ)d=?Q8xoU{A!80fSw9EEDSih?{Q?-zQ45_D_8m-|7yu#k`T-h?SEb(#Ai1*> z*Td5SDU!&H*PAp7rt#-{V(;eHLG6p?!9(3bfR8`Gdao0xI7*E@?17kt^FYR0*S%-UcCY&x>wD^2> ztxt*MG%5a-J3ry+gf|OjaQF>?MGrn2AB8+f1oXMV>yxl|h7|xFx@;Y_PY+;9NBgLw z#j=i{yeDws3YZqV9MX5tIW^IFxFUdIE#l`#Jtg6UMBLOM%%yMu=~9fTkkKR%VLbYH z!S&lo1kW88gW>w26@Yqi)6*d^N9p)t{PrLw%}i#K+(AZFd}vp# z?wkeWml{B_>hWp&Xv-Ey zd6Ex3?@?T2AXlQf5PYnLv-+ZDUtUvSv+sT;#EY3a8_s!o6H=G#hwd<*uTDz?^-?81 zFQ4$XoSl1YE5Z~&f?az%a?8KaH3^Xt3}|6vSKyMO)w5M`@L zvwm`*&sWV06}-Xd0nb%D(+~h6+TV*iOXT z4G7_$gIWV1{yR?*%cSyhJWUX!=QP@>qq3GQGYh!HTmJF)ovOy+a$Zh=s;ghp?g5Aj zA!l9ykmXXb&L&VXFDST!JA-i*A6$b75|#@~z#9cbE1#5&oKU1d@Wvgk;ewqFLnKOz z6+qAW{ZCVxxztGs=4@GFhLJA*KO1gq`2sd2Es*P8IpYn9FgkTj)aG7si$7B=p5EzIdi1$nx~>j#s(unhIp9J(Ui(6x)ckPv zxB&Z?GhcJ}?1w=#UNIo`&EiD`J?PoFH>W2k`5I7k2Q&)?J->lsy~C!ztjNQ5Y-4P+ z;ZHErqmG_I3xY+(_evLBzSc8WjKe>7NfGvo-c@v*WQB)H+ZM@>$brCu>~47gW$linwsQ6Im@4>@ z{91XQhIOICxu<6xg7k{_Qgl2nCnZyz_=&Iaa^GS|Bo*D>GqD5iRDZx}K@U?Qiw`un zf<;fi@0ZP}-m=tk|A@ZrQrR(y1-Rq`b9Vz{0bpl-JS$h|L>0~_Cb|tXEziUz(9hc) zSfZjPP4BKjGIbK_qJ6Z@c%$ums^RS716fpH|s4Vn*F~ z2ngr083xg?yVIi!>aE+$nwY|auGa_e;OoT|t?1Gvd z5JN}SdvO@HUV9bpH#~_56=S!tS*z`w&}uqB=-hsmGdG5e8g7vr8;G+7A}0n5F14SQ zHS9g&?dg;H*WAZV*9(S4ZW0hGom)8$xo^R^dI<=z?;QZ+o3enq5V&O}*8MZUeb0g% z>BJ&#u-9i_kxVD}5n71O0kqW8GugrTvzWN6OfvaEs*PdXuSpyc{mT&SQH{N?&oj(dI}>w$3$2yW%Ko-`%+fA^ZCQ zOKy~s!=`+wV&=L{#&f_a=TQLa%fZ6diILpu`c5-!Q*kC)<5yZ;Grad#%YgTw(Nagp z&TR^GJ95SW`!e!&<$q41)?CAdVEqWtIb-lXDI5zm*J?LRw9F|>ZNqz%Vc>6tW$&114h`@olu#5&dC=k(U`?=5~g&M zvH&shQ!v66qAg{nffj`Q5NDzj69r*vExq~YE(?xS0HCyx=$(eEI4>=BSoip}~OrH*=T0%?`t6X{Cs{EE(aq}Z(CUf7)g@@I5P?^ z@6;2PsJ49~VY1LP4o#c#0e`B{JkCtPDY*B^+|8yWGtDuov+{Kk&g-28eib%Rc&E~e zma;z6G2ukZHTdh{(kZmqLQUCM`HMJZ^c0UezkSU*mKMV56MC_)6;@J z9aH7puYyUvye%N6~@x~J1JB$`IqTb0(4>QG_N}#UOY?mn03IOq)d;Zin8@c&Lm-2v%Q+$YuO##QCJ~pMmc|u zXrX$hGw9g3$$p~ji6tWdW}2+Ky;%tgH_fw2^mYf*I+;yqp(L~Vu~zfJDG`TGGoiuJ zQWi~-!I{7|%nXDsPtgBipDlM{6C9esGW{s48D|L6URJdgWjnLSw9rx(iJbN$DUCg` z7>~hrwwf_AP0$MB4>L{35hyFK%M3&zF;~gTwx;(o6K-@DwqU~>2iIw19<>Xq4ZQib zS=gTVcG$G#xm`BrUZNFTywO3`eyAepaa|omO;=8SI1uGK^-9l|MW@Hhd6`wdWm{dC zLM*B6M)4pV=qs2lV2lBUPnH&;wh8{=UBUc~Clm|1r0bRUa$XB2+2(TGN~O?WKj=^8#px#G{g2Uadn)l%tH^3ikYh+1%hJBWk+W`?kCo3nUE@{n-g9 z8$5R|_m}P5*0p??@WIn{CAA>~<~{wD*MODuAkeH#x2f&G;2{r*{hI~p9F4MpwBYqJ zCD!fK4!7oQEU+VbDoH;)NP*wJB-C4_JYB_#RwRM76*0G*DeIgbXJguS7o5eLMmyfO zI|wjQlvU98x0#1sNfG0*`F^)YSYBA2Wg%hF&2l-2)UpR2FlEm2*=;>6X|c~>w!@5L z?b^~_Vc(F)ev?PvUJ~k|Ab)}4auaBq7}cMY;kr!X@C*cbfu)_($3Jp zVq`@Z2llF%heQ;TPOrC4>NC_khjQ)x-Bk32*HFBWgRC6qXi4q7Fwwy?2E>j|t+7lA zi{Ie)&~2sj1>0?}oLPVR!V1*qq+=|1BJGqvlncNFqUhYQMk!-_rtUrp4<$<)Uc$~! zUnn%CRH>^25k2=~WGxVCS3CMTsB7jVUJWLE@}73H`Qc6k9f{p}J`aD6y|_UrO|p66 zLWk|KuGHTm&zd`)cp*&DpTc1bu&3qNILDZqKm)v)=|v@;1VV?o)`RKmM@3YDPx!uR zqT!4wyAr1*9-q*{nx^v_iAi&Wz)UPv^Soj~8%}P=t#(NuJDRxc+rrNV*b`HQkW-5a>Ob!kjLaGP0SUxLV^; zX3E^c&NP^yi@BfwWZ=z$QI+?)6DLk-%we(z2;gH7yp&A6#`kv`=;vCbt}9u5K> zITG_6;Q)iBD=VZF@jf}9Y@s9PRM#$&)r@Zu17^1O_a*@~9c zrh9V36uCw&*e%F4l4EOe(_@v3mQ(GLmPf|4it3ikkl3q!SB_1px5h-;c7R+O)4lJI zMiUE~x37x4!^|~nFJf)u%Dv(-_XNPT!|cQk#>^rfmd!+Fs(LWpdskUGikhi%%sPF= zzM`zSNCDZ1bnU9BDn`rQN*s~_@4SkSn=_!qB61_ACs3}nFspk1dg!E`NAHr@^`uYh zZec)IZ(;}nj4r?;w+eaUKlsf$iHM75nk22W8NJJx{H5R~Vd#%%$^%S+IodC3|7#bA zMSsc|QX+=MLwdTYb>Dw58^pB?*UJM3a1{=t6{0Mc)*+#iW$w3u6CiIn51-+QA2gP6 zP>^pfq;bd}!N_VAJkv21A|)f)Nz6GM-g^_twSIEL{DNq{uKNe2l@m+rpj}RdwaL3c zl}yF4a?*CXcM!06LA-!_U{3D&6YX9r~W0L_*D| z-h<%sd`&>YA$b>@AnF-tA<6HlVez0i{P|lg0@cKZm zfnuH$32YfK_;wu*NX#QYycD@0x9Y$ec5c6Q-Kh#W?TPnV`9okt9#`V#wAKJ%2u#Ej z(Jsai5af4YK+g_$Eqc#Q0*N@qmV%FKF!peSnRr1pE1*~2QI!$ys(kW(#L^k(nq*YW zxU%MtVnr8SFYn$3XDTcChqan1cpE`{DlXb$EMtk}Gcor|?Ab={To_~Wf6lCkbPPr7 zcO1yAIwr;d{-z?5G!`d4W!wdv#)1S?m!rboXwt`8$C8o6TmzhDlS&}@(460a_d?gq zzS8RSh%yss9i(+QBcvf;6^7)Bv^39In-ON7AQu$3ACo)bn%FeEtJA8kWA%U~h^dxg zg1w9*LfUhqA@s^QJ2&M#_W?d_dfS00`ia6mJ^5fk$uC&3R&1AuMnR`Y8XTugDK6i2 zwq+d>r5nR_9k?goI3xT%JcAhyYx%J8>fS&Mp1-Noh&kXy=QNxMS9SI%jP+t3G_9u~dL8z^Cqahp-LDKa6q!&SCr-S|HXM5)@QM@se zuyu$&zL{Lc(z=xq&1SiJc0o#kN(CSIqg=@gNfqKSid$|uCPVsi zGVw`C{j=O4{C@0s3~-=e^o&u|Y^K|_&`Z<1IpK<#ufMR7%%$EEax~|jr;}d~g(rT7 z?x83;>oIxvjTY}0&*d`lv6FAZyPY+gL)4cz##(t=(mUytJ5=4DJr0iR1kF08-@q51 zw}iA>40&WB>7sl1%sv;oXi;Q4yxg~qjC|Y3hW(VM!y~s8R`=$2&I1;sJ%4ctQ?M~V1QEmc^fEPpAl|E-E!&lU<;KWf^zi*e@( zXp{`KabrnJ`<`r;2^x&2nS3WvjQFHsO3Tbk)?h>8 z^)QnWV;c=f`X-q4-nmP{7&`;fwGSfRmWG?!)q-6$G-ztsNLm?R(0budV#roeXCo3xQPNE8QL6GPpupJQeEnpKFWA4#{s=V|L?-2=B65<qHhASrS+4$K8evlc*?6ckPj52|82QwjmPNf)xfFt>--wxTE=FuIKZ| zVcFsKVojknbs?_PR};P+f&)Mhtf*%~*Q@Q~jAIkoLoI=ekKr7#@DP*FGr(PH+*Q0e zs59<>xpUG&usFU1o#b&Sa_;s_G|6HN4=pp;=u}CC&hh0PPNVR-NfE#&5HV1+xzvG- zY`3qR2kFr17=arKIjj~%VkoQLa*xm3NK@ibW)Lt{qs+Tjj^r{GgMu!zC-)U zEh0=qj6fkobkp-gwrbDk8fo!ulcDukbiG-;tqdhik>5)^&$PA5wMboAJ2!c$JGn^X zyxGlygz)egQr(1=1XGLchh6cJZ+8mg$Kk-cZ$30T5JcP2nlmH95woKT-eDQl?P25E zu_-WR6J23eM)Z@pd#n>yWs%br987X=RvepzTfc?t?>SYPPgL_cz>~c3`q1{>?4Asp zVJJEI*$y|20>v5LaYfB*3%Vd}Fu!nTxfhJ4H&gI6ySrt!V#;ZvqPTEnd$=v+d4h!j zi(N?Qf;6_X&G{jDz3RGN%z|+NpkRroTbIwJI;$1P=Id75(XtbWjpcaCA>jc?!D{>J z`>n<+Iw~S-4az*W0}qyMTb5bxscxX~Lw;5uP-G(y1Mfoso5+hrAicZcQcHOadv4|>|81|mtr z!+F$CX!269Eoj+y@GY3c;tT<4gm13)2Qe8#?Q2slZ&#w{p6! z|6pIR!2g)qzW`&tak38SA9|wbc}u=UI7=>pyJG0Wz3Ab#Kr?|LJw6vx<-7;DB~$wH zUfDof4GzfEBqFgwtV}I5P6K^#CuXE?UU{|$kQk$V6aGe`6K^d7DP)OH5oPhHlDQd< z7=b%&buGRWlH7t~=eUBtrX>13Yn)v_I(Nr0O;xX)5znViIY^1p=a$t3;|eM#JIrJW zimkS5LZ@H#gld37z@nM931PO&Z*#`9ygk+@GI7vg|Y*wjM`JbCsA`^%R_s6vkIht+s%Pjm4v-Uf} zChjM#1)34Plzh6piHOEEE*{G@@>J|II{Vg3IQg6I6JetII#4ejd7j;^-!9s{ZDd|g zuXZ|Mp3CZDck#yTp+{MIsdCl`4AywYPc!PW2KGG7MW8+*`N>I4 zviRHKll#QE_Sv(he6zLwUN|`%^SeR%M1)RE^dvH~E!2-(Z0V*&FQ43@6}7o~z|^wk z7�&r*dSJ-%vsIgs2ocp78t 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

}-e$5m{t3|?9dE8jPCw0h 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

bP*)V;B# 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

DlPZ{WVQ&Xan{s1I}vbRh>X!1Wt1 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 SM|TeV+i7gR?TL|7=>Gt1Bh+93 literal 0 HcmV?d00001 diff --git a/examples/dns/images/zipkin-ui.png b/examples/dns/images/zipkin-ui.png new file mode 100644 index 0000000000000000000000000000000000000000..8f75bbd01e240d22e5da393e63dc293378d54107 GIT binary patch literal 145891 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�p2N0pN@ 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" + }, + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "bugs": { + "url": "https://github.com/open-telemetry/opentelemetry-js/issues" + }, + "dependencies": { + "@opentelemetry/core": "^0.1.0", + "@opentelemetry/exporter-jaeger": "^0.1.0", + "@opentelemetry/exporter-zipkin": "^0.1.0", + "@opentelemetry/node": "^0.1.0", + "@opentelemetry/plugin-dns": "^0.1.0", + "@opentelemetry/tracing": "^0.1.0" + }, + "homepage": "https://github.com/open-telemetry/opentelemetry-js#readme", + "devDependencies": { + "cross-env": "^6.0.3" + } +} diff --git a/examples/dns/setup.js b/examples/dns/setup.js new file mode 100644 index 0000000000..26da571236 --- /dev/null +++ b/examples/dns/setup.js @@ -0,0 +1,41 @@ +'use strict'; + +const opentelemetry = require('@opentelemetry/core'); +const { NodeTracer } = require('@opentelemetry/node'); +const { SimpleSpanProcessor } = require('@opentelemetry/tracing'); +const { JaegerExporter } = require('@opentelemetry/exporter-jaeger'); +const { ZipkinExporter } = require('@opentelemetry/exporter-zipkin'); +const EXPORTER = process.env.EXPORTER || ''; + +function setupTracerAndExporters(service) { + const tracer = new NodeTracer({ +      plugins: { +          dns: { +            enabled: true, +            path: '@opentelemetry/plugin-dns', + // Avoid dns lookup loop with http zipkin calls + ignoreHostnames: ['localhost'] +        } +      } +  }); + + let exporter; + if (EXPORTER.toLowerCase().startsWith('z')) { + exporter = new ZipkinExporter({ + serviceName: service, + }); + } else { + exporter = new JaegerExporter({ + serviceName: service, + // The default flush interval is 5 seconds. + flushInterval: 2000 + }); + } + + tracer.addSpanProcessor(new SimpleSpanProcessor(exporter)); + + // Initialize the OpenTelemetry APIs to use the BasicTracer bindings + opentelemetry.initGlobalTracer(tracer); +} + +exports.setupTracerAndExporters = setupTracerAndExporters; diff --git a/packages/opentelemetry-plugin-dns/.npmignore b/packages/opentelemetry-plugin-dns/.npmignore new file mode 100644 index 0000000000..9505ba9450 --- /dev/null +++ b/packages/opentelemetry-plugin-dns/.npmignore @@ -0,0 +1,4 @@ +/bin +/coverage +/doc +/test diff --git a/packages/opentelemetry-plugin-dns/LICENSE b/packages/opentelemetry-plugin-dns/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/packages/opentelemetry-plugin-dns/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/packages/opentelemetry-plugin-dns/README.md b/packages/opentelemetry-plugin-dns/README.md new file mode 100644 index 0000000000..6f0c28432c --- /dev/null +++ b/packages/opentelemetry-plugin-dns/README.md @@ -0,0 +1,59 @@ +# OpenTelemetry DNS Instrumentation for Node.js +[![Gitter chat][gitter-image]][gitter-url] +[![dependencies][dependencies-image]][dependencies-url] +[![devDependencies][devDependencies-image]][devDependencies-url] +[![Apache License][license-image]][license-image] + +This module provides automatic instrumentation for [`dns`](http://nodejs.org/dist/latest/docs/api/dns.html). + +For automatic instrumentation see the +[@opentelemetry/node](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-node) package. + +## Installation + +```bash +npm install --save @opentelemetry/plugin-dns +``` + +## Usage + +```js +const { NodeTracer } = require('@opentelemetry/node'); + +const tracer = new NodeTracer({ + plugins: { + dns: { + enabled: true, + // You may use a package name or absolute path to the file. + path: '@opentelemetry/plugin-dns', + // dns plugin options + } + } +}); +``` + +### Dns Plugin Options + +Dns plugin has currently one option. You can set the following: + +| Options | Type | Description | +| ------- | ---- | ----------- | +| [`ignoreHostnames`](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-plugin-dns/src/types.ts#L98) | `IgnoreMatcher[]` | Dns plugin will not trace all requests that match hostnames | + +## Useful links +- For more information on OpenTelemetry, visit: +- For more about OpenTelemetry JavaScript: +- For help or feedback on this project, join us on [gitter][gitter-url] + +## License + +Apache 2.0 - See [LICENSE][license-url] for more information. + +[gitter-image]: https://badges.gitter.im/open-telemetry/opentelemetry-js.svg +[gitter-url]: https://gitter.im/open-telemetry/opentelemetry-node?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge +[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/master/LICENSE +[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat +[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-plugin-dns +[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-plugin-dns +[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-plugin-dns +[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-plugin-dns&type=dev diff --git a/packages/opentelemetry-plugin-dns/package.json b/packages/opentelemetry-plugin-dns/package.json new file mode 100644 index 0000000000..9f7aa02b1c --- /dev/null +++ b/packages/opentelemetry-plugin-dns/package.json @@ -0,0 +1,66 @@ +{ + "name": "@opentelemetry/plugin-dns", + "version": "0.1.0", + "description": "OpenTelemetry dns automatic instrumentation package.", + "private": true, + "main": "build/src/index.js", + "types": "build/src/index.d.ts", + "repository": "open-telemetry/opentelemetry-js", + "scripts": { + "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.ts'", + "tdd": "yarn test -- --watch-extensions ts --watch", + "clean": "rimraf build/*", + "check": "gts check", + "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", + "compile": "tsc -p .", + "fix": "gts fix" + }, + "keywords": [ + "opentelemetry", + "dns", + "nodejs", + "tracing", + "profiling", + "plugin" + ], + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "engines": { + "node": ">=8.0.0" + }, + "files": [ + "build/src/**/*.js", + "build/src/**/*.d.ts", + "doc", + "LICENSE", + "README.md" + ], + "publishConfig": { + "access": "public" + }, + "devDependencies": { + "@types/mocha": "^5.2.7", + "@types/node": "^12.7.12", + "@types/shimmer": "^1.0.1", + "@types/sinon": "^7.5.0", + "@opentelemetry/tracing": "^0.1.0", + "@opentelemetry/node": "^0.1.0", + "codecov": "^3.6.1", + "gts": "^1.1.0", + "mocha": "^6.2.1", + "nyc": "^14.1.1", + "rimraf": "^3.0.0", + "sinon": "^7.5.0", + "tslint-microsoft-contrib": "^6.2.0", + "tslint-consistent-codestyle": "^1.16.0", + "ts-mocha": "^6.0.0", + "ts-node": "^8.4.1", + "typescript": "^3.6.4" + }, + "dependencies": { + "@opentelemetry/core": "^0.1.0", + "@opentelemetry/types": "^0.1.0", + "semver": "^6.3.0", + "shimmer": "^1.2.1" + } +} diff --git a/packages/opentelemetry-plugin-dns/src/dns.ts b/packages/opentelemetry-plugin-dns/src/dns.ts new file mode 100644 index 0000000000..2046ecb320 --- /dev/null +++ b/packages/opentelemetry-plugin-dns/src/dns.ts @@ -0,0 +1,213 @@ +/*! + * Copyright 2019, OpenTelemetry Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import * as shimmer from 'shimmer'; +import * as semver from 'semver'; +import * as utils from './utils'; +import { BasePlugin } from '@opentelemetry/core'; +import { SpanOptions, SpanKind, Span } from '@opentelemetry/types'; +import { + Dns, + LookupPromiseSignature, + LookupFunction, + LookupFunctionSignature, + LookupCallbackSignature, + DnsPluginConfig, +} from './types'; +import { AttributeNames } from './enums/AttributeNames'; +import { AddressFamily } from './enums/AddressFamily'; +import { LookupAddress } from 'dns'; + +/** + * Dns instrumentation plugin for Opentelemetry + */ +export class DnsPlugin extends BasePlugin { + readonly component: string; + protected _config!: DnsPluginConfig; + + constructor(readonly moduleName: string, readonly version: string) { + super(); + // For now component is equal to moduleName but it can change in the future. + this.component = this.moduleName; + this._config = {}; + } + + /** Patches DNS functions. */ + protected patch() { + this._logger.debug( + 'applying patch to %s@%s', + this.moduleName, + this.version + ); + + shimmer.wrap<{ lookup: LookupFunction }, 'lookup'>( + this._moduleExports, + 'lookup', + // tslint:disable-next-line:no-any + this._getLookup() as any + ); + + // new promise methods in node >= 10.6.0 + // https://nodejs.org/docs/latest/api/dns.html#dns_dnspromises_lookup_hostname_options + if (semver.gte(this.version, '10.6.0')) { + shimmer.wrap( + this._moduleExports.promises, + 'lookup', + // tslint:disable-next-line:no-any + this._getLookup() as any + ); + } + + return this._moduleExports; + } + + /** Unpatches all DNS patched function. */ + protected unpatch(): void { + shimmer.unwrap(this._moduleExports, 'lookup'); + if (semver.gte(this.version, '10.6.0')) { + shimmer.unwrap(this._moduleExports.promises, 'lookup'); + } + } + + /** + * Get the patched lookup function + */ + private _getLookup() { + return (original: (hostname: string, ...args: unknown[]) => void) => { + return this._getPatchLookupFunction(original); + }; + } + + /** + * Creates spans for lookup operations, restoring spans' context if applied. + */ + private _getPatchLookupFunction( + original: (hostname: string, ...args: unknown[]) => void + ) { + this._logger.debug('patch lookup function'); + const plugin = this; + return function patchedLookup( + this: {}, + hostname: string, + ...args: unknown[] + ) { + if ( + utils.isIgnored(hostname, plugin._config.ignoreHostnames, (e: Error) => + plugin._logger.error('caught ignoreHostname error: ', e) + ) + ) { + return original.apply(this, [hostname, ...args]); + } + + const argsCount = args.length; + plugin._logger.debug('wrap lookup callback function and starts span'); + const name = utils.getOperationName('lookup'); + const span = plugin._startDnsSpan(name, { + parent: plugin._tracer.getCurrentSpan() || undefined, + attributes: { + [AttributeNames.PEER_HOSTNAME]: hostname, + }, + }); + + const originalCallback = args[argsCount - 1]; + if (typeof originalCallback === 'function') { + args[argsCount - 1] = plugin._wrapLookupCallback( + originalCallback, + args[argsCount - 2], + span + ); + return plugin._safeExecute(span, () => + // tslint:disable-next-line:no-any + (original as LookupFunctionSignature).apply(this, [ + hostname, + ...args, + ] as any) + ); + } else { + const promise = plugin._safeExecute(span, () => + (original as LookupPromiseSignature).apply(this, [hostname, ...args]) + ); + promise.then( + result => { + utils.setLookupAttributes(span, result as LookupAddress); + span.end(); + }, + (e: NodeJS.ErrnoException) => { + utils.setError(e, span, plugin.version); + span.end(); + } + ); + + return promise; + } + }; + } + + /** + * Start a new span with default attributes and kind + */ + private _startDnsSpan(name: string, options: Omit) { + return this._tracer + .startSpan(name, { ...options, kind: SpanKind.CLIENT }) + .setAttribute(AttributeNames.COMPONENT, this.component); + } + + /** + * Wrap lookup callback function + */ + private _wrapLookupCallback( + original: Function, + options: unknown, + span: Span + ): LookupCallbackSignature { + const plugin = this; + return function wrappedLookupCallback( + this: {}, + err: NodeJS.ErrnoException | null, + address: string | LookupAddress[], + family?: AddressFamily + ): void { + plugin._logger.debug('executing wrapped lookup callback function'); + + if (err !== null) { + utils.setError(err, span, plugin.version); + } else { + utils.setLookupAttributes(span, address, family); + } + + span.end(); + plugin._logger.debug('executing original lookup callback function'); + return original.apply(this, arguments); + }; + } + + /** + * Safely handle "execute" callback + */ + private _safeExecute ReturnType>( + span: Span, + execute: T + ): ReturnType { + try { + return execute(); + } catch (error) { + utils.setError(error, span, this.version); + span.end(); + throw error; + } + } +} +export const plugin = new DnsPlugin('dns', process.versions.node); diff --git a/packages/opentelemetry-plugin-dns/src/enums/AddressFamily.ts b/packages/opentelemetry-plugin-dns/src/enums/AddressFamily.ts new file mode 100644 index 0000000000..1dca88f7fe --- /dev/null +++ b/packages/opentelemetry-plugin-dns/src/enums/AddressFamily.ts @@ -0,0 +1,21 @@ +/*! + * Copyright 2019, OpenTelemetry Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export enum AddressFamily { + IPV4 = 4, + IPV6 = 6, + UNKNOWN = 0, +} diff --git a/packages/opentelemetry-plugin-dns/src/enums/AttributeNames.ts b/packages/opentelemetry-plugin-dns/src/enums/AttributeNames.ts new file mode 100644 index 0000000000..d3ad8b0dcd --- /dev/null +++ b/packages/opentelemetry-plugin-dns/src/enums/AttributeNames.ts @@ -0,0 +1,29 @@ +/*! + * Copyright 2019, OpenTelemetry Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Attributes Names according [OpenTelemetry attributes specs](https://github.com/open-telemetry/opentelemetry-specification/blob/master/specification/data-semantic-conventions.md) + */ +export enum AttributeNames { + COMPONENT = 'component', + PEER_HOSTNAME = 'peer.hostname', + PEER_PORT = 'peer.port', + PEER_SERVICE = 'peer.service', + // NOT ON OFFICIAL SPEC + DNS_ERROR_CODE = 'dns.error_code', + DNS_ERROR_NAME = 'dns.error_name', + DNS_ERROR_MESSAGE = 'dns.error_message', +} diff --git a/packages/opentelemetry-plugin-dns/src/index.ts b/packages/opentelemetry-plugin-dns/src/index.ts new file mode 100644 index 0000000000..f6791e2d0a --- /dev/null +++ b/packages/opentelemetry-plugin-dns/src/index.ts @@ -0,0 +1,18 @@ +/*! + * Copyright 2019, OpenTelemetry Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +export * from './dns'; +export * from './types'; diff --git a/packages/opentelemetry-plugin-dns/src/types.ts b/packages/opentelemetry-plugin-dns/src/types.ts new file mode 100644 index 0000000000..0f84de4f60 --- /dev/null +++ b/packages/opentelemetry-plugin-dns/src/types.ts @@ -0,0 +1,100 @@ +/*! + * Copyright 2019, OpenTelemetry Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import * as dns from 'dns'; +import { PluginConfig } from '@opentelemetry/types'; + +export type Dns = typeof dns; + +export type IgnoreMatcher = string | RegExp | ((url: string) => boolean); + +export type LookupFunction = (( + hostname: string, + family: number, + callback: LookupSimpleCallback +) => void) & + (( + hostname: string, + options: dns.LookupOneOptions, + callback: LookupSimpleCallback + ) => void) & + (( + hostname: string, + options: dns.LookupAllOptions, + callback: ( + err: NodeJS.ErrnoException | null, + addresses: dns.LookupAddress[] + ) => void + ) => void) & + (( + hostname: string, + options: dns.LookupOptions, + callback: ( + err: NodeJS.ErrnoException | null, + address: string | dns.LookupAddress[], + family: number + ) => void + ) => void) & + ((hostname: string, callback: LookupSimpleCallback) => void); + +export type LookupSimpleArgs = [number, LookupSimpleCallback]; +export type LookupOneArgs = [dns.LookupOneOptions, LookupSimpleCallback]; +export type LookupAllArgs = [ + dns.LookupAllOptions, + (err: NodeJS.ErrnoException | null, addresses: dns.LookupAddress[]) => void +]; +export type LookupArgs = [ + dns.LookupOptions, + ( + err: NodeJS.ErrnoException | null, + address: string | dns.LookupAddress[], + family: number + ) => void +]; +export type LookupArgSignature = LookupSimpleArgs & + LookupSimpleCallback & + LookupOneArgs & + LookupAllArgs & + LookupArgs; + +export type LookupFunctionSignature = ( + hostname: string, + args: Array +) => void; +export type LookupPromiseSignature = ( + hostname: string, + ...args: unknown[] +) => Promise; +export type LookupSimpleCallback = ( + err: NodeJS.ErrnoException | null, + address: string, + family: number +) => void; + +export type LookupCallbackSignature = LookupSimpleCallback & + (( + err: NodeJS.ErrnoException | null, + addresses: dns.LookupAddress[] + ) => void) & + (( + err: NodeJS.ErrnoException | null, + address: string | dns.LookupAddress[], + family: number + ) => void); + +export interface DnsPluginConfig extends PluginConfig { + ignoreHostnames?: IgnoreMatcher[]; +} diff --git a/packages/opentelemetry-plugin-dns/src/utils.ts b/packages/opentelemetry-plugin-dns/src/utils.ts new file mode 100644 index 0000000000..d2d1b2ce84 --- /dev/null +++ b/packages/opentelemetry-plugin-dns/src/utils.ts @@ -0,0 +1,211 @@ +/*! + * Copyright 2019, OpenTelemetry Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { Span, CanonicalCode, Status, Attributes } from '@opentelemetry/types'; +import { AttributeNames } from './enums/AttributeNames'; +import { AddressFamily } from './enums/AddressFamily'; +import * as dns from 'dns'; +import { IgnoreMatcher } from './types'; + +/** + * Set error attributes on the span passed in params + * @param err the error that we use for filling the attributes + * @param span the span to be set + * @param nodeVersion the node version + */ +export const setError = ( + err: NodeJS.ErrnoException, + span: Span, + nodeVersion: string +) => { + const { code, message, name } = err; + const attributes = { + [AttributeNames.DNS_ERROR_MESSAGE]: message, + [AttributeNames.DNS_ERROR_NAME]: name, + } as Attributes; + + if (nodeVersion.startsWith('12')) { + attributes[AttributeNames.DNS_ERROR_CODE] = code!; + } + + span.setAttributes(attributes); + const status = parseErrorCode(code); + status.message = message; + span.setStatus(status); +}; + +/** + * Returns the family attribute name to be set on the span + * @param family `4` (ipv4) or `6` (ipv6). `0` means bug. + * @param [index] `4` (ipv4) or `6` (ipv6). `0` means bug. + */ +export const getFamilyAttribute = ( + family: AddressFamily, + index?: number +): string => { + return index ? `peer[${index}].ipv${family}` : `peer.ipv${family}`; +}; + +/** + * Returns the span name + * @param funcName function name that is wrapped (e.g `lookup`) + * @param [service] e.g `http` + */ +export const getOperationName = ( + funcName: string, + service?: string +): string => { + return service ? `dns.${service}/${funcName}` : `dns.${funcName}`; +}; + +export /** + * Parse the error code from DNS response. + * @param code the error code to parse + */ +const parseErrorCode = (code: string | undefined): Status => { + if (!code) { + return { code: CanonicalCode.UNKNOWN }; + } else { + switch (code) { + case dns.BADQUERY: + case dns.BADNAME: + case dns.BADFAMILY: + case dns.BADSTR: + case dns.BADFLAGS: + case dns.BADHINTS: + case dns.FORMERR: + case 'ERR_INVALID_OPT_VALUE': + case 'ERR_INVALID_ARG_TYPE': + case 'ERR_INVALID_ARG_VALUE': + case 'ERR_INVALID_ADDRESS_FAMILY': + case 'ERR_INVALID_CALLBACK': + case 'ERR_INVALID_IP_ADDRESS': + case 'ERR_INVALID_FILE_URL_HOST': + case 'ERR_INVALID_FILE_URL_PATH': + case 'ERR_MISSING_ARGS': + return { code: CanonicalCode.INVALID_ARGUMENT }; + case dns.BADRESP: + case dns.NODATA: + case dns.FILE: + case dns.NOMEM: + case dns.DESTRUCTION: + case dns.NONAME: + case dns.LOADIPHLPAPI: + case dns.ADDRGETNETWORKPARAMS: + return { code: CanonicalCode.INTERNAL }; + case dns.SERVFAIL: + case dns.NOTINITIALIZED: + case dns.CONNREFUSED: + return { code: CanonicalCode.UNAVAILABLE }; + case dns.NOTFOUND: + return { code: CanonicalCode.NOT_FOUND }; + case dns.NOTIMP: + return { code: CanonicalCode.UNIMPLEMENTED }; + case dns.REFUSED: + return { code: CanonicalCode.RESOURCE_EXHAUSTED }; + case dns.CANCELLED: + return { code: CanonicalCode.CANCELLED }; + case dns.TIMEOUT: + return { code: CanonicalCode.DEADLINE_EXCEEDED }; + case dns.EOF: + return { code: CanonicalCode.OUT_OF_RANGE }; + default: + return { code: CanonicalCode.UNKNOWN }; + } + } +}; + +export const setLookupAttributes = ( + span: Span, + address: string | dns.LookupAddress[] | dns.LookupAddress, + family?: number +) => { + const attributes = {} as Attributes; + const isObject = typeof address === 'object'; + let addresses = address; + + if (!isObject) { + addresses = [{ address, family } as dns.LookupAddress]; + } else if (!(addresses instanceof Array)) { + addresses = [ + { + address: (address as dns.LookupAddress).address, + family: (address as dns.LookupAddress).family, + } as dns.LookupAddress, + ]; + } + + addresses.forEach((_, i) => { + const peerAttrFormat = getFamilyAttribute(_.family, i); + attributes[peerAttrFormat] = _.address; + }); + + span.setAttributes(attributes); +}; + +/** + * Check whether the given obj match pattern + * @param constant e.g URL of request + * @param obj obj to inspect + * @param pattern Match pattern + */ +export const satisfiesPattern = ( + constant: string, + pattern: IgnoreMatcher +): boolean => { + if (typeof pattern === 'string') { + return pattern === constant; + } else if (pattern instanceof RegExp) { + return pattern.test(constant); + } else if (typeof pattern === 'function') { + return pattern(constant); + } else { + throw new TypeError('Pattern is in unsupported datatype'); + } +}; + +/** + * Check whether the given dns request is ignored by configuration + * It will not re-throw exceptions from `list` provided by the client + * @param constant e.g URL of request + * @param [list] List of ignore patterns + * @param [onException] callback for doing something when an exception has + * occurred + */ +export const isIgnored = ( + constant: string, + list?: IgnoreMatcher[], + onException?: (error: Error) => void +): boolean => { + if (!list) { + // No ignored urls - trace everything + return false; + } + // Try/catch outside the loop for failing fast + try { + for (const pattern of list) { + if (satisfiesPattern(constant, pattern)) { + return true; + } + } + } catch (e) { + if (onException) { + onException(e); + } + } + + return false; +}; diff --git a/packages/opentelemetry-plugin-dns/test/functionals/dns-disable.test.ts b/packages/opentelemetry-plugin-dns/test/functionals/dns-disable.test.ts new file mode 100644 index 0000000000..c3bd111b53 --- /dev/null +++ b/packages/opentelemetry-plugin-dns/test/functionals/dns-disable.test.ts @@ -0,0 +1,66 @@ +/*! + * Copyright 2019, OpenTelemetry Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { + InMemorySpanExporter, + SimpleSpanProcessor, +} from '@opentelemetry/tracing'; +import * as assert from 'assert'; +import { NoopLogger } from '@opentelemetry/core'; +import { NodeTracer } from '@opentelemetry/node'; +import { plugin } from '../../src/dns'; +import * as sinon from 'sinon'; +import * as dns from 'dns'; + +const memoryExporter = new InMemorySpanExporter(); +const logger = new NoopLogger(); +const tracer = new NodeTracer({ logger }); +tracer.addSpanProcessor(new SimpleSpanProcessor(memoryExporter)); + +describe('DnsPlugin', () => { + before(() => { + plugin.enable(dns, tracer, tracer.logger); + assert.strictEqual(dns.lookup.__wrapped, true); + }); + + beforeEach(() => { + tracer.startSpan = sinon.spy(); + tracer.withSpan = sinon.spy(); + }); + + afterEach(() => { + sinon.restore(); + }); + + describe('unpatch()', () => { + it('should not call tracer methods for creating span', done => { + plugin.disable(); + const hostname = 'localhost'; + + dns.lookup(hostname, (err, address, family) => { + assert.ok(address); + assert.ok(family); + + const spans = memoryExporter.getFinishedSpans(); + assert.strictEqual(spans.length, 0); + + assert.strictEqual(dns.lookup.__wrapped, undefined); + assert.strictEqual((tracer.withSpan as sinon.SinonSpy).called, false); + done(); + }); + }); + }); +}); diff --git a/packages/opentelemetry-plugin-dns/test/functionals/dns-enable.test.ts b/packages/opentelemetry-plugin-dns/test/functionals/dns-enable.test.ts new file mode 100644 index 0000000000..be6fde2d93 --- /dev/null +++ b/packages/opentelemetry-plugin-dns/test/functionals/dns-enable.test.ts @@ -0,0 +1,44 @@ +/*! + * Copyright 2019, OpenTelemetry Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { + InMemorySpanExporter, + SimpleSpanProcessor, +} from '@opentelemetry/tracing'; +import * as assert from 'assert'; +import { NoopLogger } from '@opentelemetry/core'; +import { NodeTracer } from '@opentelemetry/node'; +import { plugin, DnsPlugin } from '../../src/dns'; +import * as dns from 'dns'; + +const memoryExporter = new InMemorySpanExporter(); +const logger = new NoopLogger(); +const tracer = new NodeTracer({ logger }); +tracer.addSpanProcessor(new SimpleSpanProcessor(memoryExporter)); + +describe('DnsPlugin', () => { + before(() => { + plugin.enable(dns, tracer, tracer.logger); + }); + + after(() => { + plugin.disable(); + }); + + it('should return a plugin', () => { + assert.ok(plugin instanceof DnsPlugin); + }); +}); diff --git a/packages/opentelemetry-plugin-dns/test/functionals/utils.test.ts b/packages/opentelemetry-plugin-dns/test/functionals/utils.test.ts new file mode 100644 index 0000000000..8bda076750 --- /dev/null +++ b/packages/opentelemetry-plugin-dns/test/functionals/utils.test.ts @@ -0,0 +1,179 @@ +/*! + * Copyright 2019, OpenTelemetry Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import * as assert from 'assert'; +import * as sinon from 'sinon'; +import { CanonicalCode, SpanKind } from '@opentelemetry/types'; +import { IgnoreMatcher } from '../../src/types'; +import * as utils from '../../src/utils'; +import { Span, BasicTracer } from '@opentelemetry/tracing'; +import { NoopLogger } from '@opentelemetry/core'; +import { AttributeNames } from '../../src/enums/AttributeNames'; + +describe('Utility', () => { + describe('parseResponseStatus()', () => { + it('should return UNKNOWN code by default', () => { + [(undefined as unknown) as string, '', 'DSHKJSAD'].forEach(code => { + const status = utils.parseErrorCode(code); + assert.deepStrictEqual(status, { code: CanonicalCode.UNKNOWN }); + }); + }); + }); + + describe('satisfiesPattern()', () => { + it('string pattern', () => { + const answer1 = utils.satisfiesPattern('localhost', 'localhost'); + assert.strictEqual(answer1, true); + const answer2 = utils.satisfiesPattern('hostname', 'localhost'); + assert.strictEqual(answer2, false); + }); + + it('regex pattern', () => { + const answer1 = utils.satisfiesPattern('LocalHost', /localhost/i); + assert.strictEqual(answer1, true); + const answer2 = utils.satisfiesPattern('Montreal.ca', /montreal.ca/); + assert.strictEqual(answer2, false); + }); + + it('should throw if type is unknown', () => { + try { + utils.satisfiesPattern( + 'google.com', + (true as unknown) as IgnoreMatcher + ); + assert.fail(); + } catch (error) { + assert.strictEqual(error instanceof TypeError, true); + } + }); + + it('function pattern', () => { + const answer1 = utils.satisfiesPattern( + 'montreal.ca', + (url: string) => url === 'montreal.ca' + ); + assert.strictEqual(answer1, true); + const answer2 = utils.satisfiesPattern( + 'montreal.ca', + (url: string) => url !== 'montreal.ca' + ); + assert.strictEqual(answer2, false); + }); + }); + + describe('isIgnored()', () => { + let satisfiesPatternStub: sinon.SinonSpy<[string, IgnoreMatcher], boolean>; + beforeEach(() => { + satisfiesPatternStub = sinon.spy(utils, 'satisfiesPattern'); + }); + + afterEach(() => { + satisfiesPatternStub.restore(); + }); + + it('should call isSatisfyPattern, n match', () => { + const answer1 = utils.isIgnored('localhost', ['test']); + assert.strictEqual(answer1, false); + assert.strictEqual( + (utils.satisfiesPattern as sinon.SinonSpy).callCount, + 1 + ); + }); + + it('should call isSatisfyPattern, match for function', () => { + satisfiesPatternStub.restore(); + const answer1 = utils.isIgnored('api.montreal.ca', [ + url => url.endsWith('montreal.ca'), + ]); + assert.strictEqual(answer1, true); + }); + + it('should not re-throw when function throws an exception', () => { + satisfiesPatternStub.restore(); + const log = new NoopLogger(); + const onException = (e: Error) => { + log.error('error', e); + }; + for (const callback of [undefined, onException]) { + assert.doesNotThrow(() => + utils.isIgnored( + 'test', + [ + url => { + throw new Error('test'); + }, + ], + callback + ) + ); + } + }); + + it('should call onException when function throws an exception', () => { + satisfiesPatternStub.restore(); + const onException = sinon.spy(); + assert.doesNotThrow(() => + utils.isIgnored( + 'test', + [ + url => { + throw new Error('test'); + }, + ], + onException + ) + ); + assert.strictEqual((onException as sinon.SinonSpy).callCount, 1); + }); + + it('should not call isSatisfyPattern', () => { + utils.isIgnored('test', []); + assert.strictEqual( + (utils.satisfiesPattern as sinon.SinonSpy).callCount, + 0 + ); + }); + + it('should return false on empty list', () => { + const answer1 = utils.isIgnored('test', []); + assert.strictEqual(answer1, false); + }); + + it('should not throw and return false when list is undefined', () => { + const answer2 = utils.isIgnored('test', undefined); + assert.strictEqual(answer2, false); + }); + }); + + describe('setError()', () => { + it('should have error attributes', () => { + const errorMessage = 'test error'; + const span = new Span( + new BasicTracer(), + 'test', + { spanId: '', traceId: '' }, + SpanKind.INTERNAL + ); + utils.setError(new Error(errorMessage), span, process.versions.node); + const attributes = span.toReadableSpan().attributes; + assert.strictEqual( + attributes[AttributeNames.DNS_ERROR_MESSAGE], + errorMessage + ); + assert.ok(attributes[AttributeNames.DNS_ERROR_NAME]); + }); + }); +}); diff --git a/packages/opentelemetry-plugin-dns/test/integrations/dns-lookup.test.ts b/packages/opentelemetry-plugin-dns/test/integrations/dns-lookup.test.ts new file mode 100644 index 0000000000..05ba0effb4 --- /dev/null +++ b/packages/opentelemetry-plugin-dns/test/integrations/dns-lookup.test.ts @@ -0,0 +1,221 @@ +/*! + * Copyright 2019, OpenTelemetry Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { + InMemorySpanExporter, + SimpleSpanProcessor, +} from '@opentelemetry/tracing'; +import * as assert from 'assert'; +import { NoopLogger } from '@opentelemetry/core'; +import { NodeTracer } from '@opentelemetry/node'; +import { plugin } from '../../src/dns'; +import * as dns from 'dns'; +import * as utils from '../utils/utils'; +import { assertSpan } from '../utils/assertSpan'; +import { CanonicalCode } from '@opentelemetry/types'; + +const memoryExporter = new InMemorySpanExporter(); +const logger = new NoopLogger(); +const tracer = new NodeTracer({ logger }); +tracer.addSpanProcessor(new SimpleSpanProcessor(memoryExporter)); + +describe('dns.lookup()', () => { + before(function(done) { + // mandatory + if (process.env.CI) { + plugin.enable(dns, tracer, tracer.logger); + done(); + return; + } + + utils.checkInternet(isConnected => { + if (!isConnected) { + this.skip(); + // don't disturbe people + } + done(); + }); + plugin.enable(dns, tracer, tracer.logger); + }); + + afterEach(() => { + memoryExporter.reset(); + }); + + after(() => { + plugin.disable(); + }); + + describe('with family param', () => { + [4, 6].forEach(ipversion => { + it(`should export a valid span with "family" arg to ${ipversion}`, done => { + const hostname = 'google.com'; + dns.lookup(hostname, ipversion, (err, address, family) => { + assert.strictEqual(err, null); + assert.ok(address); + assert.ok(family); + + const spans = memoryExporter.getFinishedSpans(); + const [span] = spans; + assert.strictEqual(spans.length, 1); + assertSpan(span, { addresses: [{ address, family }], hostname }); + done(); + }); + }); + }); + }); + + describe('with no options param', () => { + it('should export a valid span', done => { + const hostname = 'google.com'; + dns.lookup(hostname, (err, address, family) => { + assert.strictEqual(err, null); + assert.ok(address); + assert.ok(family); + + const spans = memoryExporter.getFinishedSpans(); + const [span] = spans; + assert.strictEqual(spans.length, 1); + assertSpan(span, { addresses: [{ address, family }], hostname }); + done(); + }); + }); + + it('should export a valid span with error NOT_FOUND', done => { + const hostname = 'ᚕ'; + dns.lookup(hostname, (err, address, family) => { + assert.ok(err); + + const spans = memoryExporter.getFinishedSpans(); + const [span] = spans; + + assert.strictEqual(spans.length, 1); + assertSpan(span, { + addresses: [{ address, family }], + hostname, + forceStatus: { + code: CanonicalCode.NOT_FOUND, + message: err!.message, + }, + }); + done(); + }); + }); + + it('should export a valid span with error INVALID_ARGUMENT when "family" param is equal to -1', () => { + const hostname = 'google.com'; + try { + dns.lookup(hostname, -1, () => {}); + assert.fail(); + } catch (error) { + const spans = memoryExporter.getFinishedSpans(); + const [span] = spans; + assert.strictEqual(spans.length, 1); + assertSpan(span, { + addresses: [], + hostname, + forceStatus: { + code: process.versions.node.startsWith('8') + ? CanonicalCode.UNKNOWN + : CanonicalCode.INVALID_ARGUMENT, + message: error!.message, + }, + }); + } + }); + + it('should export a valid span with error INVALID_ARGUMENT when "hostname" param is a number', () => { + const hostname = 1234; + try { + // tslint:disable-next-line:no-any + dns.lookup(hostname as any, 4, () => {}); + assert.fail(); + } catch (error) { + const spans = memoryExporter.getFinishedSpans(); + const [span] = spans; + assert.strictEqual(spans.length, 1); + assertSpan(span, { + addresses: [], + // tslint:disable-next-line:no-any + hostname: hostname as any, + forceStatus: { + code: process.versions.node.startsWith('8') + ? CanonicalCode.UNKNOWN + : CanonicalCode.INVALID_ARGUMENT, + message: error!.message, + }, + }); + } + }); + }); + describe('with options param', () => { + [4, 6].forEach(family => { + it(`should export a valid span with "family" to ${family}`, done => { + const hostname = 'google.com'; + dns.lookup(hostname, { family }, (err, address, family) => { + assert.strictEqual(err, null); + assert.ok(address); + assert.ok(family); + + const spans = memoryExporter.getFinishedSpans(); + const [span] = spans; + assert.strictEqual(spans.length, 1); + + assertSpan(span, { addresses: [{ address, family }], hostname }); + done(); + }); + }); + + it(`should export a valid span when setting "verbatim" property to true and "family" to ${family}`, done => { + const hostname = 'google.com'; + dns.lookup( + hostname, + { family, verbatim: true }, + (err, address, family) => { + assert.strictEqual(err, null); + assert.ok(address); + assert.ok(family); + + const spans = memoryExporter.getFinishedSpans(); + const [span] = spans; + assert.strictEqual(spans.length, 1); + + assertSpan(span, { addresses: [{ address, family }], hostname }); + done(); + } + ); + }); + }); + + it('should export a valid span when setting "all" property to true', done => { + const hostname = 'montreal.ca'; + dns.lookup( + hostname, + { all: true }, + (err: NodeJS.ErrnoException | null, addresses: dns.LookupAddress[]) => { + assert.strictEqual(err, null); + assert.ok(addresses instanceof Array); + + const spans = memoryExporter.getFinishedSpans(); + const [span] = spans; + assert.strictEqual(spans.length, 1); + assertSpan(span, { addresses, hostname }); + done(); + } + ); + }); + }); +}); diff --git a/packages/opentelemetry-plugin-dns/test/integrations/dnspromise-lookup.test.ts b/packages/opentelemetry-plugin-dns/test/integrations/dnspromise-lookup.test.ts new file mode 100644 index 0000000000..9856985e72 --- /dev/null +++ b/packages/opentelemetry-plugin-dns/test/integrations/dnspromise-lookup.test.ts @@ -0,0 +1,216 @@ +/*! + * Copyright 2019, OpenTelemetry Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { + InMemorySpanExporter, + SimpleSpanProcessor, +} from '@opentelemetry/tracing'; +import * as assert from 'assert'; +import { NoopLogger } from '@opentelemetry/core'; +import { NodeTracer } from '@opentelemetry/node'; +import { plugin } from '../../src/dns'; +import * as dns from 'dns'; +import * as utils from '../utils/utils'; +import * as semver from 'semver'; +import { assertSpan } from '../utils/assertSpan'; +import { CanonicalCode } from '@opentelemetry/types'; + +const memoryExporter = new InMemorySpanExporter(); +const logger = new NoopLogger(); +const tracer = new NodeTracer({ logger }); +tracer.addSpanProcessor(new SimpleSpanProcessor(memoryExporter)); + +describe('dns.promises.lookup()', () => { + before(function(done) { + // skip tests if node version is not supported + if (semver.lte(process.versions.node, '10.6.0')) { + this.skip(); + done(); + return; + } + + // if node version is supported, it's mandatory for CI + if (process.env.CI) { + plugin.enable(dns, tracer, tracer.logger); + done(); + return; + } + + utils.checkInternet(isConnected => { + if (!isConnected) { + this.skip(); + // don't disturbe people + } + done(); + }); + plugin.enable(dns, tracer, tracer.logger); + }); + + afterEach(() => { + memoryExporter.reset(); + }); + + after(() => { + plugin.disable(); + }); + + describe('with family param', () => { + [4, 6].forEach(ipversion => { + it(`should export a valid span with "family" arg to ${ipversion}`, async () => { + const hostname = 'google.com'; + const { address, family } = await dns.promises.lookup( + hostname, + ipversion + ); + assert.ok(address); + assert.ok(family); + + const spans = memoryExporter.getFinishedSpans(); + const [span] = spans; + assert.strictEqual(spans.length, 1); + assertSpan(span, { addresses: [{ address, family }], hostname }); + }); + }); + }); + + describe('with no options param', () => { + it('should export a valid span', async () => { + const hostname = 'google.com'; + const { address, family } = await dns.promises.lookup(hostname); + + assert.ok(address); + assert.ok(family); + + const spans = memoryExporter.getFinishedSpans(); + const [span] = spans; + assert.strictEqual(spans.length, 1); + assertSpan(span, { addresses: [{ address, family }], hostname }); + }); + + it('should export a valid span with error NOT_FOUND', async () => { + const hostname = 'ᚕ'; + try { + await dns.promises.lookup(hostname); + assert.fail(); + } catch (error) { + const spans = memoryExporter.getFinishedSpans(); + const [span] = spans; + + assert.strictEqual(spans.length, 1); + assertSpan(span, { + addresses: [], + hostname, + forceStatus: { + code: CanonicalCode.NOT_FOUND, + message: error!.message, + }, + }); + } + }); + + it('should export a valid span with error INVALID_ARGUMENT when "family" param is equal to -1', async () => { + const hostname = 'google.com'; + try { + await dns.promises.lookup(hostname, -1); + assert.fail(); + } catch (error) { + const spans = memoryExporter.getFinishedSpans(); + const [span] = spans; + + assert.strictEqual(spans.length, 1); + assertSpan(span, { + addresses: [], + hostname, + forceStatus: { + code: CanonicalCode.INVALID_ARGUMENT, + message: error!.message, + }, + }); + } + }); + + it('should export a valid span with error INVALID_ARGUMENT when "hostname" param is a number', async () => { + const hostname = 1234; + try { + // tslint:disable-next-line:no-any + await dns.promises.lookup(hostname as any, 4); + assert.fail(); + } catch (error) { + const spans = memoryExporter.getFinishedSpans(); + const [span] = spans; + + assert.strictEqual(spans.length, 1); + assertSpan(span, { + addresses: [], + // tslint:disable-next-line:no-any + hostname: hostname as any, + forceStatus: { + code: CanonicalCode.INVALID_ARGUMENT, + message: error!.message, + }, + }); + } + }); + }); + describe('with options param', () => { + [4, 6].forEach(ipversion => { + it(`should export a valid span with "family" to ${ipversion}`, async () => { + const hostname = 'google.com'; + const { address, family } = await dns.promises.lookup(hostname, { + family: ipversion, + }); + + assert.ok(address); + assert.ok(family); + + const spans = memoryExporter.getFinishedSpans(); + const [span] = spans; + assert.strictEqual(spans.length, 1); + + assertSpan(span, { addresses: [{ address, family }], hostname }); + }); + + it(`should export a valid span when setting "verbatim" property to true and "family" to ${ipversion}`, async () => { + const hostname = 'google.com'; + const { address, family } = await dns.promises.lookup(hostname, { + family: ipversion, + verbatim: true, + }); + + assert.ok(address); + assert.ok(family); + + const spans = memoryExporter.getFinishedSpans(); + const [span] = spans; + assert.strictEqual(spans.length, 1); + + assertSpan(span, { addresses: [{ address, family }], hostname }); + }); + }); + + it('should export a valid span when setting "all" property to true', async () => { + const hostname = 'montreal.ca'; + const addresses = await dns.promises.lookup(hostname, { all: true }); + + assert.ok(addresses instanceof Array); + + const spans = memoryExporter.getFinishedSpans(); + const [span] = spans; + assert.strictEqual(spans.length, 1); + assertSpan(span, { addresses, hostname }); + }); + }); +}); diff --git a/packages/opentelemetry-plugin-dns/test/utils/assertSpan.ts b/packages/opentelemetry-plugin-dns/test/utils/assertSpan.ts new file mode 100644 index 0000000000..dc8df543dd --- /dev/null +++ b/packages/opentelemetry-plugin-dns/test/utils/assertSpan.ts @@ -0,0 +1,69 @@ +/*! + * Copyright 2019, OpenTelemetry Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { SpanKind, Status, CanonicalCode } from '@opentelemetry/types'; +import { hrTimeToNanoseconds } from '@opentelemetry/core'; +import * as assert from 'assert'; +import { AttributeNames } from '../../src/enums/AttributeNames'; +import { ReadableSpan } from '@opentelemetry/tracing'; +import * as utils from '../../src/utils'; +import { LookupAddress } from 'dns'; + +export const assertSpan = ( + span: ReadableSpan, + validations: { + addresses: LookupAddress[]; + hostname: string; + forceStatus?: Status; + } +) => { + if (span.spanContext.traceId) { + assert.strictEqual(span.spanContext.traceId.length, 32); + } + if (span.spanContext.spanId) { + assert.strictEqual(span.spanContext.spanId.length, 16); + } + + assert.strictEqual(span.kind, SpanKind.CLIENT); + + assert.strictEqual(span.attributes[AttributeNames.COMPONENT], 'dns'); + assert.strictEqual( + span.attributes[AttributeNames.DNS_ERROR_MESSAGE], + span.status.message + ); + assert.strictEqual( + span.attributes[AttributeNames.PEER_HOSTNAME], + validations.hostname + ); + + validations.addresses.forEach((_, i) => { + assert.strictEqual( + span.attributes[utils.getFamilyAttribute(_.family, i)], + _.address + ); + }); + + assert.ok(span.endTime); + assert.strictEqual(span.links.length, 0); + assert.strictEqual(span.events.length, 0); + + assert.deepStrictEqual( + span.status, + validations.forceStatus || { code: CanonicalCode.OK } + ); + + assert.ok(hrTimeToNanoseconds(span.duration), 'must have positive duration'); +}; diff --git a/packages/opentelemetry-plugin-dns/test/utils/utils.ts b/packages/opentelemetry-plugin-dns/test/utils/utils.ts new file mode 100644 index 0000000000..57a75516a1 --- /dev/null +++ b/packages/opentelemetry-plugin-dns/test/utils/utils.ts @@ -0,0 +1,27 @@ +/*! + * Copyright 2019, OpenTelemetry Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import * as dns from 'dns'; + +export const checkInternet = (cb: (isConnected: boolean) => void) => { + dns.lookup('google.com', err => { + if (err && err.code === 'ENOTFOUND') { + cb(false); + } else { + cb(true); + } + }); +}; diff --git a/packages/opentelemetry-plugin-dns/tsconfig.json b/packages/opentelemetry-plugin-dns/tsconfig.json new file mode 100644 index 0000000000..a2042cd68b --- /dev/null +++ b/packages/opentelemetry-plugin-dns/tsconfig.json @@ -0,0 +1,11 @@ +{ + "extends": "../tsconfig.base", + "compilerOptions": { + "rootDir": ".", + "outDir": "build" + }, + "include": [ + "src/**/*.ts", + "test/**/*.ts" + ] +} diff --git a/packages/opentelemetry-plugin-dns/tslint.json b/packages/opentelemetry-plugin-dns/tslint.json new file mode 100644 index 0000000000..0710b135d0 --- /dev/null +++ b/packages/opentelemetry-plugin-dns/tslint.json @@ -0,0 +1,4 @@ +{ + "rulesDirectory": ["node_modules/tslint-microsoft-contrib"], + "extends": ["../../tslint.base.js", "./node_modules/tslint-consistent-codestyle"] +}