리눅스 시스템의 syslog 에서 실시간으로 데이터를 수집하는 예제를 살펴보자.

보통 collector와 마크베이스 서버는 다른 장비에서 실행되지만, 이 예제에서는 편의를 위해 동일한 장비에서 실행하는 것을 가정한다.

Collector Manager 실행


Collector manager는 collector들을 제어한다. Collector를 제어하기 위해서 collector manager가 먼저 실행되어야 한다. 아래의 명령으로 collector manager를 실행한다.

[mach@localhost ~]$ machcollectoradmin --startup
Waiting for collector manager starts.
Collector Manager started successfully.

Collector manager가 실행중인지를 알기 위해서 다음의 netstat명령을 실행한다.

[mach@localhost ~]$ netstat -anp | grep "LISTEN "
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
...
tcp 0 0 0.0.0.0:9999 0.0.0.0:* LISTEN 21163/machcollecto
...
[mach@localhost ~]$

목차



Collector Manager 등록


Collector manager를 마크베이스 서버와 연결하기 위해서 마크베이스 서버에 collector manager를 등록한다. 아래의 명령을 machsql을 이용하여 실행한다.

CREATE COLLECTORMANAGER manager_name AT "host_addr:host_port";
  • manager_name : collector manager의 이름. 중복된 값은 허용되지 않는다.
  • host_addr : collector manager가 실행중인 서버의 ip
  • host_port : collector manager가 실행중인 서버의 포트 번호


[mach@localhost ~/mach]$ machsql
=================================================================
    Machbase Client Query Utility
    Release Version x.x.x.official
    Copyright 2015, Machbase Inc. or its subsidiaries.
    All Rights Reserved.
=================================================================
Machbase server address (Default:127.0.0.1):
Machbase user ID (Default:SYS)
Machbase user password:
MACHBASE_CONNECT_MODE=INET, PORT=5656
mach>CREATE COLLECTORMANAGER LOCALHOST AT "127.0.0.1:9999";
Created successfully.

마크베이스 서버에 collector manager를 등록한 이후에는m$sys_collectormanagers 테이블에서 상태를 조회할 수 있다.


mach> SELECT * FROM m$sys_collectormanagers;
MANAGER_ID MANAGER_NAME MANAGER_HOST MANAGER_PORT MANAGER_STATE
------------------------------------------------------------------------------------------------------------------------------
1 LOCALHOST 127.0.0.1 9999 1
[1] row(s) selected.

해당 테이블에서 collector manager의 식별자, 명칭, 포트번호와 주소 및 실행 상태를 조회할 수 있다.


Collector 생성


Collector manager를 등록한 이후, collector객체를 collector manager를 통해서 생성한다.

Collector에 대한 정보는 마크베이스 서버에 저장되고, 그 정보를 조회할 수 있다. 아래의 명령을 machsql을 통해서 실행하여 collector를 생성한다.

CREATE COLLECTOR manager_name.collector_name FROM "path_for_template.tpl";
  • manager_name : 해당 collector를 실행하는 collector manager의 이름
  • collector_name : collector 객체의 이름
  • path_for_template.tpl : collector의 설정 파일 경로. 다양한 샘플 설정파일이 "$MACHBASE_COLLECTOR_HOME/collector" 디렉토리에 있다. 원하는 샘플 파일을 선택하여 수정한 다음, 다른 파일로 저장하여 사용하는 것을 추천한다.

템플릿 파일 준비

템플릿 파일은 Collector의 데이터 소스, 처리 방법, 저장 방법을 기술한 text file이다. 샘플 파일들이 $MACHBASE_COLLECTOR_HOME/collector 디렉토리에 제공된다.

템플릿 파일의 구조

템플릿 파일은 마크베이스 프로퍼티 파일과 유사한 "variable name = value"의 구조로 되어 있다. 각 설정 변수의 자세한 정보는 아래 표와 같다.

Machbase 3.5 버전 이후의 설정 파일은 이전 버전과 호환되지 않는다.


