• EnglishEspaรฑolๆ—ฅๆœฌ่ชžํ•œ๊ตญ์–ดPortuguรชs
  • ๋กœ๊ทธ์ธ์ง€๊ธˆ ์‹œ์ž‘ํ•˜๊ธฐ

Parsing log data

๋กœ๊ทธ parsing์€ ์ •์˜ํ•œ ๊ทœ์น™์— ๋”ฐ๋ผ ์ •ํ˜•ํ™”๋˜์ง€ ์•Š์€ ๋กœ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ ์†์„ฑ(ํ‚ค:๊ฐ’ ์Œ)์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ํ”„๋กœ์„ธ์Šค์ž…๋‹ˆ๋‹ค. NRQL ์ฟผ๋ฆฌ์—์„œ ์ด ์†์„ฑ์„ ์‚ฌ์šฉํ•˜๋ฉด ํŽธ๋ฆฌํ•˜๊ฒŒ ๋กœ๊ทธ๋ฅผ ํŒจ์‹ฏํ•˜๊ฑฐ๋‚˜ ํ•„ํ„ฐ๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‰ด๋ ๋ฆญ์€ ํŠน์ • ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์— ๋”ฐ๋ผ ๋กœ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ ์ž๋™์œผ๋กœ ๊ตฌ๋ฌธ ๋ถ„์„ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฌธ์„œ์—์„œ๋Š” ๋กœ๊ทธ ๊ตฌ๋ฌธ ๋ถ„์„์ด ์ž‘๋™ํ•˜๋Š” ๋ฐฉ์‹๊ณผ ์ปค์Šคํ…€ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์„ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์›๋‹ˆ๋‹ค.

GraphQL API์ธ NerdGraph๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋กœ๊ทธ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์„ ์ƒ์„ฑ, ์ฟผ๋ฆฌ ๋ฐ ๊ด€๋ฆฌํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•œ ์œ ์šฉํ•œ ๋„๊ตฌ๋Š” Nerdgraph API ํƒ์ƒ‰๊ธฐ์ž…๋‹ˆ๋‹ค. ๋ณด๋‹ค ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๊ตฌ๋ฌธ ๋ถ„์„์— ๋Œ€ํ•œ NerdGraph ํŠœํ† ๋ฆฌ์–ผ์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

๋กœ๊ทธ ๊ตฌ๋ฌธ ๋ถ„์„์— ๋Œ€ํ•œ 5๋ถ„ ๊ธธ์ด ๋™์˜์ƒ์„ ํ™•์ธํ•ด ๋ณด์‹ญ์‹œ์˜ค.

๊ตฌ๋ฌธ ๋ถ„์„ ์˜ˆ์‹œ

์ข‹์€ ์˜ˆ๋Š” ์ •ํ˜•ํ™”๋˜์ง€ ์•Š์€ ํ…์ŠคํŠธ๋ฅผ ํฌํ•จํ•˜๋Š” ๊ธฐ๋ณธ NGINX ์•ก์„ธ์Šค ๋กœ๊ทธ์ž…๋‹ˆ๋‹ค. ๊ฒ€์ƒ‰ํ•  ๋•Œ ์œ ์šฉํ•˜์ง€๋งŒ ๊ทธ ์™ธ์—๋Š” ๊ทธ๋‹ค์ง€ ์œ ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ์ผ๋ฐ˜์ ์ธ ๋ผ์ธ์˜ ์˜ˆ์ž…๋‹ˆ๋‹ค.

127.180.71.3 - - [10/May/1997:08:05:32 +0000] "GET /downloads/product_1 HTTP/1.1" 304 0 "-" "Debian APT-HTTP/1.3 (0.8.16~exp12ubuntu10.21)"

๊ตฌ๋ฌธ ๋ถ„์„๋˜์ง€ ์•Š์€ ํฌ๋งท์—์„œ๋Š” ๋Œ€๋ถ€๋ถ„์˜ ์งˆ๋ฌธ์— ๋‹ตํ•˜๊ธฐ ์œ„ํ•ด ์ „์ฒด ํ…์ŠคํŠธ ๊ฒ€์ƒ‰์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ตฌ๋ฌธ ๋ถ„์„ ํ›„, ๋กœ๊ทธ๋Š” response code ๋ฐ request URL ๊ฐ™์€ ์†์„ฑ์œผ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.

{
"remote_addr": "93.180.71.3",
"time": "1586514731",
"method": "GET",
"path": "/downloads/product_1",
"version": "HTTP/1.1",
"response": "304",
"bytesSent": 0,
"user_agent": "Debian APT-HTTP/1.3 (0.8.16~exp12ubuntu10.21)"
}

