본문으로 건너뛰기

MXQL Open API

Open API를 이용해 MXQL 데이터를 조회하는 방법을 제공합니다.

노트

MXQL에 대한 자세한 내용은 다음 문서를 참조하세요.

MXQL Open API 종류

MXQL을 사용하는 방법은 다음과 같습니다.

  • 직접 MXQL 쿼리를 작성해서 데이터를 조죄하는 방법
  • 다음 문서에서와 같이 'SaaS 서비스에서 제공하는 사전에 정의된 MXQL 쿼리 목록'으로 데이터를 조회하는 방법

따라서 각각의 경우에 사용하는 API의 path가 달라집니다.

MXQL 활용 방법API
직접 MXQL 쿼리를 작성하는 경우MXQL text API
'SaaS 서비스에서 제공하는 사전에 정의된 MXQL 쿼리 목록'을 사용하는 경우(다음 문서 참조)MXQL path API

MXQL Open API 호출하기

Open API 호출 시 헤더에 포함하는 내용은 다음과 같습니다.

구분설정 값비고
헤더x-whatap-tokenAPI 토큰 {{PROJECT API TOKEN}}프로젝트 API토큰: 프로젝트 선택 > 관리 > 프로젝트 관리 > API토큰
x-whatap-pcode프로젝트 코드 {{projectCode}}프로젝트 코드: 프로젝트 선택 > 관리 > 프로젝트 관리 > 프로젝트 코드
주의

MXQL Open API 제한사항

한 번의 요청으로 조회할 수 있는 기간은 최대 31일입니다.

MXQL text API

다음 이미지는 MXQL 실행 결과 예시입니다.

MXQL 실행 결과 예시

POST https://api.whatap.io/open/api/flush/mxql/text

Request
curl --location 'https://api.whatap.io/open/api/flush/mxql/text' \
-H 'x-whatap-token: {{PROJECT API TOKEN}}' \
-H 'x-whatap-pcode: {{projectCode}}' \
-H 'Content-Type: application/json' \
-d '{
"stime": 1639016640000,
"etime": 1639016940000,
"mql": "CATEGORY app_counter\nOID [ $oidFirst, $oidSecond ]\nTAGLOAD\nSELECT\nINJECT sortByOidDesc",
"limit": 2,
"pageKey": "mxql",
"inject": {
"sortByOidDesc": "ORDER {key : [oid], sort :[desc]}"
},
"param": {
"$oidFirst": "1499132250",
"$oidSecond": "1670734023"
}
}'
KeyValue
stime데이터 조회 시작 시간
etime데이터 조회 끝 시간
mql직접 작성한 MXQL 쿼리
limit최대 데이터 조회 수
pageKey문자열 mxql 고정값
injectOptional 다음 문서 참조
예시, { "default": "ORDER {key : [oid], sort : [desc] }"}
paramOptional 다음 문서 참조
예시 : { "$oidFirst": "520111224", "$oidSecond": "1031483086" }
노트

