질의 로그 설정 파일 구문
Essbase 큐브에 대한 쿼리 로깅을 구성하려면 QUERYLOG 매개변수를 사용하여 쿼리 로깅 설정 파일을 구성하여 추적할 차원 및 멤버와 정보를 기록하는 방법을 지정합니다.
질의 로그 설정 파일 이름은 dbname.cfg 형식이어야 합니다. 여기서 dbname은 데이터베이스(큐브)의 이름을 나타냅니다. dbname.cfg 파일은 큐브 디렉토리에 있어야 합니다. 다음 구문을 사용하여 dbname.cfg 파일을 구성합니다.
QUERYLOG [dimension_name]
QUERYLOG NONE GENERATION generation-range
QUERYLOG NONE LEVEL level-range
QUERYLOG GENERATION generation-range
QUERYLOG LEVEL level-range
QUERYLOG LOGPATH path-expression
QUERYLOG LOGFORMAT CLUSTER | TUPLE
QUERYLOG LOGFILESIZE n
QUERYLOG TOTALLOGFILESIZE n
QUERYLOG ON | OFF주:
큐브 디렉토리는 <Application Directory>/app/appname/dbname를 의미합니다. 환경내 <Application Directory> 위치를 모르는 경우,
-
독립적인 Essbase 배포를 사용하는 경우 Essbase 플랫폼의 환경 위치를 참조하십시오.
-
Oracle Cloud Infrastructure Marketplace에서 Essbase 배치를 사용하는 경우 <Application Directory>는
/u01/data/essbase/app입니다.
표 4-1 QUERYLOG 매개변수
| QUERYLOG 매개변수 | 설명 |
|---|---|
| [dimension_name] | 추적할 차원 이름을 식별합니다. 차원 이름 주위의 대괄호가 필요합니다. QUERYLOG [dimension_name]는 차원의 모든 멤버를 기록합니다. 예를 들어, QUERYLOG [Product]는 Product 차원의 모든 멤버를 추적합니다. 각 차원은 별도의 QUERYLOG [dimension_name] 설정에 지정되어야 합니다. |
| 없음 생성 <genlevel_range_val>(표 4-2 참조) | 지정된 생성 범위에서 멤버를 추적하지 못하도록 합니다. 예를 들어, QUERYLOG NONE GENERATION 2는 명명된 차원의 2세대에서 모든 멤버의 추적을 제외합니다. |
| NONE 레벨 <genlevel_range_val>(표 4-2 참조) | 지정된 레벨 범위에서 멤버를 추적하지 못하도록 합니다. 예를 들어, QUERYLOG NONE LEVEL 0-2는 명명된 차원의 레벨 0, 1, 2에 있는 모든 멤버의 추적을 제외합니다. |
| 생성 <genlevel_range_val>(표 4-2 참조) | 지정된 세대 범위의 멤버를 멤버 이름이 아닌 세대 번호별로 추적합니다. 예를 들어, QUERYLOG GENERATION 5-7은 명명된 차원의 5, 6, 7세대 멤버를 로그 파일에 생성 번호별로 기록합니다. |
| 레벨 <genlevel_range_val>(표 4-2 참조) | 지정된 레벨 범위의 멤버를 멤버 이름이 아닌 레벨 번호별로 추적합니다. 예를 들어, QUERYLOG LEVEL -3은 명명된 차원의 레벨 0, 1, 2, 3의 멤버를 로그 파일에 해당 레벨 번호로 기록합니다. |
| 로그 경로 path-expression | 출력 로그 파일의 위치를 지정합니다. 로그 파일 이름은 dbname00001.qlg입니다(예: basic00001.qlg). 로그 경로의 예로는 QUERYLOG LOGPATH /usr/local/Essbaselogs/ 및 QUERYLOG LOGPATH d:\Essbaselogs\querylogs\가 있습니다. 경로 표현식 끝에 백슬래시 \(Windows 디렉토리의 경우) 또는 슬래시 /(UNIX 디렉토리의 경우)를 포함해야 합니다. 그렇지 않으면 질의 로그 파일이 생성되지 않습니다.
기본적으로 로그 출력 파일의 위치는 큐브 디렉토리입니다. LOGPATH path-expression 설정이 누락된 경우 기본값이 사용됩니다. Essbase는 애플리케이션 실행이 중지된 후 로그 정보를 쿼리 로그 파일에 기록합니다. |
| LOGFORMAT CLUSTER | 튜플 | 로그 출력의 형식을 지정합니다. CLUSTER 및 TUPLE은 동일한 로그 정보를 제공하지만 정보를 다르게 표시합니다. CLUSTER는 질의된 차원의 멤버 수에 대한 정보를 제공하고 해당 차원 내에서 질의된 멤버를 나열합니다. TUPLE은 질의된 각 멤버 조합을 나열합니다. 기본적으로 CLUSTER는 로그 형식입니다. TUPLE 형식은 질의된 각 멤버 조합을 나열하므로 TUPLE은 CLUSTER보다 질의 성능에 더 큰 영향을 줄 수 있습니다. 클러스터 형식의 질의 로그 예는 샘플 클러스터 출력을 참조하십시오. 튜플 형식의 질의 로그 예는 샘플 튜플 출력을 참조하십시오. |
| 로그 파일 크기 n | 개별 질의 로그 파일의 최대 크기(MB)를 지정합니다. 최소값은 1MB입니다. 최대값은 2048MB(2GB)입니다. LOGFILESIZE 설정이 누락된 경우 기본적으로 질의 로그 파일 크기는 1MB입니다. 초기 질의 로그 파일 크기가 사양을 초과하는 경우 로그 정보가 새 질의 로그 파일에 추가됩니다. 새 파일이 생성될 때마다 파일 이름이 1씩 증가합니다. |
| TOTALLOGFILESIZE n | 결합된 모든 질의 로그 파일의 최대 크기(MB)를 지정합니다. 최소값은 512MB(1/2GB)입니다. 최대값은 4095MB입니다. TOTALLOGFILESIZE 설정이 누락된 경우 기본적으로 총 질의 로그 파일 크기는 1024MB(1GB)입니다. 질의 로그 파일은 파일 크기 합계가 지정된 최대값을 초과할 때까지 생성됩니다. 최대값을 초과하면 메시지가 표시되고 질의 로깅이 자동으로 해제됩니다. |
| ON | OFF | 질의 로깅 기능을 설정할지 아니면 해제할지 지정합니다. 이 설정이 OFF이거나 누락된 경우 모든 질의 로그 설정이 무시됩니다. 기본적으로 설정은 OFF입니다. |
Generation-range 및 level-range 값(<genlevel_range_val>)은 다음 방법 중 하나로 표시됩니다.
표 4-2 세대 및 레벨 범위 사양
| 생성 범위 또는 레벨 범위 값 | 설명 |
|---|---|
| x | 특정 세대 또는 수준 번호입니다. 예를 들어, QUERYLOG NONE GENERATION 2는 query 로깅에서 생성 2를 제외합니다. |
| x-y | 숫자 x ~ 숫자 y를 포함하는 모든 세대 또는 레벨입니다. 예를 들어, QUERYLOG GENERATION 1-3 또는 QUERYLOG LEVEL 1-3에는 세대 또는 레벨 번호 1, 2, 3이 포함됩니다. |
| -x | generation-range의 경우 1 ~ x 범위 내의 모든 세대입니다. level-range의 경우 0에서 x 사이의 모든 레벨입니다. 예를 들어, QUERYLOG GENERATION -2에는 1세대와 2세대가 포함됩니다. QUERYLOG LEVEL -3에는 레벨 0, 1, 2, 3이 포함됩니다. |
| x- | generation-range의 경우 숫자 x에서 가장 높은 세대까지 범위 내의 모든 세대입니다. level-range의 경우 숫자 x에서 최상위 레벨까지의 범위 내의 모든 레벨입니다. 예를 들어, QUERYLOG 레벨 1은 최상위 레벨까지 레벨 1, 2, 3 등을 포함합니다. |
참고
-
질의 로깅이 사용으로 설정된 경우 큐브에 대한 질의가 느릴 수 있습니다. 성능은 추적되는 멤버 수와 query 크기에 따라 달라집니다.
-
설정 파일 이름이 큐브 이름과 일치하지 않거나 큐브 디렉토리가 아닌 위치에 있는 경우 Essbase는 쿼리 로깅을 무시합니다.
-
설정에서 QUERYLOG ON이 누락되었거나 QUERYLOG OFF가 설정된 경우 질의 로깅이 해제됩니다.
-
생성 및 레벨 설정으로 인해 설정 파일에서 모순이 발생하는 경우 다음 우선 순위 규칙이 적용됩니다.
-
생성 번호(가장 높은 우선순위)
-
수준 번호
-
멤버 이름(가장 낮은 우선 순위)
예를 들어, 멤버가 레벨 1과 세대 2에 모두 속하고 설정 파일에 QUERYLOG GENERATION 2와 QUERYLOG NONE LEVEL 1이 있는 경우 생성 설정이 우선하며 세대 2의 멤버는 세대 번호로 기록됩니다.
-
권고 사항
-
질의 로그 출력을 쉽게 보려면 파일 확장자
.qlg를.xml로 변경하고 브라우저를 사용하여 XML을 봅니다. -
Essbase에서 쿼리 로그
.qlg파일을 예상대로 생성하지 않는 경우 큐브 디렉토리에서dbname.log파일을 보고 쿼리 로그 메시지를 검색합니다.