From 95e2675287b54988e9dbf5fb79793d973e2c0ded Mon Sep 17 00:00:00 2001 From: HKLeeeee Date: Thu, 14 Dec 2023 16:18:46 +0900 Subject: [PATCH 1/7] =?UTF-8?q?chore:=20README.md=20=EB=8D=B0=EB=AA=A8?= =?UTF-8?q?=EC=98=81=EC=83=81=20=EB=A7=81=ED=81=AC=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 326c488..5821e84 100644 --- a/README.md +++ b/README.md @@ -28,9 +28,11 @@
+πŸŽ₯ 데λͺ¨μ˜μƒ + --- # πŸ”Žμ„œλ²„ μ•„ν‚€ν…μ²˜ From 2529c99fc818013d7941fb4819bcf82362a74456 Mon Sep 17 00:00:00 2001 From: HKLeeeee Date: Thu, 14 Dec 2023 19:39:34 +0900 Subject: [PATCH 2/7] =?UTF-8?q?fix:=20[BE]=20java,=20kotlin=20=ED=95=9C?= =?UTF-8?q?=EA=B8=80=20=EC=B6=9C=EB=A0=A5=20=EC=9D=B8=EC=BD=94=EB=94=A9=20?= =?UTF-8?q?=EC=98=A4=EB=A5=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 컴파일 μ‹œ 인코딩 μ˜΅μ…˜ μΆ”κ°€ν•˜μ—¬ ν•΄κ²° --- backEnd/running/src/common/supportLang.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/backEnd/running/src/common/supportLang.ts b/backEnd/running/src/common/supportLang.ts index c079498..533ae1f 100644 --- a/backEnd/running/src/common/supportLang.ts +++ b/backEnd/running/src/common/supportLang.ts @@ -27,7 +27,7 @@ export function languageCommand(language, filePaths): string[] { case 'javascript': return [`node ${filepath}`]; case 'java': - return [`java ${filepath}`]; + return [`java -Dfile.encoding=UTF-8 ${filepath}`]; case 'c': return [`gcc -o ${compile_dist} ${filepath}`, compile_dist]; case 'swift': @@ -35,7 +35,7 @@ export function languageCommand(language, filePaths): string[] { case 'kotlin': return [ `kotlinc ${filepath} -include-runtime -d ${compile_dist}`, - `java -jar ${compile_dist}`, + `java -jar -Dfile.encoding=UTF-8 ${compile_dist}`, ]; } } From 05fa34df865b552498c678240acb82154ba3d656 Mon Sep 17 00:00:00 2001 From: HKLeeeee Date: Thu, 14 Dec 2023 19:43:22 +0900 Subject: [PATCH 3/7] =?UTF-8?q?refactor:=20[BE]=20=EB=A1=9C=EA=B7=B8?= =?UTF-8?q?=EC=84=9C=EB=B9=84=EC=8A=A4=20=EB=A6=AC=ED=8C=A9=ED=86=A0?= =?UTF-8?q?=EB=A7=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit μƒμ„±μžμ— λͺ°λ €μžˆλ˜ κΈ°λŠ₯λ“€ 뢄리 --- .../common/logger/winstonLogger.service.ts | 24 ++++++++++------- .../common/logger/winstonLogger.service.ts | 27 ++++++++++++------- 2 files changed, 33 insertions(+), 18 deletions(-) diff --git a/backEnd/api/src/common/logger/winstonLogger.service.ts b/backEnd/api/src/common/logger/winstonLogger.service.ts index 82a99bf..1b07166 100644 --- a/backEnd/api/src/common/logger/winstonLogger.service.ts +++ b/backEnd/api/src/common/logger/winstonLogger.service.ts @@ -10,17 +10,21 @@ import { ConfigService } from '@nestjs/config'; @Injectable() export class WinstonLogger implements LoggerService { private logger: LoggerService; + private readonly logDir = (() => { + const __dirname = path.resolve(); + return path.join(__dirname, 'logs'); + })(); constructor(private configService: ConfigService) { - const logDir = (() => { - const __dirname = path.resolve(); - return path.join(__dirname, 'logs'); - })(); + const transport = this.getTransport(); + this.logger = this.createLogger(transport); + } + getTransport(): winston.transport[] { const transport: winston.transport[] = [ new winstonDaily({ filename: '%DATE%.log', datePattern: 'YYYY-MM-DD-HH', - dirname: logDir, + dirname: this.logDir, zippedArchive: true, maxSize: '20m', maxFiles: '7d', @@ -28,7 +32,7 @@ export class WinstonLogger implements LoggerService { new winstonDaily({ filename: '%DATE%.error.log', datePattern: 'YYYY-MM-DD-HH', - dirname: logDir + '/error', + dirname: this.logDir + '/error', zippedArchive: true, maxSize: '20m', maxFiles: '7d', @@ -48,19 +52,21 @@ export class WinstonLogger implements LoggerService { transport.push(devConsole); } + return transport; + } + createLogger(transport: winston.transport[]) { const logFormat = printf( ({ level, message, timestamp }) => `${timestamp} ${level}: ${message}`, ); - - this.logger = WinstonModule.createLogger({ + return WinstonModule.createLogger({ format: combine( timestamp({ format: 'YYYY-MM-DD HH:mm:ss.SSS' }), logFormat, ), level: this.configService.get('NODE_ENV') !== 'production' - ? 'silly' + ? 'debug' : 'info', transports: transport, }); diff --git a/backEnd/running/src/common/logger/winstonLogger.service.ts b/backEnd/running/src/common/logger/winstonLogger.service.ts index 1000c72..18a5db9 100644 --- a/backEnd/running/src/common/logger/winstonLogger.service.ts +++ b/backEnd/running/src/common/logger/winstonLogger.service.ts @@ -10,17 +10,21 @@ import { ConfigService } from '@nestjs/config'; @Injectable() export class WinstonLogger implements LoggerService { private logger: LoggerService; + private readonly logDir = (() => { + const __dirname = path.resolve(); + return path.join(__dirname, 'logs'); + })(); constructor(private configService: ConfigService) { - const logDir = (() => { - const __dirname = path.resolve(); - return path.join(__dirname, 'logs'); - })(); + const transport = this.getTransport(); + this.logger = this.createLogger(transport); + } + getTransport(): winston.transport[] { const transport: winston.transport[] = [ new winstonDaily({ filename: '%DATE%.log', datePattern: 'YYYY-MM-DD-HH', - dirname: logDir, + dirname: this.logDir, zippedArchive: true, maxSize: '20m', maxFiles: '7d', @@ -28,7 +32,7 @@ export class WinstonLogger implements LoggerService { new winstonDaily({ filename: '%DATE%.error.log', datePattern: 'YYYY-MM-DD-HH', - dirname: logDir + '/error', + dirname: this.logDir + '/error', zippedArchive: true, maxSize: '20m', maxFiles: '7d', @@ -48,17 +52,22 @@ export class WinstonLogger implements LoggerService { transport.push(devConsole); } + return transport; + } + createLogger(transport: winston.transport[]) { const logFormat = printf( ({ level, message, timestamp }) => `${timestamp} ${level}: ${message}`, ); - - this.logger = WinstonModule.createLogger({ + return WinstonModule.createLogger({ format: combine( timestamp({ format: 'YYYY-MM-DD HH:mm:ss.SSS' }), logFormat, ), - level: 'silly', + level: + this.configService.get('NODE_ENV') !== 'production' + ? 'debug' + : 'info', transports: transport, }); } From ae118c33017d540493c6861332a386e1a6b46d41 Mon Sep 17 00:00:00 2001 From: HKLeeeee Date: Sat, 16 Dec 2023 02:56:47 +0900 Subject: [PATCH 4/7] =?UTF-8?q?chore:=20=EC=95=84=ED=82=A4=ED=85=8D?= =?UTF-8?q?=EC=B2=98=20=EC=9D=B4=EB=AF=B8=EC=A7=80=20=EC=9C=84=EC=B9=98=20?= =?UTF-8?q?=EC=88=98=EC=A0=95=20&=20gif=20=ED=91=9C=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 33 +++++++++++++++++++++++---------- 1 file changed, 23 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 5821e84..e7d3398 100644 --- a/README.md +++ b/README.md @@ -35,47 +35,57 @@ --- -# πŸ”Žμ„œλ²„ μ•„ν‚€ν…μ²˜ -![Untitled](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/019fa58f-c8c0-47f3-87a9-ea7cf36722d0) - # πŸ”Ž μ£Όμš” κΈ°λŠ₯ ### 🐱 ν™”μƒνšŒμ˜ λ°© 생성 λ²„νŠΌμœΌλ‘œ μƒˆλ‘­κ²Œ 방을 λ§Œλ“€κ±°λ‚˜ κ³΅μœ λ°›μ€ λ°© μ½”λ“œλ‘œ 이미 μžˆλŠ” 방에 μ°Έμ—¬ν•  수 μžˆμŠ΅λ‹ˆλ‹€. -![EnterRoom](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/fea34177-cffe-4700-914c-a304d0302f51) +| ![EnterRoom](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/fea34177-cffe-4700-914c-a304d0302f51) | +|---| +| 방에 μž…μž₯ν•˜λŠ” λͺ¨μŠ΅ | λ™λ£Œλ“€κ³Ό ν™”μƒνšŒμ˜λ₯Ό ν•˜λ©° μ†Œν†΅ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
WebRTC P2P둜 ν†΅μ‹ ν•©μ‹œλ‹€.
- ![4λͺ…μž…μž₯](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/323fc7d1-5b4e-455f-923d-5db5855a0146) - + +|![4λͺ…μž…μž₯](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/323fc7d1-5b4e-455f-923d-5db5855a0146)| +|---| +|4λͺ…이 λͺ¨λ‘ μž…μž₯ν•œ λͺ¨μŠ΅| ### 😎 μ½”λ“œ 곡동 νŽΈμ§‘ μ½”λ“œ νŽΈμ§‘κΈ°λ₯Ό 톡해 μ½”λ“œλ₯Ό μž‘μ„±ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
CRDT둜 κ³΅λ™νŽΈμ§‘μ„ κ΅¬ν˜„ν•΄ μ°Έμ—¬ν•œ μ‚¬λžŒλ“€κ³Ό ν•¨κ»˜ νŽΈμ§‘ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
집단 지성을 λ°œνœ˜ν•΄λ³΄μ„Έμš”! - ![crdt](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/42d71ab8-da12-4288-9a5d-47f9524cce96) + |![crdt](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/42d71ab8-da12-4288-9a5d-47f9524cce96)| +|---| +|μ½”λ“œλ₯Ό κ³΅λ™νŽΈμ§‘ν•˜λŠ” λͺ¨μŠ΅| ### πŸ“₯ 문제 보기 문제의 링크λ₯Ό μž…λ ₯ν•΄ 문제λ₯Ό λ³΄λ©΄μ„œ 풀이할 수 μžˆμŠ΅λ‹ˆλ‹€.
크둀링을 ν†΅ν•΄μ„œ μž…λ ₯ν•œ 링크λ₯Ό κ°€μ Έμ˜΅λ‹ˆλ‹€.
λ°±μ€€ μ‚¬μ΄νŠΈλ₯Ό κ°€μž₯ 잘 λ³΄μ—¬μ€λ‹ˆλ‹€.
-![showProm2](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/c2174696-2465-47dd-b8ab-aa47c7e7abbc) + +|![showProm2](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/c2174696-2465-47dd-b8ab-aa47c7e7abbc)| +|---| +|λ°±μ€€ 문제λ₯Ό λΆˆλŸ¬μ˜€λŠ” λͺ¨μŠ΅| ### 🐍 μ½”λ“œ μ‹€ν–‰ μž‘μ„±ν•œ μ½”λ“œλ₯Ό μ‹€ν–‰ν•˜κ³  μ‹€ν–‰ κ²°κ³Όλ₯Ό 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.
μ†ŒμΌ“κ³Ό 메세지 큐λ₯Ό 톡해 μ½”λ“œ 싀행이 μš”μ²­λ©λ‹ˆλ‹€.
지원 μ–Έμ–΄ : `Python` `Javascript` `Java` `C` `Swift` `Kotlin` -![running](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/282bcc84-4045-49f6-a5f7-2e5995483e73) +|![running](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/282bcc84-4045-49f6-a5f7-2e5995483e73)| +|---| +|μž‘μ„±ν•œ μ½”λ“œλ₯Ό μ‹€ν–‰ν•˜λŠ” λͺ¨μŠ΅| ### πŸ’¬ μ±„νŒ… μ±„νŒ…μ„ ν†΅ν•΄μ„œλ„ μ†Œν†΅ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μŒμ„± μ±„νŒ…μ΄ μ–΄λ €μš΄ μƒν™©μ—μ„œλ‚˜ μ°Έκ³ ν•  자료λ₯Ό 보낼 λ•Œ ν™œμš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
Pub/Sub을 ν™œμš©ν•΄ 닀쀑 μ„œλ²„ ν™˜κ²½μ—μ„œλ„ μ±„νŒ…μ„ ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
μ±„νŒ… 쀑 **ν΄λ‘œλ°”X**μ—κ²Œ μ§ˆλ¬Έν•˜κ³  λ‹΅λ³€ 받을 수 μžˆμŠ΅λ‹ˆλ‹€. -![chat](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/a8f14d69-863e-4c6f-8779-ee6422d2dcce) +|![chat](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/a8f14d69-863e-4c6f-8779-ee6422d2dcce)| +|---| +| μ‚¬μš©μž, AI 와 μ±„νŒ…ν•˜λŠ” λͺ¨μŠ΅| # πŸ”Ž 기술적 도전 ### ν”„λ‘ νŠΈμ—”λ“œμ˜ 기술적 도전 @@ -118,6 +128,9 @@ Pub/Sub을 ν™œμš©ν•΄ 닀쀑 μ„œλ²„ ν™˜κ²½μ—μ„œλ„ μ±„νŒ…μ„ ν•  수 μžˆμŠ΅λ‹ˆ [πŸ‘‰ 더 λ§Žμ€ κΈ°μˆ μ •λ¦¬ λ³΄λŸ¬κ°€κΈ°](https://www.notion.so/f4562ec49e0245d2b6ef203588c031ea?v=fbfeb754b1a4471e8ffc174a45c64346&pvs=4) +# πŸ”Žμ„œλ²„ μ•„ν‚€ν…μ²˜ +![Untitled](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/019fa58f-c8c0-47f3-87a9-ea7cf36722d0) + # πŸ”Ž νŒ€ μ†Œκ°œ | J065 μ„œμœ„μ˜ | J094 이동길 | J126 이희경 | J151 μ§€μŠΉλ―Ό | From c25b1b6ff008bc8654a25abe54ce7fc7d79c8cf0 Mon Sep 17 00:00:00 2001 From: HKLeeeee Date: Sat, 16 Dec 2023 02:59:07 +0900 Subject: [PATCH 5/7] chore: markdown table error --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index e7d3398..11d2439 100644 --- a/README.md +++ b/README.md @@ -44,9 +44,12 @@ | ![EnterRoom](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/fea34177-cffe-4700-914c-a304d0302f51) | |---| | 방에 μž…μž₯ν•˜λŠ” λͺ¨μŠ΅ | + + λ™λ£Œλ“€κ³Ό ν™”μƒνšŒμ˜λ₯Ό ν•˜λ©° μ†Œν†΅ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
WebRTC P2P둜 ν†΅μ‹ ν•©μ‹œλ‹€.
+ |![4λͺ…μž…μž₯](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/323fc7d1-5b4e-455f-923d-5db5855a0146)| |---| |4λͺ…이 λͺ¨λ‘ μž…μž₯ν•œ λͺ¨μŠ΅| From 1d61a2dfdcd48ba7852c6235f9ff7e1802235129 Mon Sep 17 00:00:00 2001 From: HKLeeeee Date: Sun, 17 Dec 2023 15:10:04 +0900 Subject: [PATCH 6/7] chore: gif downsizing down : frame rate, size --- README.md | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 11d2439..58c6555 100644 --- a/README.md +++ b/README.md @@ -41,7 +41,7 @@ ### 🐱 ν™”μƒνšŒμ˜ λ°© 생성 λ²„νŠΌμœΌλ‘œ μƒˆλ‘­κ²Œ 방을 λ§Œλ“€κ±°λ‚˜ κ³΅μœ λ°›μ€ λ°© μ½”λ“œλ‘œ 이미 μžˆλŠ” 방에 μ°Έμ—¬ν•  수 μžˆμŠ΅λ‹ˆλ‹€. -| ![EnterRoom](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/fea34177-cffe-4700-914c-a304d0302f51) | +|![EnterRoom](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/10569b04-b729-46d4-8414-9c83c4772330)| |---| | 방에 μž…μž₯ν•˜λŠ” λͺ¨μŠ΅ | @@ -49,8 +49,7 @@ λ™λ£Œλ“€κ³Ό ν™”μƒνšŒμ˜λ₯Ό ν•˜λ©° μ†Œν†΅ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
WebRTC P2P둜 ν†΅μ‹ ν•©μ‹œλ‹€.
- -|![4λͺ…μž…μž₯](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/323fc7d1-5b4e-455f-923d-5db5855a0146)| +|![4inroom-720](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/f17be568-0de8-4a86-a0fe-6c683095ccd5)| |---| |4λͺ…이 λͺ¨λ‘ μž…μž₯ν•œ λͺ¨μŠ΅| @@ -59,7 +58,7 @@ WebRTC P2P둜 ν†΅μ‹ ν•©μ‹œλ‹€.
CRDT둜 κ³΅λ™νŽΈμ§‘μ„ κ΅¬ν˜„ν•΄ μ°Έμ—¬ν•œ μ‚¬λžŒλ“€κ³Ό ν•¨κ»˜ νŽΈμ§‘ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
집단 지성을 λ°œνœ˜ν•΄λ³΄μ„Έμš”! - |![crdt](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/42d71ab8-da12-4288-9a5d-47f9524cce96)| + |![crdt](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/d41dd3d9-5b3c-4093-9a71-d0a336ff2e47)| |---| |μ½”λ“œλ₯Ό κ³΅λ™νŽΈμ§‘ν•˜λŠ” λͺ¨μŠ΅| @@ -68,7 +67,7 @@ CRDT둜 κ³΅λ™νŽΈμ§‘μ„ κ΅¬ν˜„ν•΄ μ°Έμ—¬ν•œ μ‚¬λžŒλ“€κ³Ό ν•¨κ»˜ νŽΈμ§‘ν•  수 크둀링을 ν†΅ν•΄μ„œ μž…λ ₯ν•œ 링크λ₯Ό κ°€μ Έμ˜΅λ‹ˆλ‹€.
λ°±μ€€ μ‚¬μ΄νŠΈλ₯Ό κ°€μž₯ 잘 λ³΄μ—¬μ€λ‹ˆλ‹€.
-|![showProm2](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/c2174696-2465-47dd-b8ab-aa47c7e7abbc)| +|![showProm](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/d5ca027e-4a29-4b32-b8f5-7e56a62bfdfa)| |---| |λ°±μ€€ 문제λ₯Ό λΆˆλŸ¬μ˜€λŠ” λͺ¨μŠ΅| @@ -77,7 +76,7 @@ CRDT둜 κ³΅λ™νŽΈμ§‘μ„ κ΅¬ν˜„ν•΄ μ°Έμ—¬ν•œ μ‚¬λžŒλ“€κ³Ό ν•¨κ»˜ νŽΈμ§‘ν•  수 μ†ŒμΌ“κ³Ό 메세지 큐λ₯Ό 톡해 μ½”λ“œ 싀행이 μš”μ²­λ©λ‹ˆλ‹€.
지원 μ–Έμ–΄ : `Python` `Javascript` `Java` `C` `Swift` `Kotlin` -|![running](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/282bcc84-4045-49f6-a5f7-2e5995483e73)| +|![running](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/0d64245b-4700-46af-8d51-06c8331548ee)| |---| |μž‘μ„±ν•œ μ½”λ“œλ₯Ό μ‹€ν–‰ν•˜λŠ” λͺ¨μŠ΅| @@ -86,7 +85,7 @@ CRDT둜 κ³΅λ™νŽΈμ§‘μ„ κ΅¬ν˜„ν•΄ μ°Έμ—¬ν•œ μ‚¬λžŒλ“€κ³Ό ν•¨κ»˜ νŽΈμ§‘ν•  수 Pub/Sub을 ν™œμš©ν•΄ 닀쀑 μ„œλ²„ ν™˜κ²½μ—μ„œλ„ μ±„νŒ…μ„ ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
μ±„νŒ… 쀑 **ν΄λ‘œλ°”X**μ—κ²Œ μ§ˆλ¬Έν•˜κ³  λ‹΅λ³€ 받을 수 μžˆμŠ΅λ‹ˆλ‹€. -|![chat](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/a8f14d69-863e-4c6f-8779-ee6422d2dcce)| +|![chat](https://github.com/boostcampwm2023/web05-AlgoITNi/assets/84272873/a1401167-5edc-4395-a87b-b62176aebfc3)| |---| | μ‚¬μš©μž, AI 와 μ±„νŒ…ν•˜λŠ” λͺ¨μŠ΅| From 87b8771654114d295ea86f33490f20977ece2239 Mon Sep 17 00:00:00 2001 From: HKLeeeee Date: Sun, 17 Dec 2023 15:33:07 +0900 Subject: [PATCH 7/7] =?UTF-8?q?refactor:=20[BE]=20=EC=BD=94=EB=93=9C=20?= =?UTF-8?q?=ED=83=80=EC=9E=84=EC=95=84=EC=9B=83=20=EB=A6=AC=ED=8C=A9?= =?UTF-8?q?=ED=84=B0=EB=A7=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit timeout : promiseμ—μ„œ μ˜΅μ…˜ λ°©μ‹μœΌλ‘œ μˆ˜μ • --- backEnd/running/src/codes/codes.service.ts | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/backEnd/running/src/codes/codes.service.ts b/backEnd/running/src/codes/codes.service.ts index 5afa818..095cdd7 100644 --- a/backEnd/running/src/codes/codes.service.ts +++ b/backEnd/running/src/codes/codes.service.ts @@ -80,11 +80,9 @@ export class CodesService { try { const childProcess = spawn(commandParts[0], commandParts.slice(1), { env: { STOP: "DON'T TRY TO ATTACK!!! PLZ..." }, + timeout: this.timeOut, + killSignal: this.killSignal, }); - const timer = setTimeout(() => { - this.logger.log('timeout!'); - childProcess.kill(this.killSignal); - }, this.timeOut); childProcess.stdout.on('data', (data) => { stdout.push(data); @@ -96,10 +94,10 @@ export class CodesService { childProcess.on('close', (code, signal) => { this.logger.log(`child process exited with code ${code}, ${signal}`); - clearTimeout(timer); const out = Buffer.concat(stdout).toString(); let err = Buffer.concat(stderr).toString(); if (this.isTimeout(code, signal)) { + this.logger.log('timeout!'); err = Messages.TIMEOUT; } resolve({ stdout: out, stderr: err });