๊ตฌ๋ฌธ ๋ถ„์„์„ ์‚ฌ์šฉํ•˜๋ฉด ํ•ด๋‹น ๊ฐ’์„ ํŒจ์‹ฏํ•˜๋Š” ์ปค์Šคํ…€ ์ฟผ๋ฆฌ๋ฅผ ๋” ์‰ฝ๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์š”์ฒญ URL๋‹น ์‘๋‹ต ์ฝ”๋“œ์˜ ๋ถ„ํฌ๋ฅผ ์ดํ•ดํ•˜๊ณ  ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ํŽ˜์ด์ง€๋ฅผ ๋น ๋ฅด๊ฒŒ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋กœ๊ทธ ๊ตฌ๋ฌธ ๋ถ„์„์˜ ์ž‘๋™ ๋ฐฉ์‹

๋‹ค์Œ์€ ๋‰ด๋ ๋ฆญ์ด ๋กœ๊ทธ ๊ตฌ๋ฌธ ๋ถ„์„์„ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๊ฐ„๋‹จํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค.

๋กœ๊ทธ ๊ตฌ๋ฌธ ๋ถ„์„

์ž‘๋™ ์›๋ฆฌ

๋Œ€์ƒ

  • ๊ตฌ๋ฌธ ๋ถ„์„์€ ์„ ํƒ๋œ ํŠน์ • ํ•„๋“œ์— ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ message ํ•„๋“œ๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ํ˜„์žฌ ๋ฐ์ดํ„ฐ์— ์กด์žฌํ•˜์ง€ ์•Š๋Š” ํ•„๋“œ/์†์„ฑ๊นŒ์ง€ ํฌํ•จํ•ด, ๋ชจ๋“  ํ•„๋“œ/์†์„ฑ์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ฐ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์€ ๊ทœ์น™์ด ๊ตฌ๋ฌธ ๋ถ„์„์„ ์‹œ๋„ํ•  ๋กœ๊ทธ๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” NRQL WHERE ์ ˆ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.
  • ๋งค์นญ ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ฐ„์†Œํ™”ํ•˜๋ ค๋ฉด ๋กœ๊ทธ์— logtype ์†์„ฑ์„ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ logtype ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์ œํ•œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. NRQL WHERE ์ ˆ์—์„œ ํ•˜๋‚˜ ์ด์ƒ์˜ ์†์„ฑ์„ ๋งค์นญ ๊ธฐ์ค€์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‹œ๊ธฐ

  • ๊ตฌ๋ฌธ ๋ถ„์„์€ ๊ฐ ๋กœ๊ทธ ๋ฉ”์‹œ์ง€์— ํ•œ ๋ฒˆ๋งŒ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์ด ๋กœ๊ทธ์™€ ๋งค์น˜ํ•˜๋Š” ๊ฒฝ์šฐ ์„ฑ๊ณตํ•œ ์ฒซ ๋ฒˆ์งธ ๊ทœ์น™๋งŒ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

  • ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์€ ์ˆœ์„œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๋‘˜ ์ด์ƒ์˜ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์ด ๋กœ๊ทธ์™€ ๋งค์น˜๋˜๋Š” ๊ฒฝ์šฐ ๋ฌด์ž‘์œ„๋กœ ํ•˜๋‚˜๊ฐ€ ์„ ํƒ๋ฉ๋‹ˆ๋‹ค. ๋™์ผํ•œ ๋กœ๊ทธ์™€ ๋งค์น˜๋˜์ง€ ์•Š๋„๋ก ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์„ ์ž‘์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • ๊ตฌ๋ฌธ ๋ถ„์„์€ ๋ฐ์ดํ„ฐ๊ฐ€ NRDB์— ๊ธฐ๋ก๋˜๊ธฐ ์ „์— ๋กœ๊ทธ ์ˆ˜์ง‘ ์ค‘์— ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๊ฐ€ ์Šคํ† ๋ฆฌ์ง€์— ๊ธฐ๋ก๋˜๋ฉด ๋” ์ด์ƒ ๊ตฌ๋ฌธ ๋ถ„์„์„ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

  • ๋ฐ์ดํ„ฐ ๋ณด๊ฐ•์ด ์ด๋ค„์ง€๊ธฐ ์ „์—(

    before

    ) ํŒŒ์ดํ”„๋ผ์ธ์—์„œ ๊ตฌ๋ฌธ ๋ถ„์„์ด ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์— ๋Œ€ํ•œ ๋งค์นญ ๊ธฐ์ค€์„ ์ •์˜ํ•  ๋•Œ๋Š” ์ฃผ์˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์ค€์ด ๊ตฌ๋ฌธ ๋ถ„์„ ๋˜๋Š” ๋ณด๊ฐ•์ด ์ˆ˜ํ–‰๋  ๋•Œ๊นŒ์ง€ ์กด์žฌํ•˜์ง€ ์•Š๋Š” ์†์„ฑ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ๊ฒฝ์šฐ ๋งค์นญ์ด ๋ฐœ์ƒํ•  ๋•Œ ํ•ด๋‹น ๋ฐ์ดํ„ฐ๊ฐ€ ๋กœ๊ทธ์— ํ‘œ์‹œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ, ๊ตฌ๋ฌธ ๋ถ„์„์ด ์‹คํ–‰๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋ฐฉ๋ฒ•

  • ๊ทœ์น™์€ Grok, ์ •๊ทœ์‹ ๋˜๋Š” ์ด ๋‘˜์„ ํ˜ผํ•ฉํ•˜์—ฌ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Grok์€ ๋ณต์žกํ•œ ์ •๊ทœ์‹์„ ์ถ”์ƒํ™”ํ•˜๋Š” ํŒจํ„ด ๋ชจ์Œ์ž…๋‹ˆ๋‹ค.

