SRE/DevOps ãšã³ãžãã¢ã®ç°å¢ã§ã¯ãããæ¥ã¯ã©ã€ã¢ã³ã (ãŸãã¯ç£èŠã·ã¹ãã ) ãçŸããŠãããã¹ãŠã倱ãããããšå ±åããŠãã誰ãé©ããªãã§ãããããµã€ãã¯æ©èœãããæ¯æãã¯å®äºãããç掻ã¯è¡°éããŠããŸãã ...ãã®ãããªç¶æ³ã§ã©ãã ãå©ããããšæã£ãŠããŠããã·ã³ãã«ã§ããããããããŒã«ããªããã°ããããè¡ãã®ã¯éåžžã«å°é£ã§ãã å€ãã®å Žåãåé¡ã¯ã¢ããªã±ãŒã·ã§ã³ ã³ãŒãèªäœã«é ãããŠãããããå¿
èŠãªã®ã¯ãããããŒã«ã©ã€ãºããããšã ãã§ãã
ãããŠæ²ãã¿ã®äžã«ãåã³ã®äžã«ãâŠ
å¶ç¶ã«ããç§ãã¡ã¯é·ãéæ·±ã New Relic ã«å€¢äžã«ãªã£ãŠããŸããã ããã¯ãã¢ããªã±ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹ãç£èŠããããã®åªããããŒã«ã§ããããŸãã(ãšãŒãžã§ã³ãã䜿çšããŠ) ãã€ã¯ããµãŒãã¹ ã¢ãŒããã¯ãã£ãªã©ãèšæž¬ããããšãã§ããŸãã ãããŠããµãŒãã¹ã®äŸ¡æ Œèšå®ããªã·ãŒã®å€æŽããªããã°ããã¹ãŠãããŸããã£ãã¯ãã§ãã ã³ã¹ã
éåžžã®ç¶æ³: New Relic ã¯ãæ°žç¶çã«ãå¿
èŠã§ã¯ãªããåé¡ãçºçããç¬éã«ã®ã¿ New Relic ãèŠããŠããŸãã ãã ããå®æçã«æéãæ¯æãå¿
èŠããã (ãµãŒããŒãããæé¡ 140 ç±³ãã«)ãèªåçã«æ¡åŒµãããã¯ã©ãŠã ã€ã³ãã©ã¹ãã©ã¯ãã£ã§ã¯ããã®éé¡ã¯ããªãé«é¡ã«ãªããŸãã åŸé課éå¶ã®ãªãã·ã§ã³ããããŸãããNew Relic ãæå¹ã«ããã«ã¯ã¢ããªã±ãŒã·ã§ã³ãåèµ·åããå¿
èŠããããããã«ããã¢ããªã±ãŒã·ã§ã³ããã¹ãŠéå§ãããåé¡ã®ç¶æ³ã倱ãããå¯èœæ§ããããŸãã å°ãåã«ãNew Relic ã¯æ°ããæéãã©ã³ãå°å
¥ããŸãã -
ãã®çµæãããå®äŸ¡ãªä»£æ¿ãµãŒãã¹ãæ¢ãããšãæ€èšãå§ããDatadog ãš Atatus ã® XNUMX ã€ã®ãµãŒãã¹ãéžæããããšã«ãªããŸããã ãªã圌ãã«ïŒ
競åä»ç€Ÿã«ã€ããŠ
åžå Žã«ã¯ä»ã®ãœãªã¥ãŒã·ã§ã³ãããããšãããã«èšã£ãŠãããŸãã ãªãŒãã³ãœãŒã¹ã®ãªãã·ã§ã³ãæ€èšããŸãããããã¹ãŠã®ã¯ã©ã€ã¢ã³ããã»ã«ããã¹ãåãœãªã¥ãŒã·ã§ã³ããã¹ãããããã®ç©ºã容éãæã£ãŠããããã§ã¯ãããŸãã...ããã«ãè¿œå ã®ã¡ã³ããã³ã¹ãå¿ èŠã«ãªããŸãã ç§ãã¡ãéžãã ã«ããã«ã¯æãè¿ãããšãå€æããŸãã ç§ãã¡ã®ããŒãº:
- PHP ã¢ããªã±ãŒã·ã§ã³ã®çµã¿èŸŒã¿ããã³éçºããããµããŒã (åœç€Ÿã®ã¯ã©ã€ã¢ã³ãã®ã¹ã¿ãã¯ã¯éåžžã«å€æ§ã§ããããã㯠New Relic ã®ä»£æ¿ãæ¢ããšããç¶æ³ã«ãããŠæ確ãªãªãŒããŒã§ã)ã
- æé ãªã³ã¹ã (ãã¹ããããæé¡ 100 ç±³ãã«æªæº)ã
- èªåèšæž¬åšã
- Kubernetes ãšã®çµ±åã
- New Relic ã€ã³ã¿ãŒãã§ãŒã¹ãšã®é¡äŒŒæ§ã¯ãé¡èãªå©ç¹ã§ã (åœç€Ÿã®ãšã³ãžãã¢ã¯ããã«æ £ããŠãããã)ã
ãããã£ãŠãæåã®éžæ段éã§ãä»ã®ããã€ãã®äžè¬çãªãœãªã¥ãŒã·ã§ã³ãç¹ã«æ¬¡ã®ãœãªã¥ãŒã·ã§ã³ãé€å€ããŸããã
- TidewaysãAppDynamicsãDynatrace - ã³ã¹ãã
- Stackify ã¯ãã·ã¢é£éŠã§ãããã¯ãããŠããã衚瀺ãããããŒã¿ãå°ãªãããŸãã
èšäºã®æ®ãã®éšåã¯ãæåã«åé¡ã®ãœãªã¥ãŒã·ã§ã³ãç°¡åã«çŽ¹ä»ãããã®åŸãNew Relic ãšã®å žåçãªããåããšãä»ã®ãµãŒãã¹ã§åæ§ã®æäœãå®è¡ãããšãã®çµéš/å°è±¡ã«ã€ããŠèª¬æããããã«æ§æãããŠããŸãã
éžã°ããéžæã®ãã¬ãŒã³ããŒã·ã§ã³
ãªã³
ãã ããNew Relic ãšãŒãžã§ã³ãã¯ç¬èªã®ãããã³ã«ã§å®è¡ãããOpenTracing ããµããŒãããŸããã é«åºŠãªã€ã³ã¹ãã«ã¡ã³ããŒã·ã§ã³ã«ã¯ãNew Relic å°çšã®ç·šéãå¿ èŠã§ãã æåŸã«ãKubernetes ã®ãµããŒãã¯ãŸã å®éšæ®µéã§ãã
2010幎ã«éçºãéå§
Datadog ã䜿çšãããšããã€ã¯ããµãŒãã¹ ããããæ£ããæ§ç¯ãããªãå Žåããããããã€ãã®æè¡çãªæ¬ ç¹ãããããšãããããŸããã ããšãã°ããµãŒãã¹ã®çš®é¡ã誀ã£ãŠèªèã (Django ããã£ãã·ã¥ ãµãŒãã¹ãšééããŠ)ã人æ°ã®ãã Predis ã©ã€ãã©ãªã䜿çšãã PHP ã¢ããªã±ãŒã·ã§ã³ã§ 500 ãšã©ãŒãåŒãèµ·ãããŸããã
é倧ãªæ¬ ç¹ã¯ãNode.js ãš PHP ã®ã¿ããµããŒãããŠããããšã§ãã äžæ¹ã§ãDatadog ãããèããåªããå®è£ ãæœãããŠããŸãã åŸè ãšã¯ç°ãªããAtatus ã§ã¯ã¢ããªã±ãŒã·ã§ã³ãã³ãŒãã«å€æŽãå ãããã©ãã«ãè¿œå ãããããå¿ èŠã¯ãããŸããã
New Relic ãšã®é£æºæ¹æ³
ããã§ãNew Relic ãäžè¬çã«ã©ã®ããã«äœ¿çšããããèããŠã¿ãŸãããã 解決çãå¿ èŠãªåé¡ããããšããŸãã
ã°ã©ãã§èŠããšããããããã§ãã ã¹ãã©ãã·ã¥ - åæããŠã¿ãŸãããã New Relic ã§ã¯ãWeb ãã©ã³ã¶ã¯ã·ã§ã³ã¯ Web ã¢ããªã±ãŒã·ã§ã³ã«å¯ŸããŠå³åº§ã«éžæããããã¹ãŠã®ã³ã³ããŒãã³ããããã©ãŒãã³ã¹ ã°ã©ãã«ç€ºããããšã©ãŒçããªã¯ãšã¹ãçã®ããã«ããããŸã...æãéèŠãªããšã¯ããããã®ããã«ããçŽæ¥ãç°ãªãããã«éã移åã§ããããšã§ããã¢ããªã±ãŒã·ã§ã³ã®äžéš (ããšãã°ãMySQL ãã¯ãªãã¯ãããšããŒã¿ããŒã¹ ã»ã¯ã·ã§ã³ã«ç§»åããŸã)ã
æ€èšäžã®äŸã§ã¯ã¢ã¯ãã£ããã£ã®æ¥å¢ãèŠãããããã PHPããã®ãã£ãŒããã¯ãªãã¯ãããšãèªåçã«æ¬¡ã®å Žæã«ç§»åããŸãã ååŒ:
æ¬è³ªçã« MVC ã¢ãã«ã®ã³ã³ãããŒã©ãŒã§ãããã©ã³ã¶ã¯ã·ã§ã³ã®ãªã¹ãã¯ããã§ã«æ¬¡ã®é åºã§äžŠã¹æ¿ããããŠããŸãã æãæéããããããã¯éåžžã«äŸ¿å©ã§ããã¢ããªã±ãŒã·ã§ã³ãäœãããŠããã®ããããã«ããããŸãã New Relic ã«ãã£ãŠèªåçã«åéãããé·ãã¯ãšãªã®äŸã次ã«ç€ºããŸãã 䞊ã¹æ¿ããåãæ¿ãããšã次ã®ãã®ãç°¡åã«èŠã€ãããŸãã
- æãè² è·ã®é«ãã¢ããªã±ãŒã·ã§ã³ ã³ã³ãããŒã©ãŒã
- æãé »ç¹ã«ãªã¯ãšã¹ããããã³ã³ãããŒã©ãŒã
- ã³ã³ãããŒã©ãŒã®äžã§æãé ãã
ããã«ãåãã©ã³ã¶ã¯ã·ã§ã³ãå±éããŠãã³ãŒãã®å®è¡æã«ã¢ããªã±ãŒã·ã§ã³ãäœãè¡ã£ãŠãããã確èªã§ããŸãã
æåŸã«ãã¢ããªã±ãŒã·ã§ã³ã¯é·ããªã¯ãšã¹ã (2 ç§ä»¥äžããããã®) ã®ãã¬ãŒã¹ã®äŸãä¿åããŸãã é·ããã©ã³ã¶ã¯ã·ã§ã³ã®ããã«ã¯æ¬¡ã®ãšããã§ãã
XNUMX ã€ã®ã¡ãœããã«å€ãã®æéããããããšããããããªã¯ãšã¹ããå®è¡ãããæå»ãšåæã«ããã® URI ãšãã¡ã€ã³ã衚瀺ãããŸãã å€ãã®å Žåãããã¯ãã°å
ã®ãªã¯ãšã¹ããèŠã€ããã®ã«åœ¹ç«ã¡ãŸãã ã«è¡ã ãã¬ãŒã¹ã®è©³çŽ°ã§ããããã®ã¡ãœãããã©ãããåŒã³åºãããŠãããã確èªã§ããŸãã
ãšã§ ããŒã¿ããŒã¹ã¯ãšãª â ã¢ããªã±ãŒã·ã§ã³ã®å®è¡äžã«å®è¡ãããããŒã¿ããŒã¹ãžã®ã¯ãšãªãè©äŸ¡ããŸãã
ãã®ç¥èãããã°ãã¢ããªã±ãŒã·ã§ã³ã®é床ãäœäžããçç±ãè©äŸ¡ããéçºè
ãšååããŠåé¡ã解決ããæŠç¥ãç«ãŠãããšãã§ããŸãã å®éã«ã¯ãNew Relic ã¯åžžã«æ確ãªå
šäœåãæäŸãããšã¯éããŸãããã調æ»ã®ãã¯ãã«ãéžæããã®ã«åœ¹ç«ã¡ãŸãã
- é·ã
PDO::Construct
pgpoll ã®å¥åŠãªæ©èœã«ç§ãã¡ã¯å°ãããŸããã - æéã®çµéãšãšãã«äžå®å®ã«ãªã
Memcache::Get
ä»®æ³ãã·ã³ãæ£ããæ§æãããŠããªãããšã瀺åããŸããã - ãã³ãã¬ãŒãåŠçã«ãããæéãçãããã»ã©å¢å ããããããªããžã§ã¯ã ã¹ãã¬ãŒãžå ã® 500 åã®ã¢ãã¿ãŒã®ååšããã§ãã¯ãããã¹ããããã«ãŒããçºçããŸããã
- 以äžã®ããã«...
ãŸããã³ãŒããå®è¡ãã代ããã«ãå€éšããŒã¿ ã¹ãã¬ãŒãžã«é¢é£ãããã®ãã¡ã€ã³ç»é¢ã«è¡šç€ºãããããšããããŸããRedis ã PostgreSQL ãªã©ããããã¯ãã¹ãŠã¿ãå ã«è¡šç€ºãããŸãã ããŒã¿ããŒã¹.
ãã©ã³ã¶ã¯ã·ã§ã³ã§è¡ãæ¹æ³ãšåæ§ã«ããªãµãŒãçšã®ç¹å®ã®ããŒã¹ãéžæããã¯ãšãªã䞊ã¹æ¿ããããšãã§ããŸãã [ãªã¯ãšã¹ã] ã¿ãã«ç§»åãããšãåã¢ããªã±ãŒã·ã§ã³ ã³ã³ãããŒã©ãŒã§ãã®ãªã¯ãšã¹ããäœåçºçãããã確èªããåŒã³åºãããé »åºŠãæšå®ããããšãã§ããŸãã ãšãŠãå¿«é©ã§ã:
ã¿ãã«ã¯åæ§ã®ããŒã¿ãå«ãŸããŠããŸã å€éšãµãŒãã¹ããªããžã§ã¯ã ã¹ãã¬ãŒãžãžã®ã¢ã¯ã»ã¹ãã»ã³ããªãžã®ã€ãã³ãã®éä¿¡ãªã©ãå€éš HTTP ãµãŒãã¹ãžã®ãªã¯ãšã¹ããé衚瀺ã«ããŸãã ãã®ã¿ãã®å
容ã¯ããŒã¿ããŒã¹ãšå®å
šã«äŒŒãŠããŸãã
競åä»ç€Ÿ: æ©äŒãšå°è±¡
ããã§æãèå³æ·±ãã®ã¯ãNew Relic ã®æ©èœã競åä»ç€ŸãæäŸããæ©èœãšæ¯èŒããããšã§ãã æ®å¿µãªãããå®çšŒåç°å¢ã§å®è¡ãããŠãã XNUMX ã€ã®ã¢ããªã±ãŒã·ã§ã³ã® XNUMX ã€ã®ããŒãžã§ã³ã§ XNUMX ã€ã®ããŒã«ãã¹ãŠããã¹ãããããšã¯ã§ããŸããã§ããã ãã ããå¯èœãªéãåäžã®ç¶æ³/æ§æãæ¯èŒããããã«åªããŸããã
1.Datadog
Datadog ã¯ããµãŒãã¹ã®å£ãåããããã«ã§ç§ãã¡ãè¿ããŠãããŸãã
ã¢ããªã±ãŒã·ã§ã³ãã³ã³ããŒãã³ã/ãã€ã¯ããµãŒãã¹ã«åå²ããããšããããããµã³ãã« Django ã¢ããªã±ãŒã·ã§ã³ã§ã¯ PostgreSQL ãžã® 2 ã€ã®æ¥ç¶ã衚瀺ãããŸã (defaultdb
О postgres
ïŒãã»ããªãã¬ãã£ã¹ãšåæ§ã«ã Datadog ã䜿çšããã«ã¯ãMVC ã®ååã«é¢ããæäœéã®ç¥èãå¿
èŠã§ããã€ãŸãããŠãŒã¶ãŒã®ãªã¯ãšã¹ããäžè¬çã«ã©ãããæ¥ãã®ããç解ããå¿
èŠããããŸãã ããã¯é垞圹ã«ç«ã¡ãŸã ãµãŒãã¹ããã:
ã¡ãªã¿ã«ãNew Relicã«ã䌌ããããªãã®ããããŸãã
...ãããŠç§ã®æèŠã§ã¯ããã®ãããã¯ããã·ã³ãã«ãã€æ確ã«ãªã£ãŠããŸããXNUMX ã€ã®ã¢ããªã±ãŒã·ã§ã³ã®ã³ã³ããŒãã³ã (Datadog ã®å Žåã®ããã«é床ã«è©³çŽ°ã«ãªã) ã¯è¡šç€ºããããç¹å®ã®ãµãŒãã¹ãŸãã¯ãã€ã¯ããµãŒãã¹ã®ã¿ã衚瀺ãããŸãã
Datadog ã«æ»ããŸãããããµãŒãã¹ ãããããããŠãŒã¶ãŒ ãªã¯ãšã¹ãã Django ã«éä¿¡ãããŠããããšãããããŸãã Django ãµãŒãã¹ã«ã¢ã¯ã»ã¹ããŠãæçµçã«äºæ³ããçµæã確èªããŠã¿ãŸãããã
æ®å¿µãªãããããã©ã«ãã§ã¯ããã«ã°ã©ãã¯ãããŸãã Webãã©ã³ã¶ã¯ã·ã§ã³æéãã¡ã€ã³ã® New Relic ããã«ã«è¡šç€ºããããã®ãšåæ§ã§ãã ãã ããã¹ã±ãžã¥ãŒã«ã®ä»£ããã«èšå®ããããšãã§ããŸãã è²»ãããæéã®å²åã ã«åãæ¿ããã ãã§ååã§ã ã¿ã€ãããšã®ãªã¯ãšã¹ããããã®å¹³åæé...ãããŠä»ãèŠæ
£ããã°ã©ããç§ãã¡ã«æ³šç®ããŠããŸãã
ãªã Datadog ãå¥ã®ãã£ãŒããéžæããã®ãã¯ç§ãã¡ã«ãšã£ãŠè¬ã§ãã ãã XNUMX ã€ã®ã€ã©ã€ã©ããç¹ã¯ã(競åä»ç€Ÿãšã¯ç°ãªã) ã·ã¹ãã ããŠãŒã¶ãŒã®éžæãèšæ¶ããªããããå¯äžã®è§£æ±ºçã¯ã«ã¹ã¿ã ããã«ãäœæããããšã§ãã
ãããããããã®ã°ã©ãããé¢é£ãµãŒããŒã®ã¡ããªã¯ã¹ã«åãæ¿ãããã°ãèªã¿åããWeb ãµãŒã㌠ãã³ãã©ãŒ (Gunicorn) ã®è² è·ãè©äŸ¡ã§ãã Datadog ã®æ©èœã«ã¯æºè¶³ããŠããŸããã ãã¹ãŠã New Relic ãšã»ãŒåãã§ã...ããã«ã¯ (ãã°ã) ããå°ãå€ããªããŸãã
ã°ã©ãã®äžã«ã¯ãNew Relic ãšå®å šã«é¡äŒŒãããã©ã³ã¶ã¯ã·ã§ã³ã衚瀺ãããŸãã
Datadog ã§ã¯ããã©ã³ã¶ã¯ã·ã§ã³ã¯æ¬¡ã®ããã«åŒã°ããŸãã è³æºã ãªã¯ãšã¹ãã®æ°ãå¹³åå¿çæéãããã³éžæããæéã«è²»ããããæ倧æéã«ãã£ãŠã³ã³ãããŒã©ãŒã䞊ã¹æ¿ããããšãã§ããŸãã
ãªãœãŒã¹ãå±éãããšãNew Relic ã§ãã§ã«èŠ³å¯ããããã¹ãŠã®å 容ã確èªã§ããŸãã
ãªãœãŒã¹ã«é¢ããçµ±èšãå
éšåŒã³åºãã®äžè¬åããããªã¹ããå¿çã³ãŒãå¥ã«ãœãŒãã§ãããªã¯ãšã¹ãã®äŸããããŸã... ã¡ãªã¿ã«ãåœç€Ÿã®ãšã³ãžãã¢ã¯ãã®ãœãŒããéåžžã«æ°ã«å
¥ã£ãŠããŸããã
Datadog å ã®ä»»æã®ãµã³ãã« ãªãœãŒã¹ãéããŠèª¿ã¹ãããšãã§ããŸãã
ãªã¯ãšã¹ã ãã©ã¡ãŒã¿ãŒãåã³ã³ããŒãã³ãã«è²»ããããæéã®æŠèŠã°ã©ããããã³åŒã³åºãã®ã·ãŒã±ã³ã¹ã瀺ããŠã©ãŒã¿ãŒãã©ãŒã« ã°ã©ãã衚瀺ãããŸãã ãŠã©ãŒã¿ãŒãã©ãŒã« ãã£ãŒãã®ããªãŒ ãã¥ãŒã«åãæ¿ããããšãã§ããŸãã
ãããŠæãèå³æ·±ãã®ã¯ããªã¯ãšã¹ããå®è¡ããããã¹ãã®è² è·ã衚瀺ãããªã¯ãšã¹ã ãã°ã衚瀺ããããšã§ãã
çŽ æŽãããçµ±åã§ãïŒ
ã¿ããã©ãã«ããã®ãçåã«æããããããŸãã ããŒã¿ããŒã¹ О å€éšãµãŒãã¹ãNew Relicã®ããã«ã ããã«ã¯äœããããŸãããDatadog ã¯ã¢ããªã±ãŒã·ã§ã³ãã³ã³ããŒãã³ãã«å解ãããããPostgreSQL ãèæ
®ãããŸãã å¥ã®ãµãŒãã¹å€éšãµãŒãã¹ã®ä»£ããã«æ¢ã䟡å€ããããŸã aws.storage
(ã¢ããªã±ãŒã·ã§ã³ãã¢ã¯ã»ã¹ã§ããä»ã®ãã¹ãŠã®å€éšãµãŒãã¹ã§ãåæ§ã§ã)ã
以äžã«ãã®äŸã瀺ããŸã postgres
:
åºæ¬çã«ãç§ãã¡ãæãã§ãããã®ã¯ãã¹ãŠãããŸãã
ãªã¯ãšã¹ããã©ã®ããµãŒãã¹ãããæ¥ãã®ãã確èªã§ããŸãã
Datadog 㯠NGINX Ingress ãšå®å šã«çµ±åãããŠããããªã¯ãšã¹ããã¯ã©ã¹ã¿ãŒã«å°çããç¬éãããšã³ãããŒãšã³ãã®ãã¬ãŒã¹ãå®è¡ã§ããã»ããstatsd ã¡ããªã¯ã¹ã®åä¿¡ããã°ã®åéãã¡ããªã¯ã¹ã®ãã¹ããå¯èœã§ããããšãæãåºããŠããã ãã®ã¯ééããããŸããã ã
Datadog ã®å€§ããªå©ç¹ã¯ããã®äŸ¡æ Œã§ãã æŽåœ¢ã§ã ã€ã³ãã©ã¹ãã©ã¯ãã£ç£èŠãAPMããã°ç®¡çãåæãã¹ããªã©ã æè»ã«ãã©ã³ããéžã³ããã ããŸãã
2.ã¢ã¿ãã¥ã¹
Atatus ããŒã ã¯ãèªç€Ÿã®ãµãŒãã¹ã¯ãNew Relic ãšåãã§ãããããããåªããŠããããšäž»åŒµããŠããŸãã ãããæ¬åœã«ãããªã®ãèŠãŠã¿ãŸãããã
ã¡ã€ã³ ããã«ã¯äŒŒãŠããŸãããã¢ããªã±ãŒã·ã§ã³ã§äœ¿çšãããŠãã Redis ãš memcached ãç¹å®ããããšã¯ã§ããŸããã§ããã
APM ã¯ããã©ã«ãã§ãã¹ãŠã®ãã©ã³ã¶ã¯ã·ã§ã³ãéžæããŸãããé垞㯠Web ãã©ã³ã¶ã¯ã·ã§ã³ã®ã¿ãå¿
èŠã§ãã Datadog ãšåæ§ã«ãã¡ã€ã³ ããã«ããç®çã®ãµãŒãã¹ã«ç§»åããæ¹æ³ã¯ãããŸããã ããã«ããã©ã³ã¶ã¯ã·ã§ã³ã¯ãšã©ãŒã®åŸã«ãªã¹ããããŸããããã㯠APM ã«ãšã£ãŠããŸãè«ççã§ã¯ãªãããã§ãã
Atatus ã®ãã©ã³ã¶ã¯ã·ã§ã³ã§ã¯ããã¹ãŠã New Relic ãšå¯èœãªéãé¡äŒŒããŠããŸãã æ¬ ç¹ã¯ãåã³ã³ãããŒã©ãŒã®ãã€ããã¯ã¹ãããã«è¡šç€ºãããªãããšã§ãã ã³ã³ãããŒã©ãŒããŒãã«ã§ãœãŒãããŠãããæ¢ãå¿ èŠããããŸãã æãå€ãã®æéãè²»ããã:
ã³ã³ãããŒã©ã®éåžžã®ãªã¹ãã¯ã¿ãã§å©çšã§ããŸãã 詳现:
ããæå³ããã®ããŒãã«ã¯ Datadog ã圷圿ãšãããŸãããç§ã¯ New Relic ã®åæ§ã®ããŒãã«ãããæ°ã«å
¥ã£ãŠããŸãã
åãã©ã³ã¶ã¯ã·ã§ã³ãå±éãããšãã¢ããªã±ãŒã·ã§ã³ãäœãè¡ã£ãŠãããã確èªã§ããŸãã
ãã®ããã«ã¯ Datadog ããã圷圿ãšãããŸããå€æ°ã®ãªã¯ãšã¹ããšã³ãŒã«ã®å
šäœåã衚瀺ãããŸãã äžéšããã«ã«ã¯ãšã©ãŒã¿ãã衚瀺ãããŸã HTTP ã®å€±æ é
ãã¯ãšãªã®äŸ ã»ãã·ã§ã³ãã¬ãŒã¹:
ãã©ã³ã¶ã¯ã·ã§ã³ã«ç§»åãããšããã¬ãŒã¹ã®äŸã衚瀺ãããããŒã¿ããŒã¹ãžã®ãªã¯ãšã¹ãã®ãªã¹ããååŸããŠããªã¯ãšã¹ã ããããŒã確èªã§ããŸãã ãã¹ãŠã New Relic ã«äŒŒãŠããŸãã
äžè¬ã«ãAtatus ã¯è©³çŽ°ãªãã¬ãŒã¹ã«æºè¶³ããŠããŸããNew Relic ã®å
žåçãªãªãã€ã³ã㌠ãããã¯ãžã®åŒã³åºãã®è²Œãä»ãã¯äžèŠã§ãã
ãã ãã(New Relic ã®ããã«) è¶
é«éãªã¯ãšã¹ã (5 ããªç§æªæº) ãé®æãããã£ã«ã¿ãŒããããŸããã äžæ¹ãæçµçãªãã©ã³ã¶ã¯ã·ã§ã³å¿ç (æåãŸãã¯ãšã©ãŒ) ã®è¡šç€ºã¯æ°ã«å
¥ããŸããã
ããã« ããŒã¿ããŒã¹ ã¢ããªã±ãŒã·ã§ã³ãè¡ãå€éšããŒã¿ããŒã¹ãžã®ãªã¯ãšã¹ãã調ã¹ãã®ã«åœ¹ç«ã¡ãŸãã Redis ãš memcached ããããžã§ã¯ãã«é¢äžããŠããŸãããAtatus 㯠PostgreSQL ãš MySQL ã®ã¿ãçºèŠããããšãæãåºããŠãã ããã
ãªã¯ãšã¹ãã¯ãå¿çé »åºŠãå¹³åå¿çæéãªã©ã®éåžžã®åºæºã«åŸã£ãŠäžŠã¹æ¿ããããŸãã ã¯ãšãªãæãé
ãã¿ãã«ã€ããŠã觊ããŠãããããšæããŸããããã¯éåžžã«äŸ¿å©ã§ãã ããã«ãPostgreSQL ã®ãã®ã¿ãã®ããŒã¿ã¯ãæ¡åŒµæ©èœããã®ããŒã¿ãšäžèŽããŸããã
ã¿ã å€éšããã®ãªã¯ãšã¹ã ããŒã¿ããŒã¹ãšãŸã£ããåãã§ãã
æèŠ
æ瀺ãããäž¡æ¹ã®ããŒã«ã¯ãAPM ã®åœ¹å²ã«ãããŠåªããããã©ãŒãã³ã¹ãçºæ®ããŸããã ã©ããå¿ èŠæå°éã®ãã®ãæäŸã§ããŸãã ç§ãã¡ã®å°è±¡ãç°¡åã«ãŸãšãããšæ¬¡ã®ããã«ãªããŸãã
ããŒã¿ããã°
é·æïŒ
- 䟿å©ãªæéäœç³» (APM ã¯ãã¹ãããšã« 31 ç±³ãã«ããããŸã)ã
- Python ã§ã¯ããŸãåäœããŸããã
- OpenTracing ãšã®çµ±åã®å¯èœæ§
- Kubernetes ãšã®çµ±åã
- NGINX Ingress ãšã®çµ±åã
çæïŒ
- ã¢ãžã¥ãŒã« ãšã©ãŒ (predis) ã«ããã¢ããªã±ãŒã·ã§ã³ã䜿çšã§ããªããªãåå ãšãªã£ãå¯äžã® APMã
- 匱ã PHP èªåã€ã³ã¹ãã«ã¡ã³ããŒã·ã§ã³ã
- ãµãŒãã¹ãšãã®ç®çã®éšåçã«å¥åŠãªå®çŸ©ã
ã¢ã¿ãã¥ã¹
é·æïŒ
- æ·±ã PHP ã€ã³ã¹ãã«ã¡ã³ããŒã·ã§ã³ã
- New Relic ã«äŒŒããŠãŒã¶ãŒ ã€ã³ã¿ãŒãã§ã€ã¹ã
çæïŒ
- å€ããªãã¬ãŒãã£ã³ã° ã·ã¹ãã (Ubuntu 12.05ãCentOS 5) ã§ã¯åäœããŸããã
- 匱ãèªåèšæž¬ã
- XNUMX ã€ã®èšèª (Node.js ãš PHP) ã®ã¿ããµããŒãããŸãã
- ã€ã³ã¿ãŒãã§ã€ã¹ãé ãã
Atatus ã®ãµãŒããŒãããæé¡ 69 ç±³ãã«ãšããäŸ¡æ Œãèæ ®ãããšãç§ãã¡ã®ããŒãº (K8s ã® Web ã¢ããªã±ãŒã·ã§ã³) ã«ããçµ±åãããå€ãã®äŸ¿å©ãªæ©èœãåãã Datadog ã䜿çšããããšãéžæããŸãã
PS
ç§ãã¡ã®ããã°ããèªã¿ãã ãã:
- «
Kubernetes äžã§å®è¡ãããã¢ããªã±ãŒã·ã§ã³ã®éçºè åãã®ããŒã« "; - «
Kubernetes ãããã§ãããã°ããããã® kubectl-debug ãã©ã°ã€ã³ "; - «
ãã€ã¯ããµãŒãã¹: Kubernetes ã䜿çšããŠããå Žåã§ãããµã€ãºã¯éèŠã§ã 'ã
åºæïŒ habr.com