ãã¹ãŠã®äººã«æšæ¶ïŒ ç§ã¯
Onlantaã§ã·ã¹ãã ãšã³ãžãã¢ãšããŠåããŠããŸãã ç§ãã¡ã®ãããžã§ã¯ãã®1ã€ã§ãElastic Stackã®å®è£
ãšä¿å®ã«æºãããŸããã å®è³ªçã«æåã§ãã°ãåéããããšãããéäžåãããèªååãããããã»ã¹ã«ç§»è¡ããŸããã 2幎éããœãªã¥ãŒã·ã§ã³ã®ã¢ãŒããã¯ãã£ã¯å®è³ªçã«å€æŽãããŠããããä»ã®ãããžã§ã¯ãã§äŸ¿å©ãªããŒã«ã䜿çšããäºå®ã§ãã ãã®æçš¿ã®ããã€ãã®é·æãšçæãšãšãã«ããã®å®è£
ã®æŽå²ãå
±æããŸãã
åºæ2016幎ã®åãã«ã¯ã管çè
ãšéçºè
ã®ãã°ã¯ããæå
ã§ããã€ãŸãSSHãä»ããŠåœŒãé¢å¿ãæã£ãŠãããã¹ãã«æ¥ç¶ããŠäœæ¥ãããšã³ãžãã¢ã§ãã£ããããtail / grep / sedãããŠãããŒãµã«ã»ãããçºèŠããŸãã/ awkãããŠãå¿
èŠãªããŒã¿ããã®ãã¹ãã§èŠã€ããããšãæãã§ããŸããã
åºæãŸããå¥ã®ãµãŒããŒãããããã¹ãŠã®ãµãŒããŒããã®ãã°ãå«ããã¹ãŠã®ãã£ã¬ã¯ããªãNFSãä»ããŠããŠã³ãããã誰ãããã®ãã°ã§äœããããã®ããèããã®ã«æéãããããŸããã ããŠãããã€ãã®ããã«ãã¢ã¯ãã£ãã«æŽæ°ããããã°ã«å°ŸãåŒãtmuxã¯ã倧ããªã¢ãã¿ãŒã®éšå€è
ã«ãšã£ãŠéåžžã«å°è±¡çã§ãããçç£ã®ç§è·¡ã«é¢äžããåºæ¿çãªé°å²æ°ãäœãåºããŸããã
ããã¯ãã¹ãŠæ©èœããŸããããæ£ç¢ºã«å€§éã®ããŒã¿ãè¿
éã«åŠçããããšãå¿
èŠã«ãªããŸã§ãããã¯æãé »ç¹ã«äœãã補åã«èœã¡ãç¬éã«å¿
èŠã§ããã
å Žåã«ãã£ãŠã¯ãäºä»¶ã調æ»ããã®ã«ããããããæéãããããŸããã ãã®å€§éšåã¯ããã°ã®æåéçŽãBashããã³Python
ã§ã®ããŸããŸãªã¹ã¯ãªããã®
æŸèæã®èµ·åããã°ãåæã®ããã«ã©ããã«ã¢ããããŒããããã®ãåŸ
ã€ãªã©ã«è²»ããããŸããã
äžèšã§èšãã°ãããã¯ãã¹ãŠéåžžã«é
ããèœèã«è§Šçºããããã°ã®äžå
åãããä¿åã«åãçµãæã ãšããããšãæ確ã«ç€ºåããŠããŸããã
æ£çŽãªãšããããããæäŸããæè¡ã¹ã¿ãã¯ã®åœ¹å²ã®åè£ãéžæããè€éãªããã»ã¹ã¯ãããŸããã§ãããåœæELKãã³ãã«ã¯ãã§ã«äººæ°ããããè¯ãããã¥ã¡ã³ããããããã¹ãŠã®ã³ã³ããŒãã³ãã«ã€ããŠã€ã³ã¿ãŒãããäžã«å€æ°ã®èšäºããããŸããã 決å®ã¯å³åº§ã«è¡ãããŸãããè©ŠããŠã¿ãå¿
èŠããããŸãã
åºæã¹ã¿ãã¯ã®æåã®ã€ã³ã¹ããŒã«ã¯ããããããElasticsearchãLogstashãKibanaã®ã€ã³ã¹ã¿ã³ã¹ãèµ·åãã3ã€ã®ä»®æ³ãã·ã³ã§ãŠã§ãããŒãLogstashïŒ0-60 in 60ããèŠãŠããè¡ãããŸããã
ããã«ããšã³ããã¹ãããLogstashãµãŒããŒãžã®ãã°ã®é
ä¿¡ã§åé¡ãçºçããŸããã å®éã®ãšãããFilebeatïŒããã¹ããã¡ã€ã«ãããã°ãé
ä¿¡ããããã®æšæºçãªã¹ã¿ãã¯ãœãªã¥ãŒã·ã§ã³ïŒã¯ã倧ãããŠè¿
éã«æŽæ°ããããã¡ã€ã«ã§ã¯ãRAMã§å®æçã«ãªãŒã¯ããç§ãã¡ã®å Žåã¯å
šäœãšããŠãã®ã¿ã¹ã¯ã«å¯ŸåŠã§ããŸããã§ããã
ããã«å ããŠãIBM AIXãå®è¡ããŠãããã·ã³ããã¢ããªã±ãŒã·ã§ã³ãµãŒããŒãã°ãé
ä¿¡ããæ¹æ³ãèŠã€ããå¿
èŠæ§ãè¿œå ãããŸãããã¢ããªã±ãŒã·ã§ã³ã®å€§éšåã¯ããã®OSã§ç¹ã«æ©èœããWebSphere Application Serverã§å®è¡ãããŸããã Filebeatã¯Goã§äœæãããŠããã2016幎ã«ã¯AIXåãã®å¹ççãªGoã³ã³ãã€ã©ã¯ã»ãšãã©ãããŸããã§ããããŸããé
ä¿¡çšã®ãšãŒãžã§ã³ããšããŠLogstashã䜿çšããããããŸããã§ããã
ããã€ãã®ãã°é
ä¿¡ãšãŒãžã§ã³ãããã¹ãããŸããïŒFilebeatãlogstash-forwarder-javaã
log-courier ãpython-beaverãNXLogã ãšãŒãžã§ã³ãããã¯ãé«æ§èœãã·ã¹ãã ãªãœãŒã¹ã®äœæ¶è²»ãLogstashãšã®å®¹æãªçµ±åãããã³ãšãŒãžã§ã³ãã®åã䜿çšããåºæ¬çãªããŒã¿æäœïŒè€æ°è¡ã€ãã³ãã®ã¢ã»ã³ããªãªã©ïŒãå®è¡ã§ããããšãæåŸ
ãããŸããã
è€æ°è¡ã®ã€ãã³ãã®ã¢ã»ã³ããªã«ã€ããŠã¯ãåå¥ã«èšåãã䟡å€ããããŸãã äºå®äžãç¹å®ã®ãã¡ã€ã«ãèªã¿åããšãŒãžã§ã³ãã®åŽã§ã®ã¿å®è¡ã§ããŸãã Logstashã«ã¯ãã€ãŠè€æ°è¡ãã£ã«ã¿ãŒããããçŸåšã¯è€æ°è¡ã³ãŒããã¯ã䜿çšãããŠããã«ãããããããè€æ°ã®LogstashãµãŒããŒã§ã®ã€ãã³ããã©ã³ã·ã³ã°ãšè€æ°è¡åŠçãçµã¿åãããããšããè©Šã¿ã¯ãã¹ãŠå€±æããŸããã ãã®æ§æã«ãããå¹ççãªã€ãã³ããã©ã³ã·ã³ã°ãã»ãŒäžå¯èœã«ãªããŸãããããã£ãŠããšãŒãžã§ã³ããéžæããéã®æãéèŠãªèŠçŽ ã¯ãè€æ°è¡ã®ãµããŒãã§ããã
åè³è
ã¯æ¬¡ã®ããã«é
åžãããŸãããLinuxãæèŒãããã·ã³ã®ãã°ã¯ãŒãªãšãAIXãæèŒãããã·ã³ã®NXLogã ãã®æ§æã§ãç§ãã¡ã¯åé¡ãªãã»ãŒ1幎éçããŸããããã°ãé
ä¿¡ããããšãŒãžã§ã³ããèœã¡ãªãã£ãïŒãŸããã»ãšãã©ïŒã誰ãã幞ãã§ããã
2016幎10æã«ãBeats 5.0ãå«ãElastic Stackã³ã³ããŒãã³ãã®5çªç®ã®ããŒãžã§ã³ããªãªãŒã¹ãããŸããã ãã®ããŒãžã§ã³ã§ã¯ãã¹ãŠã®BeatsãšãŒãžã§ã³ãã§å€ãã®äœæ¥ãè¡ããããã°ã¯ãŒãªãšïŒåœæã¯ç¬èªã®åé¡ããã£ãïŒããçŸåšäœ¿çšããŠããFilebeatã«çœ®ãæããããšãã§ããŸããã
ããŒãžã§ã³5.0ã«åãæ¿ãããšããã°ã ãã§ãªãäžéšã®ã¡ããªãã¯ãåéãå§ããŸããïŒHTTPãªã¯ãšã¹ããã°ããã¡ã€ã«ã«æžã蟌ã代ããã«ãPacketbeatãéæã§äœ¿çšãããããã«ãªããMetricbeatã¯ããã€ãã®ãµãŒãã¹ã®ã·ã¹ãã ã¡ããªãã¯ãšã¡ããªãã¯ãåéããŸããã
ãã®æç¹ã§ããã°ã䜿çšãããšã³ãžãã¢ã®äœæ¥ã¯ã¯ããã«ç°¡åã«ãªããŸããïŒé¢å¿ã®ãããã°ã衚瀺ããããã«ã©ã®ãµãŒããŒã«ç§»åããããç¥ãå¿
èŠããªããªããæ
å ±ã®äº€æã¯ãã£ããã«ãŒã ãŸãã¯ã¡ãŒã«ã§Kibanaã«ãªã³ã¯ã転éããã ãã«ç°¡çŽ åããã以åã«äœæãããã¬ããŒãæ°æéã§ãæ°ç§ã§äœæããå§ããŸããã ããã¯åã«å¿«é©ãã®åé¡ã ãšã¯èšããŸãããäœæ¥ã®è³ªãã¯ããŒãºãã¿ã¹ã¯ã®éãšè³ªãã¹ã¿ã³ãã§ã®åé¡ãžã®å¯Ÿå¿é床ã®å€åã«æ°ã¥ããŸããã
ããæç¹ã§ãYelpã®ElastAlertãŠãŒãã£ãªãã£ã䜿çšããŠã¢ã©ãŒãããšã³ãžãã¢ã«éä¿¡ãå§ããŸããã ãããŠãæã
ã¯èããŸããïŒãã¹ãŠã®ã¢ã©ãŒããæšæºåœ¢åŒãæã¡ãäžå
çã«éä¿¡ãããããã«Zabbixãšçµ±åããŠã¿ãŸãããïŒ è§£æ±ºçã¯ããã«èŠã€ãããŸãããElastAlertã§ã¯ãå®éã«äœ¿çšããã¢ã©ãŒããéä¿¡ãã代ããã«ãä»»æã®ã³ãã³ããå®è¡ã§ããŸãã
ããã§ãElastAlertã«ãŒã«ãããªã¬ãŒããããšãbashã¹ã¯ãªãããè€æ°è¡ã§å®è¡ãããã«ãŒã«ãããªã¬ãŒããã€ãã³ãããåŒæ°ã§å¿
èŠãªããŒã¿ãæž¡ãããzabbix_senderãã¹ã¯ãªããããåŒã³åºãããç®çã®ããŒãã®ããŒã¿ãZabbixã«éä¿¡ãããŸãã
誰ãã€ãã³ããçæããElasticsearchã®ã©ãã«ãããã«é¢ãããã¹ãŠã®æ
å ±ãåžžã«ååšãããããçµ±åã«åé¡ã¯çããŸããã§ããã ããšãã°ã以åã¯WASã¢ããªã±ãŒã·ã§ã³ãµãŒããŒãèªåçã«æ€åºããã¡ã«ããºã ããããããããçæããã€ãã³ãã§ã¯ããµãŒããŒãã¯ã©ã¹ã¿ãŒãã»ã«ãªã©ã®ååãåžžã«æžã蟌ãŸããŸãã ããã«ãããElastAlertã«ãŒã«ã§query_keyãªãã·ã§ã³ã䜿çšã§ããããã«ãªããã«ãŒã«æ¡ä»¶ããµãŒããŒããšã«åå¥ã«åŠçãããããã«ãªããŸããã zabbix_senderã䜿çšããã¹ã¯ãªããã¯ããµãŒããŒã®æ£ç¢ºãªã座æšããååŸãã察å¿ããããŒãã®ããŒã¿ãZabbixã«éä¿¡ãããŸãã
ç§ãã¡ãæ¬åœã«æ°ã«å
¥ã£ãŠããããã°ã®éäžã³ã¬ã¯ã·ã§ã³ã®ãããã§å¯èœã«ãªã£ãå¥ã®ãœãªã¥ãŒã·ã§ã³ã¯ãJIRAã§ã¿ã¹ã¯ãã°ãèªåçã«äœæããããã®ã¹ã¯ãªããã§ãã1æ¥1åãã°ãããã¹ãŠã®ãšã©ãŒãååŸããã¿ã¹ã¯ãã°ããŸã ãªãå Žåã¯ããããéå§ããŸãã åæã«ãäžæã®ãªã¯ãšã¹ãIDã«ããç°ãªãã€ã³ããã¯ã¹ããã調æ»ã«åœ¹ç«ã€ãã¹ãŠã®æ
å ±ãã¿ã¹ã¯ã«åã蟌ãŸããŸãã çµæã¯ãå¿
èŠãªæå°éã®æ
å ±ãåããäžçš®ã®æšæºã¯ãŒã¯ããŒã¹ã§ããããšã³ãžãã¢ã¯å¿
èŠã«å¿ããŠè£è¶³ããããšãã§ããŸãã
ãã¡ãããã¹ã¿ãã¯èªäœãç£èŠãããšããåé¡ã«çŽé¢ããŸããã ããã¯ãäžéšã¯åãElastAlertã䜿çšããŠãZabbixã䜿çšããŠå®è£
ãããã¹ã¿ãã¯ã«çµã¿èŸŒãŸããæšæºç£èŠïŒX-Packã®ç£èŠã³ã³ããŒãã³ãïŒã䜿çšããŠãElasticsearchãLogstashãKibanaã®äž»èŠãªããã©ãŒãã³ã¹ã¡ããªãã¯ãååŸããŸãã ãŸããã¹ã¿ãã¯ãµãŒãã¹èªäœãåãããµãŒããŒã«ãFireholãã
netdataãã€ã³ã¹ããŒã«ããŸããã ç¹å®ã®ããŒãã§çŸåšäœãèµ·ãã£ãŠãããããªã¢ã«ã¿ã€ã ã§é«è§£å床ã§ç¢ºèªããå¿
èŠãããå Žåã«åœ¹ç«ã¡ãŸãã
ãããããããElasticsearchã¢ãã¿ãªã³ã°ã¢ãžã¥ãŒã«ãå°ãå£ããŠããããããããèŠã€ããŠä¿®æ£ããããããçš®é¡ã®æçšãªã¡ããªãã¯ãè¿œå ããŠãã«ãªã¯ãšã¹ããè¡ããŸããã ãããã£ãŠãnetdataã¯ãåºæ¬çãªJVMã¡ããªãã¯ãã€ã³ããã¯ã¹ä»ããæ€çŽ¢ããã©ãŒãã³ã¹ã€ã³ãžã±ãŒã¿ããã©ã³ã¶ã¯ã·ã§ã³ãã°çµ±èšãã€ã³ããã¯ã¹ã»ã°ã¡ã³ããªã©ãå«ãElasticsearchã®ææ°ããŒãžã§ã³ãç£èŠã§ããããã«ãªããŸããã Netdataãæ°ã«å
¥ã£ãŠãããNetdataã«å°ãè²¢ç®ã§ããããšãå¬ããæããŸãã
ä»æ¥ãã»ãŒ3幎åŸãElastic Stackã¯æ¬¡ã®ããã«ãªããŸãã
ãšã³ãžãã¢ã¯ãäž»ã«3ã€ã®æ¹æ³ã§ã¹ã¿ãã¯ãæäœããŸãã
- Kibanaã®ãã°ãšã¡ããªãã¯ã®è¡šç€ºãšåæã
- Grafanaããã³Kibanaã®ããã·ã¥ããŒãã
- SQLãŸãã¯çµã¿èŸŒã¿ã¯ãšãªDSLã䜿çšããElasticsearchãžã®çŽæ¥ã¯ãšãªã
åèšã§ãããããã¹ãŠã®ãªãœãŒã¹ãå²ãåœãŠãããŸãïŒ146 CPUã484GB RAMã17TBãElasticsearchããŒã¿ãŠã§ã¢ããŠã¹ã«å²ãåœãŠãããŸãã
åèšã§ãElastic Stackã§åäœãã13å°ã®ä»®æ³ãã·ã³ããããŸãããããããElasticsearchããŒãçšã«4å°ãããŠã©ãŒã ãããŒãçšã«4å°ãLogstashãåãã4å°ã®ãã·ã³ãããã³1å°ã®ãã©ã³ãµãŒãã·ã³ã§ãã åãããããŒãã§ãElasticsearchã¯Kibanaã€ã³ã¹ã¿ã³ã¹ãå®è¡ããŸãã ããã¯æåããèµ·ãã£ãŠãããä»ã®ãšããããããå¥ã®è»ã«ç§»åããå¿
èŠã¯ãããŸããã
ããããã¹ã¿ãã¯ã®æäœäžã«Logstashãå¥ã®ãã·ã³ã«ç§»åããããšãã決å®ã¯ãæãæ£ç¢ºã§å¹æçãªãã®ã®1ã€ã§ããããšãå€æããŸãã.JVM ElasticsearchãšLogstashã®éã®CPUæéã®æ¿ãã競äºã¯ãè² è·ã®ããŒã¹ãäžã«ããŸãè¯ãç¹å¥ãªå¹æããããããªãã£ãã ã¬ããŒãžã³ã¬ã¯ã¿ãŒãæã被害ãåããŸããã
åºæéå»30æ¥éã®ããŒã¿ãã¯ã©ã¹ã¿ãŒã«ä¿åããŸããçŸåšã¯çŽ120åã®ã€ãã³ãã§ãã ãããããŒãã¯æ¯æ¥ã400-500GBã®ãã£ã¹ã¯ã«æ倧ã®å§çž®çã§æ°ããããŒã¿ïŒã·ã£ãŒãã¬ããªã«ããŒã¿ãå«ãïŒãæžã蟌ã¿ãŸãã Elasticsearchã¯ã©ã¹ã¿ãŒã«ã¯ããã/ãŠã©ãŒã ã¢ãŒããã¯ãã£ããããŸãããæ¯èŒçæè¿åãæ¿ããããããããããããŒããããããŠã©ãŒã ãããŒãã«ä¿åãããããŒã¿ãå°ãªããªããŸãã
å
žåçãªã¯ãŒã¯ããŒãïŒ
- ã€ã³ããã¯ã¹äœæ-ããŒã¯ã30,000ãŸã§ã®å¹³å13,000 rpsïŒã¬ããªã«æçãžã®ã€ã³ããã¯ã¹äœæãé€ãïŒã
- æ€çŽ¢-5200 rpsã
ElasticsearchãããããŒãã§40ã50ïŒ
ã®CPUããŒãžã³ãç¶æããããšã§ãKibana / GrafanaãŸãã¯å€éšç£èŠã·ã¹ãã ããã®ã€ã³ããã¯ã¹ä»ãã€ãã³ããšå€§éã®ãªã¯ãšã¹ãã®çªç¶ã®æ¥å¢ãç°¡åã«çµéšã§ããããã«ããŸãã ElasticsearchããŒããåãããã¹ãã®RAMã®çŽ50ïŒ
ã¯ãJVMã®ããŒãžãã£ãã·ã¥ãšãªãããŒãã®ããŒãºã«åžžã«å©çšã§ããŸãã
æåã®ã¯ã©ã¹ã¿ãŒã®ç«ã¡äžãããçµéããæéã®éã«ããã°ãšæ€çŽ¢ããã³åæãã©ãããã©ãŒã ãéçŽããæ段ãšããŠãElastic Stackã®ãã©ã¹é¢ãšãã€ãã¹é¢ã®ããã€ããèªåã§ç¹å®ããããšãã§ããŸããã
ã¹ã¿ãã¯ã«ã€ããŠç¹ã«æ°ã«å
¥ã£ãŠããããšïŒ- äºãã«ååã«çµ±åããã補åã®åäžã®ãšã³ã·ã¹ãã ã§ãããå¿
èŠãªãã®ã¯ã»ãŒãã¹ãŠæã£ãŠããŸãã ããŒãã¯ãã€ãŠããŸãè¯ããããŸããã§ããããä»ã§ã¯äžæºã¯ãããŸããã
- Logstashã¯ããã®ãã¹ãŠã®æ¥µæªééããåããŠãããéåžžã«æè»ã§åŒ·åãªããªããã»ããµã§ãããçããŒã¿ã§å€ãã®ããšãã§ããŸãïŒãããŠããããã§ããªãå Žåã¯ããã€ã§ãã¹ãããããRubyã§æžãããšãã§ããŸãïŒã
- ãã©ã°ã€ã³ã䜿çšããElasticsearchã¯ãã¯ãšãªèšèªãšããŠSQLããµããŒãããŸããããã«ãããä»ã®ãœãããŠã§ã¢ãã¯ãšãªèšèªãšããŠSQLã«è¿ããŠãŒã¶ãŒãšã®çµ±åãç°¡åã«ãªããŸãã
- é«å質ã®ããã¥ã¡ã³ããæ°ããåŸæ¥å¡ãç¥ã£ãŠãããããžã§ã¯ãã«ãã°ãã玹ä»ã§ããŸãã ãããã£ãŠãã¹ã¿ãã¯ã®æäœã¯ãç¹å®ã®çµéšãšãç§å¯ã®ç¥èããæã£ãŠãã1人ã®ããžãã¹ã«ã¯ãªããŸããã
- åéãéå§ããããã«ååŸããããŒã¿ã®æ§é ã«ã€ããŠäºåã«ç¥ãå¿
èŠã¯ãããŸãããã€ãã³ãããã®ãŸãŸåéãå§ãããããããæœåºã§ããæçšãªæ
å ±ãç解ãããããåŸæ¹äºææ§ãã倱ãããšãªãããããåŠçããæ¹æ³ãå€æŽããŸãã ãã®ããã®ã¹ã¿ãã¯ã«ã¯ãã€ã³ããã¯ã¹ã®ãã£ãŒã«ããšã€ãªã¢ã¹ãã¹ã¯ãªãããã£ãŒã«ããªã©ãå€ãã®äŸ¿å©ãªããŒã«ããããŸãã