Grok์„ ์‚ฌ์šฉํ•œ ์†์„ฑ ๊ตฌ๋ฌธ ๋ถ„์„

๊ตฌ๋ฌธ ๋ถ„์„ ํŒจํ„ด์€ ๋กœ๊ทธ ๋ฉ”์‹œ์ง€ ๊ตฌ๋ฌธ ๋ถ„์„์„ ์œ„ํ•œ ์—…๊ณ„ ํ‘œ์ค€์ธ Grok๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ง€์ •๋ฉ๋‹ˆ๋‹ค.logtype ํ•„๋“œ๊ฐ€ ์žˆ๋Š” ์ˆ˜์‹  ๋กœ๊ทธ๋Š” ๋‚ด์žฅ๋œ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ณผ ๋น„๊ต ํ™•์ธ๋˜๋ฉฐ ๊ฐ€๋Šฅํ•œ ๊ฒฝ์šฐ ์—ฐ๊ฒฐ๋œ Grok ํŒจํ„ด์ด ๋กœ๊ทธ์— ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

Grok์€ ๋ณต์žกํ•œ ๋ฆฌํ„ฐ๋Ÿด ์ •๊ทœ์‹ ๋Œ€์‹  ์‚ฌ์šฉ๋  ๋‚ด์žฅ ๋ฐ ๋ช…๋ช…๋œ ํŒจํ„ด์„ ์ถ”๊ฐ€ํ•˜๋Š” ์ •๊ทœ์‹์˜ ์ƒ์œ„ ์ง‘ํ•ฉ์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์ •์ˆ˜๊ฐ€ ์ •๊ทœ์‹ (?:[+-]?(?:[0-9]+))๊ณผ ๋งค์นญ๋  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ๊ธฐ์–ตํ•  ํ•„์š” ์—†์ด ๋™์ผํ•œ ์ •๊ทœ์‹์„ ๋‚˜ํƒ€๋‚ด๋Š” Grok ํŒจํ„ด INT๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก %{INT}์„ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Grok ํŒจํ„ด์˜ ๊ตฌ๋ฌธ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

%{PATTERN_NAME[:OPTIONAL_EXTRACTED_ATTRIBUTE_NAME[:OPTIONAL_TYPE[:OPTIONAL_PARAMETER]]]}

Where:

  • PATTERN_NAME ์ง€์› Grok ํŒจํ„ด ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ํŒจํ„ด ์ด๋ฆ„์€ ์ •๊ทœ์‹์„ ๋‚˜ํƒ€๋‚ด๋Š” ์‚ฌ์šฉ์ž ์นœํ™”์ ์ธ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค. ํ•ด๋‹น ์ •๊ทœ์‹๊ณผ ์ •ํ™•ํžˆ ๋™์ผํ•ฉ๋‹ˆ๋‹ค.
  • OPTIONAL_EXTRACTED_ATTRIBUTE_NAME์ด ์ œ๊ณต๋œ ๊ฒฝ์šฐ, ํŒจํ„ด ์ด๋ฆ„๊ณผ ๋งค์น˜๋˜๋Š” ๊ฐ’์œผ๋กœ ๋กœ๊ทธ ๋ฉ”์‹œ์ง€์— ์ถ”๊ฐ€๋  ์†์„ฑ์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค. ์ •๊ทœ์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ช…๋ช…๋œ ์บก์ฒ˜ ๊ทธ๋ฃน์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์ œ๊ณต๋˜์ง€ ์•Š์œผ๋ฉด ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์€ ๋ฌธ์ž์—ด์˜ ์˜์—ญ๊ณผ ๋งค์น˜๋˜์ง€๋งŒ ํ•ด๋‹น ๊ฐ’์œผ๋กœ ์†์„ฑ์„ ์ถ”์ถœํ•˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค.
  • OPTIONAL_TYPE ์€ ์ถ”์ถœํ•  ์†์„ฑ ๊ฐ’์˜ ์œ ํ˜•์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์ƒ๋žตํ•˜๋ฉด, ๊ฐ’์ด ๋ฌธ์ž์—ด๋กœ ์ถ”์ถœ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, "File Size: 123"์˜ ๊ฐ’ 123์„ ์ˆซ์ž์—์„œ file_size ์†์„ฑ์œผ๋กœ ์ถ”์ถœํ•˜๋ ค๋ฉด value: %{INT:file_size:int}์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • OPTIONAL_PARAMETER ํŠน์ • ์œ ํ˜•์— ๋Œ€ํ•ด ์„ ํƒ์ ์œผ๋กœ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ๋Š” datetime ์œ ํ˜•๋งŒ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์•„๋ž˜๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

๋งค์น˜๋˜๋Š” ๋ฌธ์ž์—ด์—์„œ ์ •๊ทœ์‹๊ณผ Grok ํŒจํ„ด ์ด๋ฆ„์„ ํ˜ผํ•ฉํ•˜์—ฌ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

์ง€์›๋˜๋Š” Grok ํŒจํ„ด ๋ชฉ๋ก์„ ๋ณด๋ ค๋ฉด ์ด ๋งํฌ๋ฅผ ํด๋ฆญํ•˜๊ณ , ์ง€์›๋˜๋Š” Grok ์œ ํ˜• ๋ชฉ๋ก์„ ๋ณด๋ ค๋ฉด ์—ฌ๊ธฐ๋ฅผ ํด๋ฆญํ•˜์‹ญ์‹œ์˜ค.

๋ณ€์ˆ˜ ์ด๋ฆ„์€ ๋ช…์‹œ์ ์œผ๋กœ ์„ค์ •ํ•ด์•ผ ํ•˜๋ฉฐ %{URI:uri} ๊ฐ™์ด ์†Œ๋ฌธ์ž์—ฌ์•ผ ํ•œ๋‹ค๋Š” ๋ฐ ์œ ์˜ํ•˜์‹ญ์‹œ์˜ค. %{URI} ๋˜๋Š” %{URI:URI} ๊ฐ™์€ ํ‘œํ˜„์‹์€ ์•ˆ๋ฉ๋‹ˆ๋‹ค.

๋กœ๊ทธ ์œ ํ˜•๋ณ„ ์ •๋ฆฌ

๋‰ด๋ ๋ฆญ์˜ ๋กœ๊ทธ ์ˆ˜์ง‘ ํŒŒ์ดํ”„๋ผ์ธ์€ ๋กœ๊ทธ๋ฅผ ๊ตฌ๋ฌธ ๋ถ„์„ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•˜๋Š” ๊ทœ์น™์— ๋กœ๊ทธ ์ด๋ฒคํŠธ๋ฅผ ๋งค์นญ์‹œ์ผœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌ๋ฌธ ๋ถ„์„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ ๋‘ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์œผ๋กœ ๋กœ๊ทธ ์ด๋ฒคํŠธ๋ฅผ ๊ตฌ๋ฌธ ๋ถ„์„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทœ์น™์€ ๋งค์นญ๋˜๋Š” ๋กœ์ง๊ณผ ๊ตฌ๋ฌธ ๋ถ„์„ ๋กœ์ง์˜ ์กฐํ•ฉ์ž…๋‹ˆ๋‹ค. ๋งค์นญ์€ ๋กœ๊ทธ์˜ ์†์„ฑ์— ๋Œ€ํ•œ ์ฟผ๋ฆฌ ๋งค์น˜๋ฅผ ์ •์˜ํ•จ์œผ๋กœ์จ ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค. ๊ทœ์น™์€ ์†Œ๊ธ‰ ์ ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทœ์น™์ด ์ƒ์„ฑ๋˜๊ธฐ ์ „์— ์ˆ˜์ง‘๋œ ๋กœ๊ทธ๋Š” ํ•ด๋‹น ๊ทœ์น™์— ์˜ํ•ด ๊ตฌ๋ฌธ ๋ถ„์„๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋กœ๊ทธ๋ฅผ ๊ตฌ์„ฑํ•˜๊ณ  ๊ตฌ๋ฌธ ๋ถ„์„ํ•˜๋Š” ๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ๋ฐฉ๋ฒ•์€ ๋กœ๊ทธ ์ด๋ฒคํŠธ์— logtype ํ•„๋“œ๋ฅผ ํฌํ•จํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋กœ๊ทธ์— ์ ์šฉํ•  ๋‚ด์žฅ๋œ ๊ทœ์น™์„ ๋‰ด๋ ๋ฆญ์— ์•Œ๋ ค์ค๋‹ˆ๋‹ค.