변수 이름설명비고
COLLECT_TYPE데이터 수집 방법데이터 수집 방법을 설정한다. 데이터 수집방법은 다음과 같다. FILE 은 기본 값으로 collector가 설치된 장비의 특정 파일을 지정한다.  SFTP: 원격 SFTP파일 경로, SOCKET: socket 입력 데이터 입력ODBC: ODBC로 설정된 데이터베이스에서 데이터 입력한다.
LOG_SOURCE읽을 로그 파일의 위치읽어들일 데이터 파일의 위치. SFTP 모드에서는 원격 호스트의 절대 경로를 지정해야 한다. SOKET 및 ODBC 모드에서는 사용되지 않는다. 원본 파일을 여러개로 설정하거나 정규 표현식으로 설정하는 것도 가능하다.
SFTP_HOSTSFTP_HOST
SFTP_PORTSFTP_PORT설정하지 않은 경우 22가 기본으로 설정된다.
SFTP_USERSFTP 사용자명anonymous가 기본값으로 설정된다.
SFTP_PASSSFTP 패스워드anonymous가 기본값으로 설정된다.
SOCKET_PORTCollector가 데이터를 입력받는 소켓 포트 번호
SOCKET_PROTOCOLCollector 소켓 프로토콜 종류사용 가능한 값은 TCP와 UDP이며 기본값은 TCP이다.
ODBC_DSNODBC 모드의 DSN".odbc.ini"의 값
ODBC_QUERYODBC 모드의 질의문ODBC 데이터 소스에서 입력 데이터를 얻기 위해 실행하는 Query string
ODBC_SEQ_COLUMNODBC 모드의 증가되는 컬럼 명숫자 컬럼만 가능하다.
LIB_NAME외부 링크 라이브러리 패스아직 사용되지 않는다.
REGEX_PATH입력 데이터를 분석하기 위한 정규 표현식 파일ODBC모드에서는 사용되지 않는다.
PREPROCESS_PATH데이터 선처리용 Python 스크립트 파일의 위치
SLEEP_TIME데이터를 입력 완료후 대기 시간밀리초 단위이며 기본값은 1000이다.
DB_TABLE_NAME입력할 테이블 명
DB_ADDR입력할 데이터베이스의 IP주소
DB_PORT데이터베이스 포트 번호
DB_USER데이터베이스 사용자명
DB_PASS데이터베이스 패스워드
APPEND_MODE데이터 입력 방법 설정과거 버전과의 호환성을 위한 값으로 사용되지 않는다.
AUTO_ADD_COLUMN

테이블 컬럼이 없는 경우 이를 자동으로 생성할 지의 여부

0이면 생성하지 않고 1이면 자동 생성함.


기본값은 1이다.
CREATE_TABLE_MODE

입력 테이블에 대한 연산을 설정한다. (0:아무것도 실행하지 않는다. 1: 기존 테이블을 truncate한다 2 : 테이블을 생성한다. 에러가 발생하면 에러를 trc에 기록하고 계속 진행한다. 3: 테이블을 drop하고 테이블을 재생성한다.)


일반적으로 2로 설정하는 것을 추천한다.
LANG입력 데이터 파일의 인코딩을 지정한다.

사용가능 값은 UTF-8(기본값), CP949(MS949), KSC5601, EUCJP, SHIFTJIS, BIG5, BG231280가 지원된다.

REGEX_SORT입력 파일의 순서를 결정한다.

기본값은 ASC이며 DESC도 가능한다.

ROTATE_FILE_PATHRotation 파일 경로명 설정
ROTATE_FILE_COUNTRotation 파일 숫자 설정
ROTATE_REGEX_SORTRotation 파일의 순서 설정기본값은 ASC임 DESC도 가능한다.


REGEX_PATH, PREPROCESS_PATH는 collector가 실행시에 참조하는 파일이다. 아래는 REGEX_PATH에 설정되는 rgx파일에 대한 설명이다.

