giip
SES Proposal
2 min read

๋ชจ๋‹ˆํ„ฐ๋ง ๋ฐ์ดํ„ฐ ์กฐํšŒ API ๋ ˆํผ๋Ÿฐ์Šค

์„œ๋ฒ„ ๋ฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์‹ค์‹œ๊ฐ„ ์„ฑ๋Šฅ ๋ฉ”ํŠธ๋ฆญ๊ณผ ๊ฐ์‚ฌ ๋กœ๊ทธ๋ฅผ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ์‹์œผ๋กœ ์ถ”์ถœํ•˜๋Š” API๋ฅผ ์•ˆ๋‚ดํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ”Œ ์„œ๋น„์Šค ๋ชจ๋‹ˆํ„ฐ๋ง ํŽ˜์ด์ง€๋กœ ์ด๋™ โ†’

๐Ÿ“‹ ๊ฐœ์š”

์ด API ๋ชจ๋“ˆ์€ GIIP ์—์ด์ „ํŠธ๊ฐ€ ์ˆ˜์ง‘ํ•œ ๋ฐฉ๋Œ€ํ•œ ์„ฑ๋Šฅ ๋ฐ์ดํ„ฐ๋ฅผ ์™ธ๋ถ€ ์‹œ์Šคํ…œ(Grafana, ELK ๋“ฑ)์œผ๋กœ ์—ฐ๋™ํ•˜๊ฑฐ๋‚˜ ๋ถ„์„ํ•˜๊ธฐ ์œ„ํ•œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ” ์ธ์ฆ ๋ฐ ํ—ค๋”

๋ชจ๋“  ์š”์ฒญ์€ ๊ณตํ†ต ์ธ์ฆ ํ—ค๋”๋ฅผ ํฌํ•จํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • Header: x-giip-ak: [Your Access Key]
  • Header: x-giip-sk: [Your Secret Key]

๐Ÿš€ ์ฃผ์š” API ์—”๋“œํฌ์ธํŠธ

1. ์‹ค์‹œ๊ฐ„ ์„œ๋ฒ„ ๋ฉ”ํŠธ๋ฆญ ์กฐํšŒ (Get Real-time Metrics)

  • URL: POST /api/monitoring/server/current
  • ์„ค๋ช…: ํŠน์ • ์„œ๋ฒ„์˜ ๊ฐ€์žฅ ์ตœ์‹  ์„ฑ๋Šฅ ์ƒํƒœ(CPU, MEM, Disk)๋ฅผ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค.
  • Request Body:
{
  "serverIsn": 456
}

2. ์„ฑ๋Šฅ ์ด๋ ฅ ์กฐํšŒ (Get Metric History)

  • URL: POST /api/monitoring/server/history
  • ์„ค๋ช…: ํŠน์ • ๊ธฐ๊ฐ„ ๋™์•ˆ์˜ ์„ฑ๋Šฅ ๋ณ€ํ™” ์ถ”์ด ๋ฐ์ดํ„ฐ๋ฅผ ์‹œ๊ณ„์—ด๋กœ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
  • Request Body:
{
  "serverIsn": 456,
  "startTime": "2026-03-19T00:00:00Z",
  "endTime": "2026-03-19T23:59:59Z",
  "interval": "5m"
}

3. ํ”„๋กœ์„ธ์Šค ๋ชฉ๋ก ์กฐํšŒ (Get Process List)

  • URL: POST /api/monitoring/server/processes
  • ์„ค๋ช…: ์„œ๋ฒ„์—์„œ ํ˜„์žฌ ์‹คํ–‰ ์ค‘์ธ ์ „์ฒด ํ”„๋กœ์„ธ์Šค ๋ชฉ๋ก๊ณผ ์ž์› ์ ์œ ์œจ์„ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค.
  • Request Body:
{
  "serverIsn": 456
}

๐Ÿ” ์‘๋‹ต ๋ฐ์ดํ„ฐ ์˜ˆ์‹œ (Metrics)

{
  "RstVal": 0,
  "RstMsg": "Success",
  "Data": {
    "cpuUsage": 12.5,
    "memUsage": 45.2,
    "diskUsage": 68.1,
    "networkIn": 1024,
    "networkOut": 512
  }
}