์ค‘์š”

๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์ด ํ™œ์„ฑํ™”๋˜๋ฉด, ๊ทœ์น™์— ์˜ํ•ด ๊ตฌ๋ฌธ ๋ถ„์„๋œ ๋ฐ์ดํ„ฐ๋Š” ์˜๊ตฌ์ ์œผ๋กœ ๋ณ€๊ฒฝ๋ฉ๋‹ˆ๋‹ค. ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ๋˜๋Œ๋ฆด ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์ œํ•œ

๊ตฌ๋ฌธ ๋ถ„์„์€ ๊ณ„์‚ฐ ๋น„์šฉ์ด ๋งŽ์ด ๋“ค๊ณ  ์œ„ํ—˜์ด ๋”ฐ๋ฆ…๋‹ˆ๋‹ค. ๊ณ„์ •์— ์ •์˜๋œ ์ปค์Šคํ…€ ๊ทœ์น™๊ณผ ํŒจํ„ด์„ ๋กœ๊ทธ์— ๋งค์นญ์‹œํ‚ค๊ธฐ ์œ„ํ•ด ๊ตฌ๋ฌธ ๋ถ„์„์ด ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค. ๋งŽ์€ ์ˆ˜์˜ ํŒจํ„ด์ด๋‚˜ ์ž˜๋ชป ์ •์˜๋œ ์ปค์Šคํ…€ ๊ทœ์น™์€ ์—„์ฒญ๋‚œ ์–‘์˜ ๋ฉ”๋ชจ๋ฆฌ์™€ CPU ๋ฆฌ์†Œ์Šค๋ฅผ ์†Œ๋น„ํ•  ๋ฟ์•„๋‹ˆ๋ผ ์™„๋ฃŒํ•˜๋Š” ๋ฐ๋„ ์˜ค๋žœ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค.

๋ฌธ์ œ๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด, ๊ทœ์น™๋‹น ๋ฉ”์‹œ์ง€๋‹น, ๊ณ„์ •๋‹น 2ํšŒ์˜ ๊ตฌ๋ฌธ ๋ถ„์„ ์ œํ•œ์„ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ œํ•œ

์„ค๋ช…

Per-message-per-rule

๊ทœ์น™๋‹น ๋ฉ”์‹œ์ง€๋‹น ์ œํ•œ์œผ๋กœ ๋‹จ์ผ ๋ฉ”์‹œ์ง€๋ฅผ ๊ตฌ๋ฌธ ๋ถ„์„ํ•˜๋Š” ๋ฐ ์†Œ์š”๋˜๋Š” ์‹œ๊ฐ„์ด 100ms๋ฅผ ์ดˆ๊ณผํ•˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค. ์ด ์ œํ•œ์— ๋„๋‹ฌํ•˜๋ฉด ์‹œ์Šคํ…œ์€ ํ•ด๋‹น ๊ทœ์น™์„ ์‚ฌ์šฉํ•˜์—ฌ ๋กœ๊ทธ ๋ฉ”์‹œ์ง€๋ฅผ ๊ตฌ๋ฌธ ๋ถ„์„ํ•˜๋ ค๋Š” ์‹œ๋„๋ฅผ ์ค‘์ง€ํ•ฉ๋‹ˆ๋‹ค.

์ธ์ œ์ŠคํŠธ ํŒŒ์ดํ”„๋ผ์ธ์€ ํ•ด๋‹น ๋ฉ”์‹œ์ง€์— ์ ์šฉ ๊ฐ€๋Šฅํ•œ ๋‹ค๋ฅธ ๋ชจ๋“  ํ•ญ๋ชฉ์„ ์‹คํ–‰ํ•˜๋ ค๊ณ  ์‹œ๋„ํ•˜๋ฉฐ, ๋ฉ”์‹œ์ง€๋Š” ์—ฌ์ „ํžˆ ์ˆ˜์ง‘ ํŒŒ์ดํ”„๋ผ์ธ์„ ํ†ตํ•ด ์ „๋‹ฌ๋˜๊ณ  NRDB์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ๋กœ๊ทธ ๋ฉ”์‹œ์ง€๋Š” ์›๋ž˜์˜ ๊ตฌ๋ฌธ ๋ถ„์„๋˜์ง€ ์•Š์€ ํฌ๋งท์ž…๋‹ˆ๋‹ค.

Per-account

