system.session_log 시스템 테이블

system.session_log 시스템 테이블

system.session_log 는 성공·실패한 모든 로그인과 로그아웃 이벤트에 대한 정보를 담고 있어요. 이 테이블은 서버 구성에 session_log 섹션이 있는 경우에만 생성돼요.

출처: 문서

본문

ClickHouse Cloud에서의 조회 — 이 시스템 테이블의 데이터는 ClickHouse Cloud에서 각 노드에 로컬로 저장돼요. 따라서 모든 데이터의 완전한 뷰를 얻으려면 clusterAllReplicas 함수가 필요해요. 자세한 내용은 여기 를 참고하세요.

Description

성공·실패한 모든 로그인과 로그아웃 이벤트에 대한 정보를 포함해요.

가용성(Availability) system.session_log 는 서버 구성에 session_log 섹션을 포함하는 경우에만 생성돼요. 이 섹션은 기본 구성에서 주석 처리되어 있어서, 활성화하기 전까지는 테이블에 대한 쿼리가 UNKNOWN_TABLE 오류로 실패해요. 예를 들어:


    system
    session_log
    toYYYYMM(event_date)
    7500

업그레이드 후 로테이션된 테이블 읽기

interface 열거형에 새 값이 추가되면 디스크에 이미 저장된 테이블은 더 오래된 Enum8 정의를 유지해요. 새 버전을 처음 시작할 때 system.session_logsystem.session_log_<N> 으로 이름이 변경되고 그 자리에 현재 스키마를 가진 새 테이블이 생성돼요. 로테이션된 테이블의 스키마는 변경되지 않아요. 로그인이 그 버전의 열거형에 없는 인터페이스를 통해 기록된 경우 — 예를 들어 interface 열거형에 ArrowFlight 가 없던 버전에서의 ArrowFlight 로그인 — 로테이션된 테이블에는 그 자체 열거형이 정의하지 않는 원시 값이 들어 있으며, 그 테이블에서 SELECT 하면 Unexpected value 10 in enum 이 발생해요. 이 테이블을 읽으려면 열거형을 확장해 주세요. 이는 데이터를 다시 쓰지 않는 메타데이터 전용 작업이에요:

ALTER TABLE system.session_log_1
    MODIFY COLUMN interface Enum8('TCP' = 1, 'HTTP' = 2, 'gRPC' = 3, 'MySQL' = 4, 'PostgreSQL' = 5, 'Local' = 6, 'TCP_Interserver' = 7, 'Prometheus' = 8, 'Background' = 9, 'ArrowFlight' = 10);

이 테이블은 언제든지 안전하게 truncate 하거나 drop 할 수 있어요.

Columns

Example

Query

SELECT * FROM system.session_log LIMIT 1 FORMAT Vertical;

Response

Row 1:
──────
hostname:                clickhouse.eu-central1.internal
type:                    LoginSuccess
auth_id:                 45e6bd83-b4aa-4a23-85e6-bd83b4aa1a23
session_id:
event_date:              2021-10-14
event_time:              2021-10-14 20:33:52
event_time_microseconds: 2021-10-14 20:33:52.104247
user:                    default
auth_type:               PLAINTEXT_PASSWORD
profiles:                ['default']
roles:                   []
settings:                [('load_balancing','random'),('max_memory_usage','10000000000')]
client_address:          ::ffff:127.0.0.1
client_port:             38490
interface:               TCP
client_hostname:
client_name:             ClickHouse client
client_revision:         54449
client_version_major:    21
client_version_minor:    10
client_version_patch:    0
failure_reason:
certificate_subjects:    []
certificate_serial:
certificate_issuer:
certificate_not_before:  ᴺᵁᴸᴸ
certificate_not_after:   ᴺᵁᴸᴸ

더 알아보기 (Learn more)