ロギング アカウントのシナリオ - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - データベースの管理

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
2020年6月
Language
日本語
Last Update
2021-03-30
dita:mapPath
ja-JP/rgu1556127906220.ditamap
dita:ditavalPath
ja-JP/rgu1556127906220.ditaval
dita:id
B035-1093
Product Category
Software
Teradata Vantage
状況 結果
以下のうち1つの文を実行依頼します。

BEGIN QUERY LOGGING ON ALL;

または

REPLACE QUERY LOGGING ON ALL;

システムは、“ALL”という名前のユーザーに対して1つのルールを作成します。ALLに関するDBQLルールがシステム内にある場合、ログオンしたすべてのユーザーのすべての問合わせが記録されます。
以下のうち1つの文を実行依頼します。

BEGIN QUERY LOGGING ON ALL ACCOUNT = 'ABC';

または

REPLACE QUERY LOGGING ON ALL ACCOUNT = 'ABC';

'ABC'という文字列のアカウントを使ってログオンするすべてのユーザーがログに記録される。
あるユーザーの特定アカウントに関する問合わせロギングを開始したが、そのアカウントは存在しない BEGIN QUERY LOGGING文は受け入れられる(アカウントは存在しなくてもよい)。

DBQLRules[V]ではユーザーのルールが表示されますが、セッションがユーザー/アカウント/アプリケーションの組に一致しないため、そのユーザーによって実行される問合わせはログに記録されません。

あるユーザーの特定アカウント(ルールを定義)に関する問合わせロギングを開始したが、ルールに一致しないアカウントでそのユーザーがログオンした そのセッションで実行される問合わせに関しては、行が記録されない。
すべてのユーザーのSQLを記録するが、user2がアカウント「ABC」でログオンした場合は除く 以下の文を実行依頼します。

BEGIN QUERY LOGGING WITH SQL ON ALL;

BEGIN QUERY LOGGING WITH NONE ON myuser2 ACCOUNT='abc';

user2がアカウントABCで問合わせを発行した場合、システムはその問合わせを記録しません。ただし、user2がDEFなど別のアカウントでログオンした場合、その問合わせは記録され、DBQLSQLTblにはuser2/DEFの問合わせのSQLが表示されます。

これらのロギングルールを停止するには、規則ごとにEND QUERY文を実行します。user2の規則は、END QUERY LOGGING文を使って別に削除する必要があります。

END QUERY LOGGING ON ALL;

END QUERY LOGGING ON myuser2 ACCOUNT='ABC';

あるユーザーの特定アカウントに関する問合わせロギングを開始し、そのアカウントに拡張アカウント文字列(ASE)コードが含まれる 入力アカウント文字列と拡張されたアカウント文字列の両方がログに記録される ASEコードの詳細については、アカウント文字列変数によるリソース利用データの記録を参照してください。

システムは自動的に最初の空白を削除し、文字列のすべての文字を大文字に変換してDBC.DBQLRuleTblに保存する。

以下を実行する

BEGIN QUERY LOGGING WITH OBJECTS ON ALL ACCOUNT='WebQry&D&H';

各'WebQry&D&H'セッションの間の各クエリーに対する各オブジェクトのDBQLObjTblとDBQLogTblの行。
以下を実行する

BEGIN QUERY LOGGING WITH STEPINFO ON ALL ACCOUNT='$HTactQry&D&H';

各'$HTactQry&D&H'セッションの間の各クエリーに対する各ステップのDBQLStepTblとDBQLogTblの行。
以下を実行する

BEGIN QUERY LOGGING WITH SQL, STEPINFO, OBJECTS LIMIT THRESHOLD=3 ON ALL ACCOUNT='$LStratQry&D&H';

各'$LStratQry&D&H'セッションについて
  • (10分のロギング インターバル内に)3秒未満で完了したすべての問合わせに関して、DBQLSummaryTblにカウント データの1行
  • 3秒より長く実行される各問合わせについて、1行のデータがDBQLSQLTbl、DBQLStepTbl、DBQLObjTbl、DBQLogTblに記録されます
SQL文に複数のアカウント文字列を定義する場合は、カンマを使って区切り、アカウント文字列は括弧で囲みます。構文の詳細については、<Teradata Vantage™ - SQLデータ定義言語-構文規則および例、B035-1144>を参照してください。