변수 이름설명비고
LOG_TYPE정규식 이름수정될 수 있는 값이지만, 데이터 베이스에 함께 저장되므로 값을 유지하는 것이 좋다.
COL_LIST테이블내의 컬럼들의 리스트테이블에 속해있는 컬럼들의 정보
REGEX데이터 분석을 위한 정규표현식
END_REGEX한 레코드의 끝을 의미하는 정규표현식각각의 레코드를 구분하기위한 정규표현식. 설정하지않으면 "\n" 줄바꿈을 기본으로 사용한다.


COL_LIST는 로그 파일과 데이터베이스 컬럼을 연결하는 정보를 기술한다. 정규표현식의 결과와 컬럼을 설정하는 다양한 정보를 설정해야 한다. COL_LIST를 이용하여 복잡한 로그 데이터를 구조화된 테이블 컬럼에 입력할 수 있다.

변수 이름설명비고
NAME컬럼 이름스페이스를 포함하지 않은 문자열이다.
TYPE컬럼의 데이터 타입타입의 이름을 의미한다.
SIZE컬럼의 사이즈컬럼의 실제 지정된 크기를 의미한다. 문자열은 생성된 혹은 생성될 크기에 따라 다른 값을 지정한다.(short (6), int (11), long (20), float (17), double (17), datetime (31), varchar (User-defined), ipv4 (15), ipv6 (45), text (64MB), binary (64MB))
DATE_FORMAT타입이 datetime일 때, datetime 데이터의 형식

내부적으로 "strptime" 함수를 이용해 값을 파싱한다.

e.g.) 'Aug 19 07:56:16' 는 '월 일 시간:분:초'의 포맷을 가진다. 따라서 사용되는 포맷값은 다음과 같다. "%b %d %H:%M:%S"

add) 추가적인 인자로 %0,%1,%2가 존재하며 각각 밀리초, 마이크로초,나노초를 의미를 가지는 세자리 숫자가 입력된다.

USE_INDEX인덱스 생성 여부

타입기반으로 LSM 또는 KEYWORD LSM 인덱스를 생성한다.

0: 생성하지 않는다./ 1: 생성한다.

REGEX_NO정규표현식 내에서의 토큰 번호정규식 파일에서 지정한 REGEX 문법중에 "()" 괄호로 싸인 영역이 하나의 토큰이 된다. 0번은 해당 레코드 데이터 전체를 의미한다. 이후 첫번째 위치한 괄호부터 1번 토큰이 된다.


syslog.tpl 예제

아래에 syslog.tpl파일의 예제를 기술한다. 해당 파일은 $MACHBASE_COLLECTOR_HOME/collector/syslog.tpl에 샘플로 제공된다.

###############################################################################
# Copyright of this product 2013-2023,
# Machbase Inc. or its subsidiaries.
# All Rights reserved
###############################################################################

#
#  This file is for Machbase collector template file.
#

###################################################################
# Input setting
###################################################################

COLLECT_TYPE=FILE <== It specifies a method to collect local data.
LOG_SOURCE=/var/log/syslog <== It specifies a location of source file.

###################################################################
# Process setting
###################################################################

REGEX_PATH=syslog.rgx        <== 정규 표현식 파일의 위치. 
                                 $MACHBASE_HOME/collector/regex/ 를 root 로 둔다.

###################################################################
# Output setting
###################################################################

DB_TABLE_NAME = "syslogtable" <== 테이블 이름 : 데이터가 여기 입력됨
DB_ADDR       = "127.0.0.1"   <== 마크베이스 서버가 작동 중인 IP/PORT
DB_PORT       = 5656
DB_USER       = "SYS"
DB_PASS       = "MANAGER"

# 0: Direct insert
# 1: Prepared insert
# 2: Append
APPEND_MODE=2 <== Data insertion in APPEND mode.

# 0: None, just append.
# 1: Truncate.
# 2: Try to create table. If table already exists, warn it and proceed.
# 3: Drop and create.
CREATE_TABLE_MODE=2 <== Create a table if there is none.


syslog.rgx 파일은 syslog.tpl파일에 설정된 정규표현식 파일이다. rgx 파일을 설정할 때는 절대 경로로 설정하거나 $MACHBASE_COLLECTOR_HOME/collector/regex를 기준으로 한 상대 경로를 설정하면 된다.