๊ณ„์ •๋‹น ์ œํ•œ์€ ๊ณ„์ •์ด ๊ณต์ •ํ•œ ๋ฆฌ์†Œ์Šค ํ• ๋‹น๋Ÿ‰ ์ด์ƒ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•จ์ž…๋‹ˆ๋‹ค. ์ด ์ œํ•œ์€ ๊ณ„์ •์— ๋Œ€ํ•œ ๋ถ„๋‹น ๋ชจ๋“ (all) ๋กœ๊ทธ ๋ฉ”์‹œ์ง€๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐ ์†Œ์š”๋œ ์ด ์‹œ๊ฐ„์„ ๊ณ ๋ คํ•ฉ๋‹ˆ๋‹ค.

ํŒ

์ œํ•œ์— ๋„๋‹ฌํ–ˆ๋Š”์ง€ ์‰ฝ๊ฒŒ ํ™•์ธํ•˜๋ ค๋ฉด ๋‰ด๋ ๋ฆญ UI์˜ ์‹œ์Šคํ…œ Limits ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™

๊ณตํ†ต ๋กœ๊ทธ ํฌ๋งท์—๋Š” ์ž˜ ์ •๋ฆฝ๋œ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์ด ์ด๋ฏธ ์ƒ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚ด์žฅ๋œ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์˜ ์ด์ ์„ ์–ป์œผ๋ ค๋ฉด, ๋กœ๊ทธ๋ฅผ ์ „๋‹ฌํ•  ๋•Œ logtype ์†์„ฑ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ’์„ ๋‹ค์Œ ํ‘œ์— ๋‚˜์—ด๋œ ๊ฐ’์œผ๋กœ ์„ค์ •ํ•˜๋ฉด, ํ•ด๋‹น ์œ ํ˜•์˜ ๋กœ๊ทธ์— ๋Œ€ํ•œ ๊ทœ์น™์ด ์ž๋™์œผ๋กœ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

๋‚ด์žฅ๋œ ๊ทœ์น™ ๋ชฉ๋ก

๋‹ค์Œ logtype ์†์„ฑ ๊ฐ’์€ ์‚ฌ์ „ ์ •์˜๋œ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์— ๋งคํ•‘๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, Application Load Balancer๋ฅผ ์ฟผ๋ฆฌํ•˜๋ ค๋ฉด:

  • ๋‰ด๋ ๋ฆญ UI์—์„œ logtype:"alb" ํฌ๋งท์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • NerdGraph์—์„œ logtype = 'alb' ํฌ๋งท์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

๊ฐ ๊ทœ์น™์— ๋Œ€ํ•ด ๊ตฌ๋ฌธ ๋ถ„์„๋˜๋Š” ํ•„๋“œ๋ฅผ ์•Œ์•„๋ณด๋ ค๋ฉด ๋‚ด์žฅ๋œ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์— ๋Œ€ํ•œ ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

logtype

๋กœ๊ทธ ์†Œ์Šค

๋งค์นญ ์ฟผ๋ฆฌ์˜ ์˜ˆ

apache

Apache ์•ก์„ธ์Šค ๋กœ๊ทธ

logtype:"apache"

apache_error

Apache ์˜ค๋ฅ˜ ๋กœ๊ทธ

logtype:"apache_error"

alb

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ ๋กœ๊ทธ

logtype:"alb"

cassandra

Cassandra ๋กœ๊ทธ

logtype:"cassandra"

cloudfront-web

CloudFront (ํ‘œ์ค€ ์›น ๋กœ๊ทธ)

logtype:"cloudfront-web"

cloudfront-rtl

CloudFront (์‹ค์‹œ๊ฐ„ ์›น ๋กœ๊ทธ)

logtype:"cloudfront-rtl"

elb

Elastic ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ ๋กœ๊ทธ

logtype:"elb"

haproxy_http

HAProxy ๋กœ๊ทธ

logtype:"haproxy_http"

ktranslate-health

KTranslate ์ปจํ…Œ์ด๋„ˆ ์ƒํƒœ ๋กœ๊ทธ

logtype:"ktranslate-health"

linux_cron

Linux cron

logtype:"linux_cron"

linux_messages

Linux ๋ฉ”์‹œ์ง€

logtype:"linux_messages"

iis_w3c

Microsoft IIS ์„œ๋ฒ„ ๋กœ๊ทธ - W3C ํฌ๋งท

logtype:"iis_w3c"

mongodb

MongoDB ๋กœ๊ทธ

logtype:"mongodb"

monit

Monit ๋กœ๊ทธ

logtype:"monit"

mysql-error

MySQL ์˜ค๋ฅ˜ ๋กœ๊ทธ

logtype:"mysql-error"