๐Ÿ’ก ํ™œ์šฉ ์‚ฌ๋ก€

  • ์ปค์Šคํ…€ ๋Œ€์‹œ๋ณด๋“œ: ํšŒ์‚ฌ ๋‚ด๋ถ€์˜ ํ†ตํ•ฉ ๊ด€์ œ ๋Œ€์‹œ๋ณด๋“œ์— GIIP์˜ ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ๋ฅผ ์ž„๋ฒ ๋”ฉํ•ฉ๋‹ˆ๋‹ค.
  • ์ด์ƒ ์ง•ํ›„ ๋ถ„์„: ์„ฑ๋Šฅ ์ด๋ ฅ API๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ถœํ•˜์—ฌ ๋จธ์‹ ๋Ÿฌ๋‹ ๋ชจ๋ธ์— ์ž…๋ ฅํ•˜๊ณ  ์žฅ์• ๋ฅผ ์˜ˆ์ธกํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ›ก๏ธ Sk3(๊ณ ์„ฑ๋Šฅ ๋กœ๊น…) ํ™œ์šฉ

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

  • ์—”๋“œํฌ์ธํŠธ: https://giipfaw.azurewebsites.net/api/giipApiSk3
  • ์žฅ์ : ๋Œ€๋Ÿ‰์˜ ๋ฉ”ํŠธ๋ฆญ ๋ฐ์ดํ„ฐ๋ฅผ jsondata๋กœ ์ „์†กํ•  ๋•Œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ ์ž˜๋ฆผ ๋ฐฉ์ง€ ๋ฐ ์—๋Ÿฌ ์‹œ ์—์ด์ „ํŠธ ์ธก์˜ ์ƒ์„ธ ๋กœ๊ทธ๋ฅผ ์ž๋™ ์ˆ˜์ง‘ํ•˜์—ฌ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ ํŒŒ์ดํ”„๋ผ์ธ์˜ ์‹ ๋ขฐ์„ฑ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.
  • ํ™œ์šฉ ํŒ: startTime, endTime, interval ๋“ฑ์˜ ๋ณต์žกํ•œ ์กฐํšŒ ์กฐ๊ฑด์„ jsondata์— ๋‹ด์•„ Sk3๋ฅผ ํ˜ธ์ถœํ•˜๋ฉด ์ฟผ๋ฆฌ ํŒŒ๋ผ๋ฏธํ„ฐ ์œ ์‹ค ์—†์ด ์•ˆ์ „ํ•˜๊ฒŒ ํ†ต๊ณ„ ๋ฐ์ดํ„ฐ๋ฅผ ํ™•๋ณดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฌธ์ œ ํ•ด๊ฒฐ

์ฆ์ƒ์›์ธํ•ด๊ฒฐ
์ธ์ฆ ์‹คํŒจ (RstVal์ด 0์ด ์•„๋‹˜)x-giip-ak ๋˜๋Š” x-giip-sk ํ—ค๋” ๋ˆ„๋ฝยท์˜คํƒ€๋‘ ํ—ค๋”๋ฅผ ๋ชจ๋‘ ์œ ํšจํ•œ ํ‚ค ๊ฐ’์œผ๋กœ ํฌํ•จํ•˜์—ฌ ์žฌ์š”์ฒญ
์‘๋‹ต ๋ฐ์ดํ„ฐ๊ฐ€ ๋น„์–ด ์žˆ์Œ์š”์ฒญ Body์˜ serverIsn ๊ฐ’์ด ์ž˜๋ชป๋˜์—ˆ๊ฑฐ๋‚˜ ์ˆซ์ž๊ฐ€ ์•„๋‹˜๋Œ€์ƒ ์„œ๋ฒ„์˜ ์˜ฌ๋ฐ”๋ฅธ serverIsn(์ˆซ์ž)์„ ์ง€์ •
์„ฑ๋Šฅ ์ด๋ ฅ ์กฐํšŒ ๊ฒฐ๊ณผ ์—†์ŒstartTimeยทendTime์ด ISO8601(์˜ˆ: 2026-03-19T00:00:00Z) ํ˜•์‹์ด ์•„๋‹ˆ๊ฑฐ๋‚˜ ๊ธฐ๊ฐ„์ด ์—ญ์ „๋จ์˜ฌ๋ฐ”๋ฅธ ์‹œ๊ฐ„ ํ˜•์‹๊ณผ startTime < endTime์„ ํ™•์ธํ•˜๊ณ  interval(์˜ˆ: 5m)์„ ์ง€์ •
๋Œ€๋Ÿ‰ ์กฐํšŒ ์‹œ ๋ฐ์ดํ„ฐ๊ฐ€ ์ž˜๋ฆผ์ผ๋ฐ˜ ์—”๋“œํฌ์ธํŠธ๋กœ ๋Œ€๋Ÿ‰ jsondata๋ฅผ ์ „์†กgiipApiSk3 ์—”๋“œํฌ์ธํŠธ๋กœ ์ „ํ™˜ํ•˜์—ฌ ๋ฐ์ดํ„ฐ ์†์‹ค ๋ฐฉ์ง€

๋ฒ„์ „: 1.1 ์ตœ์ข… ์—…๋ฐ์ดํŠธ: 2026-04-10 ์†Œ์Šค ํŒŒ์ผ: giipv3/public/help/api-monitoring.ko.md


๊ด€๋ จ ๋ฌธ์„œ: