ファイル操作のトレース

ここでは、ファイル操作のトレースのために用意された機能の使用法について説明します。これらの機能は、ファイル処理の問題での調査に役立ちます。

はじめに

ファイルハンドラの機能のファイル操作のトレースでは、次の操作を行うことができます。

トレースとログの構成

ファイルハンドラ構成パラメータの TRACE、TRACEFILEEXTEND、TRACEFILENAME、LOG および LOGFILENAME を使用して、トレースとログのアクティビティを次のように制御します。

TRACE と LOG は、グローバルにまたは個別のファイルに設定することができます。TRACEFILEEXTEND、TRACEFILENAME、および LOGFILENAME は、グローバルにしか設定できません。

構成オプションをグローバルに設定する方法や個別ファイルに設定する方法の詳細については、『ファイルハンドラの構成』の章の『構成ファイル』の項を参照してください。

次に構成ファイルの例を示します。

[XFH-DEFAULT]
TRACE=OFF
TRACEFILENAME=c:\trace\mftracefile.xfh
TRACEFILEEXTEND=ON
LOG=ON
LOGFILENAME=c:\temp\mflogfile.log

[datafile1.dat]
TRACE=ON

[datafile2.dat]
LOG=OFF

この例では、ファイルトレースはグローバルにはオフ、datafile1.dat データファイルに対してはオンです。新しいトレースレコードは、既存のトレースファイル c:¥trace¥mftracefile.xfh がある場合、このファイルに追加されます。 ログは、グローバルではオン、データファイル datafile2.datに対してはオフです。

注: トレースファイルのサイズが 4 GBを超える場合は、構成オプションの FILEMAXSIZE=8 および IDXFORMAT=8 も指定する必要があります。

動的トレース

FCD に適切なフラグを設定するか、ライブラリルーチンを使用するかで、COBOL プログラム内からトレースのオン/オフを切り替えることができます。 これは、アプリケーションの動作のサブセットで、ファイル処理の問題に対処したい場合に便利です。 FCD フラグを設定する場合は、特定のファイルに対してこれを行います。 ライブラリルーチンを使用する場合は、トレース設定は、その時点以降のプログラムで実行されるすべてのファイル操作に影響します。

動的トレースを実行する場合には、2 つのフラグを同時に使用します。 これは、READ や WRITE などのファイル操作をトレースするには、OPEN 操作がトレースされている必要があるためです。 トレースをオフにしてプログラムを起動し、ファイルを開いた後に動的にトレースをオンにした場合、トレースの仕組みでは、後続の操作をトレースすることはできません。 最も良い方法は、プログラムの始めに OPEN と CLOSE の動的トレースをオンにしてから、すべての操作のオン/オフを必要に応じて切り替えることです。 OPEN 操作と CLOSE 操作のトレース自体もまた役に立つことがあります。

FCD を使用したトレースの制御

FCD フラグを使用するには、FCD にアクセスする必要があります。『ファイルハンドラとソート API』の章の『FCD へのアクセス』の項を参照してください。

ファイルのトレースは FCD 内の 2 つのフラグビットの設定によって制御されます。

これらのビット設定は、個別のファイルのトレースを制御するために必要に応じて変更できます。

ライブラリルーチンを使用したトレースの制御

ライブラリルーチンでは、FCD を持っていない場合でも、FCD フラグを設定するのと同様にトレースを操作することができます。 ライブラリルーチンを使用して変更したトレース動作はすべて、これ以降にアクセスするすべてのファイルに影響します。

トレースを制御するには、MFFH_MODIFY_TRACE ライブラリルーチンを呼び出します。次の設定ができます。

設定したすべての変更を無効にするには、ライブラリルーチンの MFFH_MODIFY_DISABLE を呼び出します。

詳細については、ヘルプトピック  『MFFH_MODIFY_TRACE』および  『MFFH_MODIFY_DISABLE』を参照してください。

関連情報
はじめに
ファイル編成
ファイル名
ファイル状態
ファイルの共有
ファイルハンドラの構成
ファイルハンドラおよびソート API
データとキーの圧縮