요청 본문에 stime, etime, $oidFirst, $oidSecond 항목은 사용자 환경에 맞는 시간, oid 값으로 적용해야 합니다.

  • 조회된 데이터가 없는 경우

    ResponseBody Example 1
    []
  • 조회된 데이터가 있는 경우

    ResponseBody Example 2
    [
    {
    "time": 1639016640000,
    "pcode": 101,
    "pname": "Virtual",
    "okind": -1085056726,
    "onode": 334634079,
    "oname": "22136-8075",
    "okindName": "ote-virtual-1",
    "onodeName": "node-1",
    "host_ip": "192.168.1.57",
    "container": "ote-8075.service",
    "pid": 22206,
    "type": "java",
    "containerKey": 1876424218,
    "tx_count": 58,
    "tx_error": 0,
    "tx_time": 1643.9138,
    "apdex_satisfied": 41,
    "apdex_tolerated": 16,
    "apdex_total": 58,
    "tx_dbc_time": 13.655172,
    "tx_sql_time": 222.15517,
    "tx_httpc_time": 717.4138,
    "sql_count": 129,
    "sql_error": 0,
    "sql_time": 101.387596,
    "sql_fetch_count": 37621,
    "sql_fetch_time": 4.5187527E-4,
    "httpc_count": 41,
    "httpc_error": 0,
    "httpc_time": 1073.4878,
    "active_tx_count": 20,
    "active_tx_0": 19,
    "active_tx_3": 1,
    "active_tx_8": 0,
    "tps": 13.833333,
    "resp_time": 1628,
    "arrival_rate": 12.6,
    "pack_dropped": 110,
    "metering": 4,
    "_clock_delta_": 180,
    "oid": 1670734023
    },
    {
    "time": 1639016640000,
    "pcode": 101,
    "pname": "Virtual",
    "okind": -933992004,
    "onode": 1693789385,
    "oname": "22134-8074",
    "okindName": "ote-virtual-0",
    "onodeName": "node-0",
    "host_ip": "192.168.1.57",
    "container": "ote-8074.service",
    "pid": 22202,
    "type": "java",
    "containerKey": 2024596057,
    "tx_count": 56,
    "tx_error": 0,
    "tx_time": 1545.4464,
    "apdex_satisfied": 37,
    "apdex_tolerated": 18,
    "apdex_total": 56,
    "tx_dbc_time": 13.375,
    "tx_sql_time": 209.01785,
    "tx_httpc_time": 661.3214,
    "sql_count": 125,
    "sql_error": 0,
    "sql_time": 77.808,
    "sql_fetch_count": 41112,
    "sql_fetch_time": 3.162094E-4,
    "httpc_count": 39,
    "httpc_error": 0,
    "httpc_time": 1138.1538,
    "active_tx_count": 18,
    "active_tx_0": 14,
    "active_tx_3": 4,
    "active_tx_8": 0,
    "tps": 10,
    "resp_time": 2924,
    "arrival_rate": 10.8,
    "pack_dropped": 35,
    "metering": 4,
    "_clock_delta_": 128,
    "oid": 1499132250
    }
    ]

MXQL path API

POST https://api.whatap.io/open/api/flush/mxql/path

Request
# INJECT로 _pk_ 컬럼 추가, param은 사용하지 않음
curl --location 'https://api.whatap.io/open/api/flush/mxql/path' \
-H 'x-whatap-token: {{PROJECT API TOKEN}}' \
-H 'x-whatap-pcode: {{projectCode}}' \
-H 'Content-Type: application/json' \
-d '{
"stime": 1639016640000,
"etime": 1639016940000,
"mql": "/app/act_tx/agent_with_tx",
"limit": 2,
"pageKey": "mxql",
"inject": {
"default": "CREATE {key : _pk_, value : okindName}"
},
"param": {
}
}'
KeyValue
stime데이터 조회 시작 시간
etime데이터 조회 끝 시간
mql다음 문서 참조
limit최대 데이터 조회 수
pageKey문자열 mxql 고정값
injectOptional 다음 문서 참조
예시 : { "default": "ORDER {key : [oid], sort : [desc] }" }
노트

요청 본문에 stime, etime 항목은 사용자 환경에 맞는 시간으로 적용해야 합니다.

  • 조회된 데이터가 없는 경우

    ResponseBody Example 1
    []
  • 조회된 데이터가 있는 경우

    ResponseBody Example 1
    [
    {
    "pcode": 101,
    "pname": "Virtual",
    "oid": -1348176005,
    "oname": "22137-8071",
    "otype": "ap",
    "okind": -1085056726,
    "okindName": "ote-virtual-1",
    "onode": 334634079,
    "onodeName": "node-1",
    "type": "ap",
    "subtype": "java",
    "version": "2.1.0 20211207u",
    "os_name": "Linux",
    "ip": "192.168.1.57",
    "container_id": 842770198,
    "metering": 4,
    "status": "ok",
    "normal": 12,
    "slow": 1,
    "verySlow": 0,
    "total": 13,
    "_pk_": "okindName"
    },
    {
    "pcode": 101,
    "pname": "Virtual",
    "oid": -883058050,
    "oname": "22141-8070",
    "otype": "ap",
    "okind": -933992004,
    "okindName": "ote-virtual-0",
    "onode": 1693789385,
    "onodeName": "node-0",
    "type": "ap",
    "subtype": "java",
    "version": "2.1.0 20211207u",
    "os_name": "Linux",
    "ip": "192.168.1.57",
    "container_id": 624997205,
    "metering": 4,
    "status": "ok",
    "normal": 19,
    "slow": 1,
    "verySlow": 0,
    "total": 20,
    "_pk_": "okindName"
    }
    ]