nginx

NGINX ์•ก์„ธ์Šค ๋กœ๊ทธ

logtype:"nginx"

nginx-error

NGINX ์˜ค๋ฅ˜ ๋กœ๊ทธ

logtype:"nginx-error"

postgresql

PostgreSQL ๋กœ๊ทธ

logtype:"postgresql"

rabbitmq

Rabbitmq ๋กœ๊ทธ

logtype:"rabbitmq"

redis

Redis ๋กœ๊ทธ

logtype:"redis"

route-53

Route 53 ๋กœ๊ทธ

logtype:"route-53"

syslog-rfc5424

RFC5424 ํฌ๋งท Syslog

logtype:"syslog-rfc5424"

logtype ์†์„ฑ ์ถ”๊ฐ€

๋กœ๊ทธ๋ฅผ ์ง‘๊ณ„ํ•  ๋•Œ๋Š” ๋กœ๊ทธ๋ฅผ ์‰ฝ๊ฒŒ ๊ตฌ์„ฑ, ๊ฒ€์ƒ‰ ๋ฐ ๊ตฌ๋ฌธ ๋ถ„์„ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•œ ํ•œ ๊ฐ€์ง€ ๊ฐ„๋‹จํ•œ ๋ฐฉ๋ฒ•์€ ์ „์†ก๋  ๋•Œ ๋กœ๊ทธ ๋ฉ”์‹œ์ง€์— ์†์„ฑ logtype์„ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚ด์žฅ๋œ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์€ ํŠน์ • logtype ๊ฐ’์— ๊ธฐ๋ณธ์ ์œผ๋กœ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

ํŒ

logType, logtype ๋ฐ LOGTYPE ํ•„๋“œ๋Š” ๋ชจ๋‘ ๋‚ด์žฅ๋œ ๊ทœ์น™์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๊ฒ€์ƒ‰์„ ์‰ฝ๊ฒŒ ํ•˜๋ ค๋ฉด ์กฐ์ง์ด ๋‹จ์ผ ๊ตฌ๋ฌธ์œผ๋กœ ์ •๋ ฌํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ์€ ์ง€์›๋˜๋Š” ์ „์†ก ๋ฐฉ๋ฒ• ์ค‘ ์ผ๋ถ€์—์„œ ๋ณด๋‚ธ ๋กœ๊ทธ์— logtype์„ ์ถ”๊ฐ€ํ•˜๋Š” ๋ช‡ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์˜ ์˜ˆ์ž…๋‹ˆ๋‹ค.

์ปค์Šคํ…€ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™ ์ƒ์„ฑ ๋ฐ ๋ณด๊ธฐ

๋งŽ์€ ๋กœ๊ทธ๊ฐ€ ๊ณ ์œ ํ•œ ๋ฐฉ์‹์œผ๋กœ ํ˜•์‹ํ™”๋˜๊ฑฐ๋‚˜ ๊ตฌ์กฐํ™”๋ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ๊ตฌ๋ฌธ ๋ถ„์„ํ•˜๋ ค๋ฉด ์ปค์Šคํ…€ ๋กœ์ง์„ ๋นŒ๋“œํ•˜๊ณ  ์ ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋กœ๊ทธ UI์˜ ์™ผ์ชฝ ํƒ์ƒ‰ ๋ฉ”๋‰ด์—์„œ Parsing์„ ์„ ํƒํ•œ ๋‹ค์Œ ์œ ํšจํ•œ NRQL WHERE ์ ˆ๊ณผ Grok ํŒจํ„ด์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ณ ์œ ํ•œ ์ปค์Šคํ…€ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

