테이블 목록 조회
검색 조건과 일치하는 로그프레소 소나의 테이블 목록을 조회합니다. 이 작업은 관리자 권한을 요구합니다.
Tip
동일 인스턴스라도 로그프레소 엔터프라이즈에서 생성한 테이블은 로그프레소 소나에 구성 정보가 없으므로 표시되지 않습니다.
필요 권한
사용자 이상의 계정으로 이용할 수 있습니다.
HTTP 요청
GET /api/sonar/tables
cURL 예시
curl -H "Authorization: Bearer <API_KEY>" \
https://HOSTNAME/api/sonar/tables
요청 매개변수
| 키 | 필수 | 타입 | 설명 | 비고 |
|---|---|---|---|---|
| offset | X | 32비트 정수 | 건너뛸 갯수 | 기본값: 0 |
| limit | X | 32비트 정수 | 최대 갯수 | 기본값: 2147483647 |
| keywords | X | 문자열 | 검색 키워드 | table_name 대상으로 검색 |
| schema_code | X | 문자열 | 스키마 코드 | 지정한 스키마를 사용하고 있는 테이블 목록 조회 |
| table_name | X | 문자열 | 테이블 이름 | 특정 테이블 이름으로 필터링 |
| group_guid | X | 문자열 | 그룹 GUID | 특정 테이블 그룹에 속한 테이블 목록 조회 |
정상 응답
{
"total_count": 1,
"tables": [
{
"table_name": "evtx_system",
"layout": "columnar",
"compression": "snappy",
"retention": 180,
"crypto_profile_guid": "b2c3d4e5-f6g7-8901-bcde-f23456789012",
"crypto_profile_name": "Default Crypto Profile",
"encrypted": true,
"min_day": "2021-10-19 00:00:00+0900",
"max_day": "2022-09-14 00:00:00+0900",
"table_size": 7195337,
"index_size": 0,
"ratio": 0.75,
"group_guid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"group_name": "Windows Events"
}
]
}
- total_count (32비트 정수): 검색 결과와 일치하는 전체 건수
- tables (배열): 테이블 목록
- table_name (문자열): 테이블 이름
- layout (문자열): 블록 레이아웃 (
row또는columnar), 기본값:columnar - compression (문자열): 압축 알고리즘 (
deflate또는snappy), 기본값:snappy - retention (32비트 정수): 데이터 보관 기간 (단위: 일), 기본값: 0 (무제한)
- crypto_profile_guid (문자열,
encrypted가true일 때): 암호화 프로파일 GUID - crypto_profile_name (문자열,
encrypted가true일 때): 암호화 프로파일 이름 - encrypted (불리언, 선택적): 암호화 사용 여부
- min_day (문자열, 선택적): 저장된 최소 로그 날짜 (
_time필드 기준) - max_day (문자열, 선택적): 저장된 최대 로그 날짜 (
_time필드 기준) - table_size (64비트 정수): 테이블 데이터 크기 (단위: 바이트)
- index_size (64비트 정수): 인덱스 데이터 크기 (단위: 바이트)
- ratio (64비트 실수): 전체 테이블 중 디스크 사용량 비중 (0~1)
- group_guid (문자열, 선택적): 테이블 그룹 GUID
- group_name (문자열, 선택적): 테이블 그룹 이름
Note
테이블 목록 조회 API에서는 보안상의 이유로 shared_users, shared_groups, node_stats 필드가 제외됩니다. 이 정보가 필요한 경우 테이블 조회 API를 사용하세요.
오류 응답
offset, limit 값이 정수가 아닌 경우
HTTP 상태 코드 400 응답
{
"error_code": "invalid-argument",
"error_msg": "'offset' parameter should be int type"
}
offset, limit 값이 음수인 경우
HTTP 상태 코드 400 응답
{
"error_code": "invalid-argument",
"error_msg": "'offset' must be greater than or equal to 0."
}
offset, limit 값이 최대값을 초과하는 경우
HTTP 상태 코드 400 응답
{
"error_code": "invalid-argument",
"error_msg": "'limit' must be less than or equal to 2147483647."
}
group_guid 값이 GUID 형식이 아닌 경우
HTTP 상태 코드 400 응답
{
"error_code": "invalid-param-type",
"error_msg": "group_guid should be guid type."
}
권한이 없는 경우
HTTP 상태 코드 500 응답
{
"error_code": "illegal-state",
"error_msg": "no-permission"
}