###############################################################################
# Copyright of this product 2013-2023,
# Machbase Corporation (Incorporation) or its subsidiaries.
# All Rights reserved
###############################################################################

#
#  This file is for Machbase collector regex file.
#

LOG_TYPE=syslog

COL_LIST= (
     (
        REGEX_NO = 0 <== REGEX 정규표현식의 토큰 번호
        NAME = tm
        TYPE = datetime
        SIZE = 8
        DATE_FORMAT="%b %d %H:%M:%S" <== strptime 함수에서 사용하는 datetime 포맷
         ),
     (
        REGEX_NO = 4
        NAME = host
        TYPE = varchar
        SIZE = 128
        USE_INDEX = 1 <== 인덱스의 사용 여부
         ),
     (
        REGEX_NO = 5
        NAME = msg
        TYPE = varchar
        SIZE = 512
        USE_INDEX = 1
         )
)

# Below is the regular expression to pares syslog data. It may not work properly if it is modified.
REGEX="(([a-zA-Z]+)\s+([0-9]+)\s+([0-9:]*))\s(\S+)\s+([^\n]+)"

END_REGEX="\n"


Collector 생성


아래와 같이 collector "syslog_test"를 생성한다.

mach> CREATE COLLECTOR localhost.syslog_test FROM "/home/mach/mach_collector_home/collector/syslog.tpl";
Created successfully.


Collector 확인


M$SYS_COLLECTORS 테이블에 등록된 collector들의 정보가 있다. "RUN_FLAG" 컬럼 값이 1인 collector는 실행중이며 0이면 실행이 중지된 상태이다.

mach> SELECT collector_name, run_flag FROM m$sys_collectors;
collector_name                            run_flag    
---------------------------------------------------------
SYSLOG_TEST                               0           
[1] row(s) selected.
mach> SELECT * FROM m$sys_collectors;
COLLECTOR_ID MANAGER_NAME                                 COLLECTOR_NAME                            
-----------------------------------------------------------------------------------------------------
LOG_TYPE                                  TABLE_NAME                                
---------------------------------------------------------------------------------------
TEMPLATE_NAME                                                                     COLLECT_TYPE                              
-------------------------------------------------------------------------------------------------------------------------------
COLLECTOR_SOURCE                                                                  
------------------------------------------------------------------------------------
COLLECTOR_LIB                                                                     COL_COUNT   
-------------------------------------------------------------------------------------------------
PREPROCESS_PATH                                                                   
------------------------------------------------------------------------------------
REGEX_PATH                                                                        
------------------------------------------------------------------------------------
REGEX                                                                             
------------------------------------------------------------------------------------
END_REGEX                                                                         
------------------------------------------------------------------------------------
DEFAULT_ADDR                                                                      LANGUAGE                          
-----------------------------------------------------------------------------------------------------------------------
SLEEP_TIME  DB_ADDR                                   DB_PORT     DB_USER                                   
-----------------------------------------------------------------------------------------------------------------
DB_PASS                                   RUN_FLAG    
---------------------------------------------------------
1           LOCALHOST                                 SYSLOG_TEST                               
syslog                                    syslogtable                               
/home/mach/mach_collector_home/collector/syslog.tpl                             FILE                                      
/var/log/syslog                                                                   
NULL                                                                              7           
NULL                                                                              
syslog.rgx                                                                        
(([a-zA-Z]+)\s+([0-9]+)\s+([0-9:]*))\s(\S+)\s+([^\n]+)                            
\n                                                                                
192.168.122.1                                                                     UTF-8                             
1000        127.0.0.1                                 5656        SYS                                       
MANAGER                                   0           
[1] row(s) selected.


Collector 실행


ALTER COLLECTOR manager_name.collector_name START [TRACE];

등록된 collector를 시작하려면 ALTER COLLECTOR 문을 이용한다.

  • manager_name : 등록된 collector manager의 이름
  • collector_name : 실행할 collector의 이름