๊ณ ์œ ํ•œ ์ปค์Šคํ…€ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์„ ๋งŒ๋“ค๊ณ  ๊ด€๋ฆฌํ•˜๋ ค๋ฉด ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

  1. one.newrelic.com > All capabilities > Logs

    ์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

  2. ๋กœ๊ทธ UI ์™ผ์ชฝ ํƒ์ƒ‰ ๋ฉ”๋‰ด์˜

    Manage data

    ์—์„œ

    Parsing

    ์„ ํด๋ฆญํ•œ ๋‹ค์Œ

    Create parsing rule

    ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  3. ์ƒˆ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์˜ ์ด๋ฆ„์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

  4. ๊ตฌ๋ฌธ ๋ถ„์„ํ•  ๊ธฐ์กด ํ•„๋“œ๋ฅผ ์„ ํƒ(๊ธฐ๋ณธ๊ฐ’ = message)ํ•˜๊ฑฐ๋‚˜ ์ƒˆ ํ•„๋“œ ์ด๋ฆ„์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

  5. ๊ตฌ๋ฌธ ๋ถ„์„ํ•˜๋ ค๋Š” ๋กœ๊ทธ์™€ ๋งค์น˜๋˜๋Š” ์œ ํšจํ•œ NRQL WHERE ์ ˆ์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

  6. ๋งค์น˜ํ•˜๋Š” ๋กœ๊ทธ๊ฐ€ ์žˆ์œผ๋ฉด ์„ ํƒํ•˜๊ฑฐ๋‚˜

    Paste log

    ํƒญ์„ ํด๋ฆญํ•˜์—ฌ ์ƒ˜ํ”Œ ๋กœ๊ทธ๋ฅผ ๋ถ™์—ฌ๋„ฃ์Šต๋‹ˆ๋‹ค. ๋กœ๊ทธ UI ๋˜๋Š” ์ฟผ๋ฆฌ ๋นŒ๋”์—์„œ ํ…์ŠคํŠธ๋ฅผ ๋ณต์‚ฌํ•˜์—ฌ ๊ตฌ๋ฌธ ๋ถ„์„ UI์— ๋ถ™์—ฌ๋„ฃ๋Š” ๊ฒฝ์šฐ ํ•ด๋‹น ๋ฒ„์ „์ด

    Unformatted

    ๋ฒ„์ „์ธ์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

  7. ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์„ ์ž…๋ ฅํ•˜๊ณ 

    Output

    ์„น์…˜์˜ ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•˜์—ฌ ์ž‘๋™ํ•˜๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. Grok ๋ฐ ์ปค์Šคํ…€ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์— ๋Œ€ํ•ด ๋ณด๋‹ค ์ž์„ธํžˆ ์•Œ์•„๋ณด๋ ค๋ฉด Grok ํŒจํ„ด์œผ๋กœ ๋กœ๊ทธ๋ฅผ ๊ตฌ๋ฌธ ๋ถ„์„ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๋ฌผ์„ ํ™•์ธํ•ด๋ณด์‹ญ์‹œ์˜ค.

  8. ์ปค์Šคํ…€ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์„ ํ™œ์„ฑํ™”ํ•˜๊ณ  ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ์กด ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์„ ๋ณด๋ ค๋ฉด:

  1. one.newrelic.com > All capabilities > Logs

    ์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

  2. ๋กœ๊ทธ UI ์™ผ์ชฝ ํƒ์ƒ‰ ๋ฉ”๋‰ด์˜

    Manage data

    ์—์„œ

    Parsing

    ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

๋ฌธ์ œ ํ•ด๊ฒฐ

๊ตฌ๋ฌธ ๋ถ„์„์ด ์˜๋„ํ•œ ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ด์œ  ๋•Œ๋ฌธ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • Logic:

    ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™ ๋งค์นญ ๋กœ์ง์ด ์›ํ•˜๋Š” ๋กœ๊ทธ์™€ ์ผ์น˜ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

  • Timing:

    ๊ตฌ๋ฌธ ๋ถ„์„ ๋งค์นญ ๊ทœ์น™์ด ์•„์ง ์กด์žฌํ•˜์ง€ ์•Š๋Š” ๊ฐ’์„ ๋Œ€์ƒ์œผ๋กœ ํ•˜๋Š” ๊ฒฝ์šฐ, ๊ตฌ๋ฌธ ๋ถ„์„์ด ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค. ๋ณด๊ฐ• ํ”„๋กœ์„ธ์Šค์˜ ์ผ๋ถ€๋กœ ๋‚˜์ค‘์— ํŒŒ์ดํ”„๋ผ์ธ์— ๊ฐ’์„ ์ถ”๊ฐ€ํ•˜๋ฉด ์ด๋Ÿฐ ์ผ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • Limits:

    ๋ถ„๋‹น ๊ตฌ๋ฌธ ๋ถ„์„, ํŒจํ„ด, ๋“œ๋กญ ํ•„ํ„ฐ ๋“ฑ์„ ํ†ตํ•ด ๋กœ๊ทธ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์‹œ๊ฐ„์ด ํ•œ์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ตœ๋Œ€ ์‹œ๊ฐ„์ด ์†Œ์š”๋œ ๊ฒฝ์šฐ ์ถ”๊ฐ€ ๋กœ๊ทธ ์ด๋ฒคํŠธ ๋ ˆ์ฝ”๋“œ์— ๋Œ€ํ•œ ๊ตฌ๋ฌธ ๋ถ„์„์„ ๊ฑด๋„ˆ๋œ๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ปค์Šคํ…€ ๊ตฌ๋ฌธ ๋ถ„์„ ๊ทœ์น™์„ ๋งŒ๋“ค๊ฑฐ๋‚˜ ์กฐ์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

Copyright ยฉ 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.