
ã¢ããªã±ãŒã·ã§ã³å±éã®èªååãšCI/CD
foo
ã¬ãã¹ã³ã§ã¯ãã¢ããªã±ãŒã·ã§ã³ã®ãããã€ã®èªååãäœéšããããšãã§ããŸãã
åçŽ
Jenkins, CI/CD, nginx
ã©ã®ãããªãã°ãæ®ãã¹ããããå§ãŸãããã°ãåéããŠæŽ»çšãããŸã§ã®å šäœçãªãµã€ã¯ã«ã«ã€ããŠæ±ããŸãã
åè¬ç 1,314å
é£æåºŠ åçŽ
åè¬æé ç¡å¶é


åŠç¿ããåè¬è ã®ã¬ãã¥ãŒ
5.0
Sang Do Park
3æéã»ã©ã§é«ªãå·ããã®ã«ã¡ããã©ããæéãªã®ã§é±æ«ã«æé€ãèãæ°æã¡ã§èŠãããšåè¬ãå§ããŸããã ^^ ãžã¥ãã¢æä»£ã«log4jãlogbackãslf4jã®åºåã倧å€ã§é£ããèšå®ããŠèŠåŽããŠããèšæ¶ãæãæµ®ãã³ãå€ãã®éçºè ãèŠãŠã»ãããšããèãã«è³Œå ¥ããŠã¿ãŸããã詊è¡é¯èª€ãå€ãçµéšããå 容ããã®ããã«ãããŸãšããŠæŽ»çšããã¢ãã¿ãªã³ã°æ®µéãŸã§ã¹ããŒãªãŒæ¹åŒã§èª¬æããŠãããã®ã§ãããããã説æããä»ã®è¬çŸ©ãããæ²¡å ¥åºŠãé«ãã£ãã ãŸãã§å°æã®çµéšãåŠã¶ãžã¥ãã¢ã®ç«å Žã§èŠããšæã£ãŠäžééäžåºãŠããéçºã®ãã³ããèŠãŠã¿ããš3æéããã£ãšéããŸãããã éçºãå§ããæ¹ãã¿ããªèŠãŠäºåºŠèŠãŠãã ãã^^ ãã°ã¯æã ããªãã®ã©ã€ãã©ã€ã³ãå®ããŸãã ïŒæã éåããããšããããŸããâŠïŒ
5.0
ìë
è¬çŸ©ããšãŠãå匷ã«ãªããŸããïŒ logback, @Sl4jf ã«ã€ããŠããç¥ããã«äœ¿ã£ãŠããã®ã§ãã ä»ã«ãªã£ãŠæŠå¿µã«ã€ããŠç¥ãããšãã§ããŸããïŒ ãããããã®è¬çŸ©ã®å ŽåãåçŽãªåçãç¥èã§çµãããã« ãã°ãå å·¥ããŠã¿ããã CS察å¿ãªã©ãç®çãšããŠãã°ãæ±ã£ãçµéšããããªãã° æ¬åœã«å ±æããªããèãããã€ã³ããå€ãã£ãã§ã ãã®ãããéåžžã«é ·ããªããè¬çŸ©ãèããããã«æããŸã ãšã«ããã倧å€åœ¹ç«ã¡ãŸãããã ãã倿§ãªããŒãã«ã€ããŠè¬çŸ©ãå¶äœããŠããã ããã°ãšæããŸã ðð (ãããã¯è€æ°ã®æè¡ãéçŽããããç¹å®ã®ãã¡ã€ã³å šäœã«é¢ããè¬çŸ©ã§ããã°ããã«è¯ãããšæããŸã)
5.0
smh1205
ãã°ç®¡çãããç©æ¥µçã«ã§ããããã«ãªãããšæããŸãã
ã¢ããªã±ãŒã·ã§ã³ã§ã©ã®ãããªãã°ãæ®ãã¹ããã«é¢ããããŠããŠ
ELKã¹ã¿ãã¯ã掻çšãããã°åéããã³æŽ»çš
ãµãŒããŒã«çŽæ¥ãã°ã€ã³ããŠãã°ãã¡ã€ã«ã確èªããæ¹æ³ã«ã¯ãããŸããŸãªéçããããŸãã第äžã«ãè€æ°ã®ãµãŒããŒãéçšããå Žåãããããã®ãµãŒããŒã«ãã¡ãã¡æ¥ç¶ããå¿ èŠããããããæéãããã管çãè€éã«ãªããŸãã第äºã«ããªã¢ã«ã¿ã€ã ã§ãã°ãã¢ãã¿ãªã³ã°ããããšãé£ãããåé¡ãçºçããéã«è¿ éã«å¯Ÿå¿ããããšãå°é£ã«ãªããŸãããŸãããã°ã®æ€çŽ¢ãšåæãæåã§è¡ããããããéèŠãªæ å ±ãèŠéãããããšã©ãŒãçºèŠããã®ã«æéãããã£ããããããšããããŸãããã®ãããªæ¹åŒã¯ãç¹ã«å€§èŠæš¡ãªåæ£ã·ã¹ãã ã«ãããŠéå¹ççã§ããããµãŒãã¹ã®å®å®æ§ããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã«æªåœ±é¿ãåãŒãå¯èœæ§ããããŸãããããã£ãŠãããäœç³»çã§èªååããããã°ç®¡çæ¹æ³ãå°å ¥ããããšãå¿ èŠã§ãã
ãã°ç®¡çã¯åã«ãšã©ãŒãèšé²ããããšãè¶ ããã¢ããªã±ãŒã·ã§ã³ã®éŒåãçè§£ããåé¡ãäºåã«äºæž¬ããããã®éèŠãªããŒã«ã§ããç¹ã«çŸä»£ã®è€éãªåæ£ã·ã¹ãã ã§ã¯ããã°ç®¡çããµãŒãã¹ã®å®å®æ§ãšãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãå·Šå³ããããšããããŸããå®åã§ã¯ãèšå€§ãªããŒã¿ãšãã©ãã£ãã¯ã®äžã§è¿ éã«åé¡ãææ¡ãã解決ããèœåãäžå¯æ¬ ã§ãã
ä»åã®è¬çŸ©"éçºè ã«å¿ èŠãªãã°ç®¡ç"ã§ã¯ãã©ã®ãããªãã°ãæ®ãã¹ãããããã°ã®æŽ»çšãŸã§ãå®åã§ããã«é©çšã§ãã倿§ãªæŠç¥ãšãã³ããæ±ããŸããæåããæåŸãŸã§ãã°ç®¡çã®å šéçšãäœç³»çã«åŠã³ãªããããã°ãã©ã®ããã«ãµãŒãã¹éå¶ã«æŽ»çšãããã®ããçŽæ¥çµéšããããšã«ãªããŸãã
ãŸãæåã«ããã°ã«é¢ããåºç€ç¥èã«ã€ããŠæ±ããŸãããã®è¬çŸ©ã§ã¯ããã°ã®åºæ¬æŠå¿µãšéèŠæ§ãçè§£ããã©ã®ãããªæ å ±ããã°ãšããŠæ®ãã¹ãããäŸå€åŠçæã®ãã°ã®æŽ»çšæ³ã倿§ãªãã°ã¬ãã«ã®æå³ãšæŽ»çšæ¹æ³ãåŠç¿ããŸãããããéããŠãéçºéçšã«ããããã°ã®éèŠæ§ãèªèãã广çã«ãã°ãæ®ãæ¹æ³ã身ã«ã€ããããšã«ãªããŸãã
äºçªç®ã«ã¯ãLogbackã®èšå®ã«ã€ããŠæ±ããŸããLogbackã®åºæ¬æŠå¿µãšSlf4jãšã®é£æºã説æããå®éã®Logbackèšå®ãã¡ã€ã«ãäœæããæ¹æ³ãå®ç¿ãéããŠåŠç¿ããŸããããŸããŸãªAppenderãæŽ»çšããŠãã°ãè€æ°ã®ãã¡ã€ã«ã«åé¢ããæ¥åäœã§ãã°ã管çãããããã°ãã¡ã€ã«ãå§çž®ããããããªã©ãå®åã§å¿ èŠãªèšå®æè¡ã身ã«ã€ããããšãã§ããŸãããŸããéçºç°å¢ããšã«ç°ãªãLogbackèšå®ãé©çšããŠãæè»ãªãã°ç®¡çãå®è£ ããæ¹æ³ãåŠã³ãŸãã
次ã«ã¯ããã°åéã®éèŠæ§ãšããã®ããã®ããŒã«ã§ããElasticsearchãšLogstashã®äœ¿ç𿹿³ã玹ä»ããŸããDockerãæŽ»çšããŠElasticsearchãšLogstashãã€ã³ã¹ããŒã«ããLogstashAppenderãéããŠãã°ãElasticsearchã«è»¢éããéçšãå®ç¿ããŸãã忣ç°å¢ã§ãã°ãå¹ççã«åéã»ç®¡çããæ¹æ³ãåŠã³ãElasticsearchã§åéããããã°ã广çã«ç¢ºèªããæ¹æ³ãç¿åŸããŸãã
æåŸã«ããã°ã®å¯èŠåãšæŽ»çšæ¹æ³ãæ±ããŸããKibanaãæŽ»çšããŠãã°ããŒã¿ãå¯èŠåããããã·ã¥ããŒããéããŠãªã¢ã«ã¿ã€ã ã§ãã°ãã¢ãã¿ãªã³ã°ããæ¹æ³ãåŠã³ãŸãããµãŒãã¹ããã¹ãæ å ±ããã°ããŒã¿ã«è¿œå ããŠãã°ã®å¯èªæ§ãé«ããã¢ã©ãŒãèšå®ãéããŠãšã©ãŒçºçæã«è¿ éã«å¯Ÿå¿ã§ããã·ã¹ãã ãæ§ç¯ããæ¹æ³ãåŠç¿ããŸãããŸããJenkinsãšé£æºããŠSlackã§éç¥ãåãåãå®ç¿ãéããŠãå®åã§ããã«æŽ»çšã§ãããã°ã¢ãã¿ãªã³ã°ç°å¢ãæ§ç¯ããããšãã§ããŸãã
ãã®è¬çŸ©ã¯ããã°ç®¡çã®åºç€ããé«åºŠãªèšå®ãŸã§äœç³»çã«åŠç¿ãããéçºè ããšã³ãžãã¢ã«ãšã£ãŠãå¿ èŠäžå¯æ¬ ãªå 容ãæäŸããŸãã广çãªãã°ç®¡çãéããŠã·ã¹ãã ã®å®å®æ§ãé«ããåé¡çºçæã«è¿ éã«å¯Ÿå¿ã§ããèœåã身ã«ä»ããããã¹ãŠã®æ¹ã«ã倧ããªå©ããšãªãã§ãããã
<configuration>
<property name="LOG_FILE" value="application.log"/>
<!-- Logstashã«éä¿¡ããAppender -->
<appender name="LOGSTASH" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
<destination>localhost:5044</destination>
<encoder class="net.logstash.logback.encoder.LogstashEncoder" />
</appender>
<!-- ã³ã³ãœãŒã«åºå -->
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<!-- ãã¡ã€ã«åºå -->
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_FILE}</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>application.%d{yyyy-MM-dd_HH-mm}.log.gz</fileNamePattern>
<maxHistory>5</maxHistory>
</rollingPolicy>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<!-- Loggerèšå® -->
<root level="trace">
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE" />
<appender-ref ref="LOGSTASH" />
</root>
</configuration>ã©ã®ãããªæ å ±ããã°ãšããŠæ®ãã¹ãããäŸå€åŠçã«ããããã°ã®åœ¹å²ã倿§ãªãã°ã¬ãã«ã®æå³ãšæŽ»çšæ¹æ³ãåŠç¿ãã广çãªãã°äœæã®åºç€ãåºããŸãã
Logbackã®åºæ¬èšå®ããæŽ»çšãŸã§äœç³»çã«æ±ããŸããSlf4jãšã®é£æºãéããŠãã°ãå¹ççã«ç®¡çãã倿§ãªAppenderãæŽ»çšããŠãã°ãè€æ°ã®ãã¡ã€ã«ã«åé¢ããããæ¥åäœã§ç®¡çãããããæ¹æ³ãå®ç¿ãéããŠåŠã³ãŸãã
ElasticsearchãLogstashãKibanaã§æ§æãããELKã¹ã¿ãã¯ã掻çšãããã°åéãšåææ¹æ³ãåŠã³ãŸããDockerãå©çšããã€ã³ã¹ããŒã«ãããLogstashAppenderãéããŠãã°ãElasticsearchã«è»¢éããKibanaã䜿çšããŠãã°ããŒã¿ãèŠèŠåãããªã¢ã«ã¿ã€ã ã§ã¢ãã¿ãªã³ã°ããæè¡ãç¿åŸããŸãã
ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ããã³ããŒãžã§ã³(OS): Windows 10
䜿çšããŒã«: Intellij Community 2023.2, Google Chrome
äŸãã³ãã³ããªããžããªïŒhttps://github.com/lleellee0/shorten-url-for-logging-example-code
äžèšã®ãªããžããªã®README.mdã«ãé¢é£ããå®ç¿ãªããžããªã®ãªã³ã¯ããŸãšããŠãããŸããã
ãã®è¬çŸ©ã¯JavaãSpring Bootã¢ããªã±ãŒã·ã§ã³ãåºæºã«é²ããããŸãããã ããè¬çŸ©ã®äž»ãªå 容ã¯ã³ãŒãã¬ãã«ããããã°ã®æŠå¿µèª¬æãäžå¿ã§ããããããLogbackèšå®ãã»ã¯ã·ã§ã³ãé€ãã°ãä»ã®èšèªããã¬ãŒã ã¯ãŒã¯ã§å®ç¿ãé²ããŠãåé¡ãªãåè¬ã§ããã¯ãã§ãã
ãµãŒããŒã«ã¢ããããŒãããŠå®ç¿ãè¡ãã®ã§ã¯ãªããããŒã«ã«éçºç°å¢ã®ã¿ã§å®ç¿ãé²ããŸããããŒã«ã«ã§å®ç¿ãè¡ããŸãããå®éã®ãµãŒããŒã«ã¢ããããŒãããéã«ã©ã®ããã«èšå®ã倿Žããã°ãããæ¡å ããŠããããããµãŒããŒã«ã¢ããããŒãããéãåæ§ã®æé ã§èšå®ãå¯èœã§ãã
åè¬äžã«æ°ã«ãªãç¹ãããã°ã質åãæ®ããŠãã ãããã¢ããããŒããå¿ èŠãªå 容ãããã°ãæŽæ°ããããŸãã
åŠç¿å¯Ÿè±¡ã¯
誰ã§ãããïŒ
ã¢ããªã±ãŒã·ã§ã³ã§ã©ã®ãããªãã°ãæ®ãã¹ããç¥ããã人
æ¯åSSHã§ãµãŒããŒã«æ¥ç¶ããŠãã°ã確èªããããšã«ç²ãã人
åæç¥èã
å¿
èŠã§ããããïŒ
Spring Boot ã¢ããªã±ãŒã·ã§ã³ã®éçºçµéš
ãã£ãªã¢èªèšŒ
6,493
åè¬ç
368
åè¬ã¬ãã¥ãŒ
118
åç
4.9
è¬åº§è©äŸ¡
9
è¬åº§
ããã«ã¡ã¯ã
ã¡ã³ã¿ãªã³ã°ãéããŠããžã¥ãã¢éçºè ãé£ããæããæŠå¿µãããã«åãããããäŒãããããã«ã€ããŠæ¥ã æ©ãã§ãããããŒïŒFooïŒãšç³ããŸãã
ãããããé¡ãããããŸãã
çµæŽ
2019. 08 ~ çŸåšïŒã«ã«ãª Javaããã¯ãšã³ããšã³ãžãã¢
2021. 08 ~ çŸåš : programmers ããã¯ãšã³ãããã³ãŒã¹ ã¡ã³ã¿ãŒ
2021. 12 ~ çŸåš : F-Lab Javaããã¯ãšã³ãã¡ã³ã¿ãŒ
æ¬
ãããå°±è·ã®ããã®ããã¯ãšã³ãéçºã with Java(ãªã³ã¯)
ãã®ä»ã®çµæŽãä»ãã©ãããã©ãŒã ã§ã®è¬çŸ©ã¯ã以äžã®GitHubãªã³ã¯ããã確èªããã ããŸãã
GitHub - https://github.com/lleellee0
å šäœ
17ä»¶ â (3æé 27å)
å šäœ
99ä»¶
4.9
99ä»¶ã®åè¬ã¬ãã¥ãŒ
åè¬ã¬ãã¥ãŒ 17
â
å¹³åè©äŸ¡ 4.8
5
3æéã»ã©ã§é«ªãå·ããã®ã«ã¡ããã©ããæéãªã®ã§é±æ«ã«æé€ãèãæ°æã¡ã§èŠãããšåè¬ãå§ããŸããã ^^ ãžã¥ãã¢æä»£ã«log4jãlogbackãslf4jã®åºåã倧å€ã§é£ããèšå®ããŠèŠåŽããŠããèšæ¶ãæãæµ®ãã³ãå€ãã®éçºè ãèŠãŠã»ãããšããèãã«è³Œå ¥ããŠã¿ãŸããã詊è¡é¯èª€ãå€ãçµéšããå 容ããã®ããã«ãããŸãšããŠæŽ»çšããã¢ãã¿ãªã³ã°æ®µéãŸã§ã¹ããŒãªãŒæ¹åŒã§èª¬æããŠãããã®ã§ãããããã説æããä»ã®è¬çŸ©ãããæ²¡å ¥åºŠãé«ãã£ãã ãŸãã§å°æã®çµéšãåŠã¶ãžã¥ãã¢ã®ç«å Žã§èŠããšæã£ãŠäžééäžåºãŠããéçºã®ãã³ããèŠãŠã¿ããš3æéããã£ãšéããŸãããã éçºãå§ããæ¹ãã¿ããªèŠãŠäºåºŠèŠãŠãã ãã^^ ãã°ã¯æã ããªãã®ã©ã€ãã©ã€ã³ãå®ããŸãã ïŒæã éåããããšããããŸããâŠïŒ
Sang Do ParkãããããããšãããããŸãïŒ è¬çŸ©ç޹仿ããã¯ããã«è¬çŸ©ã®åŒ·ã¿ãããã¢ããŒã«ããŠãããããã§ãã ðððð è¬çŸ©ããèããŠãããŠæ¬åœã«ããããšãïŒ æžããŠãããå 容ãä»ã®äººã«ãããã圹ç«ã€ãšæããŸãã
åè¬ã¬ãã¥ãŒ 2
â
å¹³åè©äŸ¡ 5.0
åè¬ã¬ãã¥ãŒ 12
â
å¹³åè©äŸ¡ 4.9
åè¬ã¬ãã¥ãŒ 14
â
å¹³åè©äŸ¡ 5.0
ä¿®æ£æžã¿
5
è¬çŸ©ããšãŠãå匷ã«ãªããŸããïŒ logback, @Sl4jf ã«ã€ããŠããç¥ããã«äœ¿ã£ãŠããã®ã§ãã ä»ã«ãªã£ãŠæŠå¿µã«ã€ããŠç¥ãããšãã§ããŸããïŒ ãããããã®è¬çŸ©ã®å ŽåãåçŽãªåçãç¥èã§çµãããã« ãã°ãå å·¥ããŠã¿ããã CS察å¿ãªã©ãç®çãšããŠãã°ãæ±ã£ãçµéšããããªãã° æ¬åœã«å ±æããªããèãããã€ã³ããå€ãã£ãã§ã ãã®ãããéåžžã«é ·ããªããè¬çŸ©ãèããããã«æããŸã ãšã«ããã倧å€åœ¹ç«ã¡ãŸãããã ãã倿§ãªããŒãã«ã€ããŠè¬çŸ©ãå¶äœããŠããã ããã°ãšæããŸã ðð (ãããã¯è€æ°ã®æè¡ãéçŽããããç¹å®ã®ãã¡ã€ã³å šäœã«é¢ããè¬çŸ©ã§ããã°ããã«è¯ãããšæããŸã)
ãšãããã®è¬çŸ©ããããèãããã ãããããšãããããŸãïŒ è¬çŸ©ãèããªããè¯ãã£ãç¹ãã話ããŠãã ããå¬ããã§ãã:) ãã£ããã£ãŠããæ§ã ãªè¬çŸ©ã¯ãæè¿ãªãŒãã³ããè¬çŸ©ïŒ https://inf.run/XHEvJ ïŒã該åœãããã§ãããä»ã®ããŒãã§ãè¬çŸ©ãäœã£ãŠã¿ãŸãïŒ ããããšãããããŸããïŒ
ç¥èå ±æè ã®ä»ã®è¬åº§ãèŠãŠã¿ãŸãããïŒ
åãåéã®ä»ã®è¬åº§ãèŠãŠã¿ãŸãããïŒ