Collector 실행시 오류가 발생한 경우 $MACHBASE_COLLECTOR_HOME/trc/machcollector.trc 파일을 참고하여 문제 해결을 할 수 있다.

mach> ALTER COLLECTOR localhost.syslog_test START;
Altered successfully.
mach> SELECT collector_name, run_flag FROM m$sys_collectors;
collector_name                            run_flag    
---------------------------------------------------------
SYSLOG_TEST                               1           
[1] row(s) selected.


ALTER COLLECTOR문으로 collector를 시작하면 RUN_FLAG 컬럼 값이 1 변경된 것을 알 수 있다.

Collector를 시작하면 수집된 데이터가 저장되는 log 테이블도 데이터베이스 서버에 생성된다. collector_type, collector_addr, collector_origin, collector_offset 값들은 기본 값으로 설정된다. syslog.tpl 파일에 설정된 tmp, host, msg 컬럼 또한 생성된다.

mach> ALTER COLLECTOR localhost.syslog_test START;
Altered successfully.
mach> SELECT collector_name, run_flag FROM m$sys_collectors;
collector_name                            run_flag    
---------------------------------------------------------
SYSLOG_TEST                               1           
[1] row(s) selected.

Machsql 을 이용하여 질의문을 수행할 때, 마크베이스 서버에 접속하여 실행되는지를 확인해야 한다. 마크베이스 서버와 collector가 다른 장비에 설치된 경우, machsql이 접속하는 서버가 collector인 경우에는 정상적으로 실행이 안될 수 있다.

Collector 실행시 오류가 발생하여 중지된 이후, 재 실행되면 콜렉터는 마지막으로 입력한 데이터의 위치를 읽어 들여서 데이터를 유실하지 않고 나머지 데이터를 계속 입력한다.

데이터 확인

아래 내용은 원본 syslog의 마지막 10건과 데이터와 입력된 데이터를 비교한 것이다.

[mach@localhost ~/mach]$ tail -n 10 /var/log/syslog
Jun 28 21:05:01 localhost CROND[12285]: (root) CMD (LANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg --lock-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok)
Jun 28 21:10:01 localhost CROND[12442]: (root) CMD (LANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg --lock-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok)
Jun 28 21:10:01 localhost CROND[12443]: (root) CMD (/usr/lib64/sa/sa1 1 1)
Jun 28 21:15:01 localhost CROND[12527]: (root) CMD (LANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg --lock-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok)
Jun 28 21:20:01 localhost CROND[12609]: (root) CMD (/usr/lib64/sa/sa1 1 1)
Jun 28 21:20:01 localhost CROND[12608]: (root) CMD (LANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg --lock-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok)
Jun 28 21:25:01 localhost CROND[12707]: (root) CMD (LANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg --lock-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok)
Jun 28 21:25:01 localhost CROND[12708]: (pcp) CMD ( /usr/libexec/pcp/bin/pmlogger_check -C)
Jun 28 21:25:43 localhost su: pam_unix(su:session): session opened for user root by mach(uid=506)
Jun 28 21:26:02 localhost su: pam_unix(su:session): session closed for user root


아래 내용은 마크베이스 서버에 입력된 마지막 10건의 데이터이다.

mach> SELECT tm, msg FROM syslogtable LIMIT 10;
tm                              msg                                                                               
---------------------------------------------------------------------------------------------------------------------
2016-06-28 21:26:02 000:000:000 su: pam_unix(su:session): session closed for user root                            
2016-06-28 21:25:43 000:000:000 su: pam_unix(su:session): session opened for user root by mach(uid=506)          
2016-06-28 21:25:01 000:000:000 CROND[12708]: (pcp) CMD ( /usr/libexec/pcp/bin/pmlogger_check -C)                 
2016-06-28 21:25:01 000:000:000 CROND[12707]: (root) CMD (LANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg --loc  
                                k-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok)              
2016-06-28 21:20:01 000:000:000 CROND[12608]: (root) CMD (LANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg --loc  
                                k-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok)              