åºæå«ããªãã®ïŒ- X-Packã³ã³ããŒãã³ãã¯ããµãã¹ã¯ãªãã·ã§ã³ã¢ãã«ã«åŸã£ãŠã®ã¿é
åžãããŸããããšãã°ãGoldãããRBACãŸãã¯PDFã¬ããŒãã®ã¿ããµããŒãããå Žåã¯ãGoldã®ãã¹ãŠã®æéãæ¯æãå¿
èŠããããŸãã ããã¯ãããšãã°ãPlatinumã®Graphã®ã¿ãå¿
èŠã§ãMachine Learningãšãå®éã«ã¯å¿
èŠã®ãªãä»ã®æ©èœã®ãã³ãã«ã賌å
¥ã§ããå Žåã«ç¹ã«ã€ã©ã€ã©ããŸãã çŽ1幎åã«åã
ã®X-Packã³ã³ããŒãã³ãã®ã©ã€ã»ã³ã¹ã«ã€ããŠElasticã»ãŒã«ã¹ããŒã ãšé£çµ¡ãåãããšããŠããäœãèµ·ãããŸããã§ãããããã®åŸäœããå€ãã£ãå¯èœæ§ããããŸãã
- ããªãé »ç¹ã«ãªãªãŒã¹ãããäœããã®åœ¢ã§ïŒæ¯åæ°ããïŒäžäœäºææ§ã倱ãããŸãã å€æŽãã°ã泚ææ·±ãèªã¿ãäºåã«æŽæ°ã®æºåãããå¿
èŠããããŸãã éžæãããã³ã«ãå®å®ããŠåäœããå€ãããŒãžã§ã³ã䜿çšããããæ°ããæ©èœãšããã©ãŒãã³ã¹ã®åäžã®ããã«ã¢ããã°ã¬ãŒãããŠã¿ãŠãã ããã
äžè¬çã«ã2016幎ã«è¡ã£ãéžæã«éåžžã«æºè¶³ããŠãããElastic Stackã®æäœçµéšãä»ã®ãããžã§ã¯ãã«ç§»è¡ããäºå®ã§ããã¹ã¿ãã¯ã«ãã£ãŠæäŸãããããŒã«ã¯ã¯ãŒã¯ãããŒã«éåžžã«ç·å¯ã«çµ±åãããŠãããããããä»ããæåŠããããšã¯éåžžã«å°é£ã§ãã
ãŸããåœç€Ÿã§ã¯å€æ°ã®ç©ºåžããããŸãã