この章の内容は次のとおりです。
処理情報を表示する主な方法は、GGSCIを使用することです。これらのコマンドの詳細は、Oracle GoldenGateリファレンスfor Windows and UNIXを参照してください。
表18-1 プロセス情報を表示するコマンド
コマンド | 表示内容 |
---|---|
|
実行ステータス、チェックポイント、ラグ概算および環境情報 |
|
実行ステータスおよびポート番号 |
|
システム上のすべてのOracle GoldenGateプロセスに関する |
|
処理量に関する統計(実行した操作の数など)。 |
|
実行ステータス(起動中、実行中、停止済、異常終了済) |
|
実行ステータス |
|
処理された最新レコードとデータソースのタイムスタンプとの間のレイテンシ |
|
関連プロセスの名前、最後に処理されたデータの位置、最大ファイル・サイズ |
|
実行ステータス、子プロセスに関する情報、ポート情報、証跡消去設定 |
|
プロセスと選択したオプションに応じて、メモリー・プール、ラグ、TCP統計、長時間実行トランザクション、プロセス・ステータス、リカバリ進行状況などに関する情報が戻されます。 |
|
破棄ファイルとプロセス・レポートの内容 |
|
Oracle GoldenGateエラー・ログの内容 |
|
INFO ER ext* STATS ER * |
|
静的情報を問い合せて表示します。 |
|
現在実行中のパラメータ値を表示します。 |
長時間実行トランザクションがオープンしているときにExtractが異常終了すると、Extractの再起動時のリカバリに時間がかかることがあります。処理状態をリカバリするため、Extractは、必要に応じて以前のオンライン・ログとアーカイブ・ログを検索し、その長時間実行トランザクションの最初のログ・レコードを検出する必要があります。トランザクションの開始時点が古いほど、一般的にリカバリにかかる時間も長くなり、Extractは停止したように見えることがあります。
Extractのリカバリ状況が適切であることを確認するには、SEND EXTRACT
コマンドをSTATUS
オプション付きで使用します。次のステータス記録のいずれかが表示されるため、リカバリの実行中にExtractがそのログ読取り位置を変更するのに応じて、作業の進行状況を追跡できます。
In recovery[1]
– Extractは、トランザクション・ログのチェックポイントにリカバリ中です。つまり、次のいずれかから読み取っています。
a) BRチェックポイント・ファイル、次にアーカイブ/オンライン・ログから読取り中、
または
b) アーカイブ/オンライン・ログのリカバリ・チェックポイントから読取り中。
In recovery[2]
– Extractは、チェックポイントから証跡の末尾にリカバリ中です。つまり、最後のトランザクションが完全には書き込まれず、トランザクションを再書込みしているときにリカバリ・マーカーが出力証跡に付加されます。
Recovery complete
– リカバリは終了し、通常の処理が再開されます。
ラグ統計は、Oracle GoldenGateプロセスが、ビジネス・アプリケーションによって生成されたデータの量に後れを取らず適切に処理を進めているかどうかを示します。この情報によって、潜在的な問題を診断し、Oracle GoldenGateプロセスのパフォーマンスをチューニングしてソース・データベースとターゲット・データベース間のレイテンシを最小化できます。Oracle GoldenGateをチューニングしてラグを最小化する方法の詳細は、「Oracle GoldenGateのパフォーマンスのチューニング」を参照してください。
Extractのラグとは、(システム・クロックに基づく)Extractがレコードを処理した時刻と、データ・ソース内のそのレコードのタイムスタンプとの差(秒)です。
Replicatのラグとは、(システムクロックに基づく)Replicatが最後のレコードを処理した時刻と、証跡内のそのレコードのタイムスタンプとの差(秒)です。
ラグの統計を表示するには、GGSCIでLAG
コマンドかSEND
コマンドを使用します。詳細は、『Oracle GoldenGate for Windows and UNIXリファレンス』を参照してください。
注意:
INFO
コマンドでもラグ統計は戻されますが、この統計は、処理中の現在のレコードではなく、チェックポイントが指定された最後のレコードから取得された統計です。LAG
やINFO
と比較して正確性の点で劣ります。
LAGREPORTMINUTES
またはLAGREPORTHOURS
パラメータでは、ManagerがExtractおよびReplicatのラグを確認する間隔を指定します。Oracle GoldenGateリファレンスfor Windows and UNIXを参照してください。
LAGCRITICALSECONDS
、LAGCRITICALMINUTES
、またはLAGCRITICALHOURS
パラメータでは、クリティカルとみなすラグしきい値を指定し、しきい値に達したときにエラー・ログに警告メッセージを書き込みます。このパラメータは、ローカル・システムのExtractおよびReplicatプロセスに影響します。Oracle GoldenGateリファレンスfor Windows and UNIXを参照してください。
LAGINFOSECONDS
、LAGINFOMINUTES
またはLAGINFOHOURS
パラメータでは、ラグしきい値を指定します。ラグが指定した値を超えると、Oracle GoldenGateはエラー・ログにラグ情報をレポートします。ラグがLAGCRITICAL
パラメータで指定した値を超えると、Managerはこのラグをクリティカルとしてレポートし、それ以外の場合は情報メッセージとしてレポートします。値ゼロ(0)を指定すると、LAGREPORTMINUTES
またはLAGREPORTHOURS
パラメータで指定した間隔でメッセージがレポートされます。Oracle GoldenGateリファレンスfor Windows and UNIXを参照してください。
デフォルトの自動ハートビート表機能を使用してエンドツーエンドのレプリケーション遅延を監視できます。自動ハートビートは、ハートビート・シード表およびハートビート表のレコードを更新し、ハートビート履歴表
を構築することにより、各ソース・データベースからレプリケーション・ストリームに送信されます。レプリケーション・パスの各レプリケーション・プロセスがこれらのハートビート・レコードを処理して、その情報を更新します。これらのハートビート・レコードは、ターゲット・データベースでハートビート表に挿入されるか、更新されます。
ハートビート表には次の情報が含まれます。
ソース・データベース
宛先データベース
送信レプリケーション・ストリームに関する情報:
パス内のExtract、ポンプ/分散サーバー、およびReplicatプロセスの名前
ハートビート・レコードがレプリケーション・プロセスによって処理されたときのタイムスタンプ。
受信レプリケーション・ストリームに関する情報:
パス内のExtract、ポンプ/分散サーバー、およびReplicatプロセスの名前
ハートビート・レコードがレプリケーション・プロセスによって処理されたときのタイムスタンプ。
ハートビート表とハートビート履歴表の情報を使用して、各レプリケーションの現在と過去の遅延を計算できます。
双方向のGoldenGate構成では、データベースに含まれる近隣へのレプリケーション・パスと同数のエントリがハートビート表にあり、片方向設定ではソース側の表は空です。送信列には、タイムスタンプと送信パス、ローカルExtractおよびダウンストリームのGoldenGateプロセスが含まれます。受信列には、タイムスタンプ、アップストリームのGoldenGateプロセスのパスおよびローカルReplicatが含まれます。
片方向構成では、ターゲット・データベースはハートビート表の受信列のみに移入します。
注意:
自動ハートビート機能はMySQLバージョン5.5ではサポートされていません。
ハートビート表に関連するエンドツーエンド・レプリケーションのフローは、Oracle GoldenGate 12.2.0.1の証跡フォーマットの使用に依存し、次のようになります。
自己記述型の証跡ファイル機能が有効化されていることを確認します(13.4.2項「自己記述型の証跡ファイルの使用方法」を参照)。
ENABLE_HEARTBEAT_TABLE
パラメータを使用して、ハートビート機能を有効にします。これはデフォルトです。
ADD HEARTBEATTABLE
コマンドを使用して、各データベースにハートビート表を追加します。すべてのインスタンスにハートビート表を追加すると、Replicatのバウンスがハートビート機能に十分になります。自動的に移入されるため、表のいずれにも移入しないでください。
ハートビート表およびハートビート・シード表のハートビート・タイムスタンプを更新は、バックグラウンド・ジョブで自動的に行われる必要があります。
(オプション) Oracle Databaseの場合、ハートビート更新はOracle DBMS_SCHEDULER
に依存しているので、これが適切に動作していることを確認する必要があります。DBMS_SCHEDULER
を問い合せるには、次を発行します。
select START_DATE, LAST_START_DATE, NEXT_RUN_DATE from dba_scheduler_jobs
Where job_name
='GG_UPDATE_HEARTBEATS';
次に、NEXT_RUN_DATE
(スケジューラを次回実行する日時)の有効な値を探します。これが過去のタイムスタンプである場合、ジョブは実行されないので修正する必要があります。
スケジューラが機能しない一般的な理由は、パラメータjob_queue_processes
の設定値が低すぎる(通常はゼロ)場合です。ALTER SYSTEM SET JOB_QUEUE_PROCESSES = ##;
(##
はジョブ・キュー・プロセス数)コマンドを使用して、データベースに構成されたjob_queue_processes
の数を増やします。
Extractを実行します。これにより、論理変更レコード(LCR)を受信時に、OUTGOING_EXTRACT
列の値がチェックされます。
Extract名がこの値に一致すると、OUTGOING_EXTRACT_TS
列が更新され、レコードが証跡に入力されます。
Extract名が一致しない場合、LCRは破棄されます。
OUTGOING_EXTRACT
値がNULL
の場合、OUTGOING_EXTRACT_TS
とともに移入され、レコードが証跡に入力されます。
ポンプまたは分散サーバーは、レコードの読取り時にOUTGOING_ROUTING_PATH
列の値をチェックします。この列には分散パスのリストが含まれています。
値がNULL
の場合、列は現在のグループ名(およびパス、ただしこれが分散サーバーの場合) "*"
で更新され、OUTGOING_ROUTING_TS
列を更新して、レコードがそのターゲット証跡ファイルに書き込まれます。
値のリストに"*"
が含まれている場合は、それをgroup name[:pathname],"*"'
で置換して、OUTGOING_ROUTING_TS
列を更新し、レコードがそのターゲット証跡ファイルに書き込まれます。リストの値にアスタリスク(*)が含まれていない場合、ポンプ名がリストにあると、リスト内の関連するgroup name[:pathname],"*"'
ペアに指定されたパスにレコードが送信されます。ポンプ名がリストにない場合は、レコードが破棄されます。
Replicatを実行します。これによりレコードの受信時に、OUTGOING_REPLICA
列の値がチェックされます。
Replicat名が値に一致すると、ハートビート表の行が更新され、レコードが履歴表に挿入されます。
Replicat名が一致しない場合は、レコードが破棄されます。
値がNULL
の場合、Replicatの列マッピングを暗黙的に起動して、ハートビート表とハートビート履歴表の行が更新されます。
Replicatの自動列マッピング
REMOTE_DATABASE = LOCAL_DATABASE INCOMING_EXTRACT = OUTGOING_EXTRACT INCOMING_ROUTING_PATH = OUTGOING_ROUTING_PATH with "*" removed INCOMING_REPLICAT = @GETENV ("GGENVIRONMENT", "GROUPNAME") INCOMING_HEARTBEAT_TS = HEARTBEAT_TIMESTAMP INCOMING_EXTRACT_TS = OUTGOING_EXTRACT_TS INCOMING_ROUTING_TS = OUTGOING_ROUTING_TS INCOMING_REPLICAT_TS = @DATE ('UYYYY-MM-DD HH:MI:SS.FFFFFF','JTSLCT',@GETENV ('JULIANTIMESTAMP')) LOCAL_DATABASE = REMOTE_DATABASE OUTGOING_EXTRACT = INCOMING_EXTRACT OUTGOING_ROUTING_PATH = INCOMING_ROUTING_PATH OUTGOING_HEARTBEAT_TS = INCOMING_HEARTBEAT_TS OUTGOING_REPLICAT = INCOMING_REPLICAT OUTGOING_HEARTBEAT_TS = INCOMING_HEARTBEAT_TS
OUTGOING_ROUTING_TS
の1列しかありません。レコードが複数のポンプをパス・スルーしてからReplicatによって適用される場合、各ポンプではOUTGOING_ROUTING_TS
列を上書きして、計算するポンプ遅延を1つのポンプに限定せずに、PUMP_PATH
で指定されたすべてのポンプの遅延を参照するようにします。
その他の考慮事項:
ハートビートがシステムを流れる際の遅延の計算は、ソース・システムとターゲット・システムのクロックが正確に設定されているかどうかに依存します。ターゲット・システムがソース・システムよりも進んでいると、遅延が負の値になる可能性があります。クロックの差異に気付いて修正する措置を取れるよう、遅延は負の数値として表示されます。
システムを流れるタイムスタンプはUTCで設定されています。タイムスタンプにはタイムゾーンが関連付けられていないので、各コンポーネントが異なるタイムゾーンに設定されている場合でも、ハートビート表を表示するときは、すぐに遅延を表示できます。基礎となる表を基に必要なビューを書き込むことができます。UTCが推奨されます。
すべてのハートビート・エントリはUTF-8で証跡に書き込まれます。
送信パスと受信パスを組み合せて一意に行が特定されます。つまり、送信パスが同じで受信パスが異なる2つの行がある場合、2つの一意のエントリとみなされます。
ハートビート表の列を示します。
名前 | NULLかどうか | タイプ |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ハートビート・シード表のHEARTBEAT_TIMESTAMP
列は、データベース・ジョブで定期的に更新する必要があります。デフォルトのハートビート間隔は1分で、この間隔はGGSCIまたは管理サーバー・コマンドを使用して指定またはオーバーライドできます。Oracle Databaseの場合、データベース・ジョブは自動的に作成されます。他のすべてのサポート対象データベースでは、データベース固有のスケジューラ機能を使用してハートビート・タイムスタンプを更新するバックグラウンド・ジョブを作成する必要があります。
ハートビート履歴表はジョブを使用して定期的にパージされます。デフォルトの間隔は30日で、この間隔はGGSCIまたは管理サーバー・コマンドを使用して指定またはオーバーライドできます。Oracle Databaseの場合、データベース・ジョブは自動的に作成されます。他のすべてのサポート対象データベースでは、データベース固有のスケジューラ機能を使用してハートビート履歴表をパージするバックグラウンド・ジョブを作成する必要があります。
次のことをお薦めします。
すべてのデータベースで同じハートビート頻度を使用して診断を容易にします。
容量に問題がある場合は保存時間を調整します。
デフォルトのハートビート表の頻度を保持します。頻度を30から60秒に設定すると、ほとんどのワークロードで最適な結果をもたらします。
遅延履歴統計を使用して遅延および期間の情報を収集します。
ハートビート表コマンドを使用して、次のようにOracle GoldenGateの自動ハートビート機能を制御できます。
表18-2 ハートビート表コマンド
コマンド | 説明 |
---|---|
|
自動ハートビート機能に必要なオブジェクトを作成します。 |
|
既存のハートビート・オブジェクトを変更します。 |
|
既存のハートビート・オブジェクトを削除します。 |
|
ハートビート表内のエントリを削除します。 |
|
ハートビート表情報を表示します。 |
詳細は、Oracle GoldenGate Oracle GoldenGateリファレンスfor Windows and UNIXを参照してください。
GGSCIでSTATS
コマンドを使用すると、Oracle GoldenGateプロセスによって処理されているデータ量と、そのデータ量がOracle GoldenGateシステムを通じて移動されている速度を表示できます。この情報によって、潜在的な問題を診断し、Oracle GoldenGateプロセスのパフォーマンスをチューニングできます。それらのコマンドには、出力の選択やフィルタリングに使用できる様々なオプションがあります。
STATS
コマンドには、STATS EXTRACT
、STATS REPLICAT
、STATS ER
の各コマンドがあります。Oracle GoldenGateリファレンスfor Windows and UNIXを参照してください。
SEND EXTRACT
またはSEND REPLICAT
コマンドにREPORT
オプションを指定することで、いつでもレポート・ファイルに仮統計を送信できます。Oracle GoldenGateリファレンスfor Windows and UNIXを参照してください。
Oracle GoldenGateのエラー・ログを使用して、次の情報を表示できます。
GGSCIコマンドの履歴
起動および停止したOracle GoldenGateプロセス
実行された処理
発生したエラー
情報メッセージおよび警告メッセージ
エラー・ログにはイベントが発生順に記録されているため、エラーの(1つ以上の)原因を検出する場合に役立ちます。たとえば、次の情報を検索できます。
ユーザーがプロセスを停止したこと
プロセスがTCP/IPまたはデータベース接続の確立に失敗したこと
プロセスがファイルを開くことに失敗したこと
エラー・ログを表示するには、次のいずれかの方法を使用します。
標準のシェル・コマンドによるOracle GoldenGateのルート・ディレクトリに含まれるggserr.log
ファイルの表示
Oracle GoldenGate DirectorまたはOracle GoldenGate Monitor
GGSCIのVIEW GGSEVT
コマンド。Oracle GoldenGateリファレンスfor Windows and UNIXを参照してください。
エラー・ログのサイズは、Oracle GoldenGateの使用に従って継続的に増加するため、ファイル内の最も古いエントリは、アーカイブして削除することを検討してください。
プロセス・レポートを使用して、(プロセスに応じて)次の情報を表示できます。
使用中のパラメータ
表および列マッピング
データベース情報
実行時メッセージおよびエラー
処理された操作の数に関する実行時統計
Extract、ReplicatおよびManagerのすべてのプロセスで、レポート・ファイルが生成されます。このレポートは、実行中に発生した問題(無効なマッピング構文、SQLエラー、接続エラーなど)を診断する場合に役立ちます。
プロセス・レポートを表示するには、次のいずれかの方法を使用します。
標準のシェル・コマンドによるテキスト・ファイルの表示
Oracle GoldenGate DirectorまたはOracle GoldenGate Monitor
GGSCIのVIEW REPORT
コマンド。Oracle GoldenGateリファレンスfor Windows and UNIXを参照してください。
プロセスがレポートを生成せずに異常終了した場合に情報を表示するには、次のコマンドを使用して、(GGSCIでなく)オペレーティング・システムのコマンド・シェルからプロセスを実行し、端末に情報を送信します。
process
paramfilepath
.prm
説明:
process
の値は、extract
またはreplicat
です。
path
.prm
の値は、パラメータ・ファイルの完全修飾名です。例:
replicat paramfile /ogg/dirdat/repora.prm
デフォルトでは、レポートのファイル拡張子は.rpt
です(EXTORA.rpt
など)。デフォルトの場所は、Oracle GoldenGateディレクトリのdirrpt
サブディレクトリです。ただし、これらのプロパティは、グループを作成するときに変更できます。レポート・ファイルは、一度作成したら、処理の開始後にOracle GoldenGateを適切に動作させるため、元の場所から移動しないでください。
プロセス・レポートの名前と場所を確認するには、GGSCIでINFO EXTRACT
、INFO REPLICAT
、INFO MANAGER
のいずれかのコマンドを使用します。Oracle GoldenGateリファレンスfor Windows and UNIXを参照してください。
デフォルトでは、実行時統計は、各実行の終了時に1回のみレポートに書き込まれます。長時間の実行や継続的な実行では、オプション・パラメータを使用することで、各実行の終了を待機せずにこれらの統計を定期的に表示できます。
実行時統計をレポートするスケジュールを設定するには、ExtractまたはReplicatのパラメータ・ファイルでREPORT
パラメータを使用して、レポートで実行時統計を生成する日時を指定します。Oracle GoldenGateリファレンスfor Windows and UNIXを参照してください。
レポートにオン・デマンドで実行時統計を送信するには、必要に応じてその時点の実行時統計を表示するREPORT
オプションを付けてSEND EXTRACT
またはSEND REPLICAT
コマンドを実行します。Oracle GoldenGateリファレンスfor Windows and UNIXを参照してください。
REPORTCOUNT
パラメータでは、ExtractまたはReplicatが起動以降に処理したトランザクション・レコード数をレポートします。各トランザクション・レコードは、Oracle GoldenGateによって取得されたトランザクション内で実行された論理データベース操作を表します。レコード数は、レポート・ファイルおよび画面に出力されます。詳細は、『Oracle GoldenGate for Windows and UNIXリファレンス』を参照してください。
デフォルトでは、プロセスがGGSCIのSTART
コマンドによって開始されると常に破棄ファイルが生成されます。破棄ファイルは、失敗したOracle GoldenGate操作に関する情報を取得します。この情報は、データ・エラー(無効な列マッピングに関連するエラーなど)を解決する場合に役立ちます。
破棄ファイルでは、次のような情報がレポートされます。
データベースのエラー・メッセージ
データソースまたは証跡ファイルの順序番号
データソースまたは証跡ファイルのレコードの相対バイト・アドレス
破棄された操作の詳細(DML文の列値やDDL文のテキストなど)
破棄ファイルを表示するには、テキスト・エディタを使用するか、GGSCIでVIEW REPORT
コマンドを使用します。Oracle GoldenGateリファレンスfor Windows and UNIXを参照してください。
デフォルトの破棄ファイルには、次のプロパティがあります。
ファイル名は、ファイルを作成したプロセスの名前に、デフォルトの拡張子.dsc
を付けたものです。例: finance.dsc
。
ファイルは、Oracle GoldenGateインストール・ディレクトリのdirrpt
サブディレクトリに作成されます。
ファイルの最大サイズは50MBです。
起動時に破棄ファイルが存在する場合、消去してから新しいデータが書き込まれます。
これらのプロパティを変更するには、DISCARDFILE
パラメータを使用します。NODISCARDFILE
パラメータを使用すると、破棄ファイルの使用を無効にできます。Oracle GoldenGateリファレンスfor Windows and UNIXを参照してください。
オペレーティング・システムのコマンドラインを使用してプロセスを開始した場合、デフォルトでは破棄ファイルは生成されません。DISCARDFILE
パラメータを使用して、破棄ファイルを使用するかどうかと、そのプロパティを指定できます。
破棄ファイルは、一度作成したら、処理の開始後にOracle GoldenGateを適切に動作させるため、元の場所から移動しないでください。
デフォルトでは、破棄ファイルとレポート・ファイルは同じ方法でエージングされます。新しい破棄ファイルまたはレポート・ファイルは、新しいプロセス実行の開始時に作成されます。古いファイルは、名前に0(最新)から9(最も古い)までの順序番号を付加してエージングされます。
アクティブなレポートまたは破棄ファイルが、ある実行の終了前に(または、連続実行の最中に)最大ファイル・サイズに到達した場合、有効なエージング・スケジュールがなければ、そのプロセスは異常終了します。破棄ファイルやレポート・ファイルのエージング・スケジュールを設定するには、それぞれ、DISCARDROLLOVER
パラメータおよびREPORTROLLOVER
パラメータを使用します。これらのパラメータにより、プロセスの開始時に加え、定期的にファイルをロールオーバーするように指定されます。これは、ファイルのサイズを制御し、プロセスの停止を防止するだけでなく、アーカイブ・ルーチンに含めることができるアーカイブのセットが予測可能になります。詳細は、次のドキュメントを参照してください。
Oracle GoldenGateリファレンスfor Windows and UNIX
Oracle GoldenGateリファレンスfor Windows and UNIX
プロセスは、最大10個のエージングされたレポートまたは破棄ファイルと1個のアクティブなレポートまたは破棄ファイルを保持できます。10個目のファイルがエージングされると、新規レポートの作成時に最も古いレポートが削除されます。サービス・リクエストの解決に必要とされる場合に備えて、エージングされたレポート・ファイルおよび破棄ファイルのアーカイブ・スケジュールを設定することをお薦めします。
表18-3 ExtractおよびManagerの現行レポートとエージングされたレポート
権限 | X | 日付 | レポート |
---|---|---|---|
-rw-rw-rw- |
1 ggs ggs |
1193 Oct 11 14:59 |
MGR.rpt |
-rw-rw-rw- |
1 ggs ggs |
3996 Oct 5 14:02 |
MGR0.rpt |
-rw-rw-rw- |
1 ggs ggs |
4384 Oct 5 14:02 |
TCUST.rpt |
-rw-rw-rw- |
1 ggs ggs |
1011 Sep 27 14:10 |
TCUST0.rpt |
-rw-rw-rw- |
1 ggs ggs |
3184 Sep 27 14:10 |
TCUST1.rpt |
-rw-rw-rw- |
1 ggs ggs |
2655 Sep 27 14:06 |
TCUST2.rpt |
-rw-rw-rw- |
1 ggs ggs |
2655 Sep 27 14:04 |
TCUST3.rpt |
-rw-rw-rw- |
1 ggs ggs |
2744 Sep 27 13:56 |
TCUST4.rpt |
-rw-rw-rw- |
1 ggs ggs |
3571 Aug 29 14:27 |
TCUST5.rpt |
Oracle GoldenGateは、オペレーティング・システムのレベルで生成されたエラーを、Windowsのイベント ビューアまたはUNIXおよびLinuxのsyslogに書き込みます。Oracle GoldenGateイベントの形式は、基本的にUNIX、LinuxおよびWindowsのシステム・ログで同じです。システム・ログに出力されるOracle GoldenGateエラーは、Oracle GoldenGateエラー・ログにも出力されます。
UNIXおよびLinuxの場合、syslog
に対するOracle GoldenGateメッセージ機能は、デフォルトで有効です。Windowsの場合、イベント ビューアに対するOracle GoldenGateメッセージ機能は、インストール・プロセスでOracle GoldenGateメッセージDLLを登録することによってインストールする必要があります。この機能は、addevents
オプションを付けてinstall
プログラムを実行することによって、いつでも追加できます。このプログラムは、Oracle GoldenGateディレクトリのルートに格納されます。
SYSLOG
パラメータを使用して、Oracle GoldenGateがWindowsまたはUNIXシステムのシステム・ログに送信するメッセージのタイプを制御します。次の処理を実行できます。
すべてのOracle GoldenGateメッセージを含める
すべてのOracle GoldenGateメッセージを抑止する
情報、警告、エラーのいずれかのメッセージを記録するか、これらのタイプの任意の組合せを記録するためのフィルタ処理
SYSLOG
は、GLOBALS
またはManagerパラメータ(あるいはその両方)として使用できます。詳細は、『Oracle GoldenGate for Windows and UNIXリファレンス』を参照してください。
ソース・システムとターゲット・システム間の時間の差異に対応するには、Extractパラメータ・ファイルでTCPSOURCETIMER
パラメータを使用します。このパラメータにより、レプリケートされたレコードのタイムスタンプがレポート目的で調整されるため、同期ラグの解析が容易になります。詳細は、『Oracle GoldenGate for Windows and UNIXリファレンス』を参照してください。
WindowsまたはUNIXシステムのCollectorプロセスおよびReplicatプロセスで作成されたイベント・メッセージは、取得してNonStopシステムのEMSに送信できます。この機能によって、複数のプラットフォームにわたるOracle GoldenGateメッセージの集約表示が可能になります。この機能を使用するには、次の2つの手順を実行します。
WindowsまたはUNIXシステムでEMSクライアントを実行します。
NonStopシステムでCollectorプロセスを起動します。
EMSCLNT
ユーティリティによって、WindowsまたはUNIXシステムで生成されたOracle GoldenGateイベント・メッセージを取得し、それらのメッセージをNonStopシステムのTCP/IP Collectorプロセスに送信します。EMSCLNT
は、指定されたエラー・ログを読み取り、別のメッセージの送信を待機しながら無制限に実行されます。
WindowsまたはUNIXシステムのOracle GoldenGateディレクトリからemsclnt
を実行するには、次の構文を使用します。
emsclnt -h host_name |IP_address
-pport_number
-ffile_name
-cCollector
説明:
-h
host_name
| IP_address
は、EMSメッセージの送信先となるNonStop Serverの名前またはIPアドレスです。
-p
port_number
は、NonStop Collectorプロセスのポート番号です。
-f
file_name
は、エラー・メッセージの配信元となるローカル・ファイルの名前です。ファイルがOracle GoldenGateディレクトリ以外の場所に存在する場合、フルパス名を使用してください。
-c
Collector
は、このクライアントのEMS Collectorです。
次のWindowsの例では、DOSプロンプトからコマンドを実行し、エラー・メッセージのファイルD:\ogg\ggserr.log
を読み取ります。エラー・メッセージは、ポート9876でリスニングしているNonStopホストmyhost.us.example.com
のCollectorに送信されます。NonStopのCollectorプロセスは、フォーマットされたメッセージをEMS Collector $0
に書き込みます。
次のUNIXの例では、エラー・メッセージのファイルggserr.log
を読み取ります。エラー・メッセージは、ポート7850でリスニングしているIPアドレスが10.0.0.0のNonStop ServerのCollectorに送信されます。NonStopのCollectorは、フォーマットされたメッセージをems Collector $0
に書き込みます。
注意:
UNIXではドル記号は変数を示すため、$0は一重引用符で囲む必要があります。
例18-1 エラー・メッセージのログ・ファイルの読取り(Windows)
> emsclnt –h myhost.us.example.com –p 9876 –f d:\ogg\ggserr.log –c $0
例18-2 エラー・メッセージのログ・ファイルの読取り(UNIX)
emsclnt –h 10.0.0.0 –p 7850 –f ggserr.log –c '$0'
NonStopシステムのCollector(このプラットフォームではServer-Collectorと呼ばれます)は、emsメッセージを収集して配信します。Collectorを起動するには、server
プログラムを実行します。WindowsまたはUNIXシステムで実行するEMSCLNT
プロセスごとに、1つのserver
プロセスをNonStopシステムで起動します。
たとえば、次の例では、server
を実行してメッセージを$DATA1.GGSERRS.SERVLOG
に出力します。
> ASSIGN STDERR, $DATA1.GGSERRS.SERVLOG > RUN SERVER /NOWAIT/ –p 7880
NonStop上でのCollectorの実行の詳細は、Oracle GoldenGateの管理for HP NonStop (Guardian)を参照してください。
Oracle GoldenGateのパフォーマンスをチューニングする方法の詳細は、Oracle GoldenGateのパフォーマンスのチューニングを参照してください。