2016-06-28 21:20:01 000:000:000 CROND[12609]: (root) CMD (/usr/lib64/sa/sa1 1 1)                                  
2016-06-28 21:15:01 000:000:000 CROND[12527]: (root) CMD (LANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg --loc  
                                k-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok)              
2016-06-28 21:10:01 000:000:000 CROND[12443]: (root) CMD (/usr/lib64/sa/sa1 1 1)                                  
2016-06-28 21:10:01 000:000:000 CROND[12442]: (root) CMD (LANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg --loc  
                                k-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok)              
2016-06-28 21:05:01 000:000:000 CROND[12285]: (root) CMD (LANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg --loc  
                                k-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok)              
[10] row(s) selected.


다음 질의로 collector의 실행 여부를 확인할 수 있다.

mach> SELECT collector_name, run_flag FROM m$sys_collectors;
collector_name                            run_flag    
---------------------------------------------------------
SYSLOG_TEST                               1           
[1] row(s) selected.

Collector 정지


ALTER COLLECTOR manager_name.collector_name STOP;
mach> ALTER COLLECTOR localhost.syslog_test STOP;
Altered successfully.


다음 명령으로 collector를 중지시킬 수 있다.

mach> ALTER COLLECTOR localhost.syslog_test STOP;
Altered successfully.


Collector 삭제


DROP COLLECTOR manager_name.collector_name;
mach> DROP COLLECTOR localhost.syslog_test;
Dropped successfully.

Collector가 삭제된 상황은 다음의 질의로 확인할 수 있다.

mach> SELECT collector_name, run_flag FROM m$sys_collectors;
collector_name                            run_flag    
---------------------------------------------------------
[0] row(s) selected.


Collector 갱신


ALTER COLLECTOR manager_name.collector_name RELOAD;

콜렉터를 생성한 이후, 템플릿 파일을 변경하고 그 내용을 새로 적용할 경우에 사용한다. 실행시 갱신된 템플릿 파일의 내용이 적용된다. 아래 예제는 데이터를 입력할 테이블을 원래 값 대신에 "anothertable"로 바꾼 경우이다.

mach> ALTER COLLECTOR localhost.custom RELOAD;
Altered successfully.

mach> SELECT * FROM m$sys_collectors;
COLLECTOR_ID MANAGER_NAME                                 COLLECTOR_NAME                            
-----------------------------------------------------------------------------------------------------
LOG_TYPE                                  TABLE_NAME                                
---------------------------------------------------------------------------------------
TEMPLATE_NAME                                                                     COLLECT_TYPE                              
-------------------------------------------------------------------------------------------------------------------------------
COLLECTOR_SOURCE                                                                  
------------------------------------------------------------------------------------
COLLECTOR_LIB                                                                     COL_COUNT   
-------------------------------------------------------------------------------------------------
PREPROCESS_PATH                                                                   
------------------------------------------------------------------------------------
REGEX_PATH                                                                        
------------------------------------------------------------------------------------
REGEX                                                                             
------------------------------------------------------------------------------------
END_REGEX                                                                         LANGUAGE                          
-----------------------------------------------------------------------------------------------------------------------
SLEEP_TIME  DB_ADDR                                   DB_PORT     DB_USER                                   
-----------------------------------------------------------------------------------------------------------------
DB_PASS                                   PROCESS_BYTE         PROCESS_RECORD       RUN_FLAG    
-----------------------------------------------------------------------------------------------------
4           LOCALHOST                                 CUSTOM                                    
syslog                                    anothertable                              
syslog.tpl                                                                        FILE                                      
/var/log/syslog                                                                   
NULL                                                                              7           
NULL                                                                              
syslog.rgx                                                                        
(([a-zA-Z]+)\s+([0-9]+)\s+([0-9:]*))\s(\S+)\s+([^\n]+)                            
\n                                                                                UTF-8                             
1000        127.0.0.1                                 5656        SYS                                       
MANAGER                                   0                    0                    0           
[1] row(s) selected.

메타 테이블을 조회하면, 입력 테이블이 anothertable 로 바뀐 것을 알 수 있다.


  • No labels