MFBSI 構成ファイル

スケジューラー構成を簡単化するために、所定の Enterprise Server と Mainframe Subsystem Support (MSS) に対する MFBSIJCL コマンド ライン パラメーターのほとんどを構成ファイルに格納することができます。構成ファイルにパラメーターを格納するということは、場合によっては、コマンド ラインで MFBSIJCL を実行するのに必要な唯一のパラメーターが JCL メンバー名であるということを意味します。

デフォルトでは、構成ファイルは、mfbsi.cfg という名前で、MFBSI_DIR 環境変数によって指定された場所に配置されます。デフォルトの場所およびファイル名は、必要に応じて、CFG=... コマンド ライン パラメーターで、または MFBSI_CFG 環境変数の値を設定することで変更できます。

mfbsi.cfg_model という名前の構成ファイルのテンプレートが <install-directory>\etc フォルダー (Windows)、または $COBDIR/demo/mfbsi フォルダー (UNIX) に用意されています。

そのディレクトリには、IDCAMS を呼び出す JCL ファイル rc08.jcl も含まれています。初期のテストで、この JCL を MFBSI とともに使用できます。

mfbsi.cfg ファイルの形式

  • 行の位置 1 にあるアスタリスク (*) またはセミコロン (;) はコメントを示します。ファイルに定義されたパラメーターを有効にするには、コメント記号を削除し、パラメーターに適切な値を指定します。
  • ファイル内の空白行は無視されます。
  • パラメーター名では大文字と小文字は区別されません。
  • キーワード パラメーターの値では大文字と小文字が区別されます。その他のパラメーター値でも、特に UNIX および Linux プラットフォームでのディレクトリ拡張では、大文字と小文字が区別されることがあります。
  • パラメーターが構成ファイルとコマンド ラインの両方で定義された場合は、コマンド ライン定義が優先されます。
  • いくつかの特殊なパラメーターは、構成ファイルからのみ使用可能であり、コマンド ラインから直接使用することはできません。
  • MFBSIJCL コマンド ラインでアクセス コード -j または -x を使用する場合は、mfbsi.cfg 内の構成パラメーター JCL-Submit および JCL-Ext の値は無視されます。
構成ファイルを使用する場合、mfbsijcl に対して最低限指定する必要があるコマンド ラインの実行パラメーターは、拡張子の有無にかかわらず、サブミットする JCL ファイルの名前です。この場合、mfbsi.cfg で次のパラメーターを指定します。
ES-Server=-r|-l|-sTCP
エンタープライズ サーバー リージョンへのアクセス方法を指定します。
JCL-Submit=-j|-xJCLpathLocation
JCL がサブミットされるエンタープライズ サーバー リージョンまたはインスタンスの場所を指定します。

詳細は次のとおりです。

-j
ジョブファイル名を BY CONTENT で指定します。サブミットされるファイルはクライアントのプラットフォーム上になければなりません (ターゲットのエンタープライズ サーバーと同じプラットフォームである場合もある)。サブミットされた JCL は、通信リンクで物理的に渡されます。詳細については、「cassub」を参照してください。
-x
ジョブファイル名を BY REFERENCE で指定します。サブミットされるファイルはエンタープライズ サーバーと同じプラットフォーム上になければなりません。ファイルの名前だけが通信リンクによって渡されるため、この手法はより効率的です。詳細については、「cassub」を参照してください。
JCL-Ext=jcl_extension_name
コマンド ライン パラメーターで指定されていない場合に使用する拡張子を指定します。JCL ファイルを参照します。
SJobID=JobNo|StdOut|JCL
MFBSIJCL 実行ログの出力方法を指定します。
JobNo
MFBSI_DIR 内の JOBnnnnnnn という名前のファイルを指定します。nnnnnnn はジョブ番号です。
StdOut
MFBSIJCL ログを StdOut に転送します。
JCL
MFBSI_DIR 内の JCL メンバー名の名前のファイルを指定します。
JESYSMSG
JCL JESYSMSG 実行ログを取得する必要がある場合に指定します。
REGION=RegionName
カスタム MFBSI_DIR を使用する場合のターゲット リージョン/インスタンス名を指定します。MFBSI_DIR パスでリージョン/インスタンス名を最後のディレクトリとして使用していない場合に指定します。
RegionName
ターゲット エンタープライズ サーバー リージョン名です。
ES_PAC=pacname
パフォーマンス/可用性クラスター (PAC) 内で実行する場合に、PAC の名前を指定します。mfbsi.cfg の必須項目です。Enterprise Server 5.0 PU1 以降が必要です。
注: PAC で実行する場合は必須です。
ES_PAC_ENDPOINT=sor,host_ipaddress:port_number
パフォーマンス/可用性クラスター (PAC) 内で実行する場合に、使用するスケールアウト リポジトリの名前、ホストまたは IP アドレス、およびポート番号を指定します。mfbsi.cfg の必須項目です。たとえば、redis,127.0.0.1:6379 のように指定します。
注: PAC で実行する場合は必須です。

テンプレート構成ファイルには、使用可能な以下のパラメーターのリストが含まれています。

  • Mainframe Subsystem Support を使用するエンタープライズ サーバーにアクセスし、その名前および場所を指定する場合:
    ES-Server=-rES-JCL
    ES-Server=-sTCP:10.1.1.101:32793
    ES-Server=-sTCP:HostName:32793
    ES-Server=-lES-SERV
    注: Micro Focus では、パフォーマンス/可用性クラスター (PAC) 内で実行する場合は、使用可能なエンタープライズ サーバー インスタンスに要求をリダイレクトするロード バランサーのアドレスを指す ES-Server=-sTCP を使用することをお勧めします。
  • JCL ファイル (-x or –j) をサブミットし、JCL メンバー ディレクトリのパスを指定する場合:
    JCL-Submit=-jPathToJCLfile
    JCL-Submit=-xPathToJCLfile
    注: 空白文字を含むディレクトリ名には二重引用符を使用しないでください。

    PathToJCLfile では、環境変数への参照を 1 つ以上使用できます。この場合、環境変数に $ をプレフィックスとして付ける必要があります。例:JCL-Submit=-x$SEE_JCL_BASE/$JCL_PDS

    環境変数 SEE_JCL_BASE および JCL_PDS はそれぞれの値で置き換えられます。

  • カスタム MFBSI_DIR 設定 (MFBSI_DIR パスの最後の部分でリージョン名が指定されていない) を使用する場合:
    REGION=RegionName

    詳細は次のとおりです。

    RegionName
    ターゲット エンタープライズ サーバー リージョン名です。
  • コマンド ラインで指定した JCL メンバー名に追加する JCL ファイル拡張子を指定する場合:
    JCL-Ext=jcl_extension_name

    詳細は次のとおりです。

    jcl_extension_name
    使用する拡張子です。デフォルトは拡張子なしです。例:JCL-Ext=jcl
    注: 拡張子の前にピリオド (".") を指定しないでください。
  • アラートを発行するまでの起動タイムアウト (秒単位) を指定する場合:
    StartupTimeout=n
  • アラートを発行するまでの実行タイムアウト (秒単位) を指定する場合:
    RunTimeout=n
  • アラート バック経過時間 (秒単位) を指定する場合:
    AlertBackTimeout=n
  • エンタープライズ サーバーが停止し、ジョブがまだ実行を待っているときに、MFBSIJCL の実行を停止しないようにする場合:
    ES-SHUTDOWN-JWAIT=CONTINUE
    これはオプションですが、推奨されます。
  • SjobID.log ファイルに書き込まれた JESYSMSG ログをエンタープライズ サーバーに要求する場合:
    JESYSMSG
  • エンタープライズ サーバーから JESYSMSG ログを要求し、StdOut に書き込む場合:
    JESYSMSG=StdOut
  • MFBSI jobLog ファイルの名前を割り当てる場合:
    • エンタープライズ サーバーによって割り当てられたジョブ番号を使用する場合:
      SJobID=JobNo
    • JCL メンバー名を使用する場合:
      SJobID=JCL
    • MFBSI ジョブ実行ログを標準出力 (StdOut) に書き込む場合:
      SJobID=StdOut
  • サブミットの前のユーザー出口モジュールの実行を要求する場合:
    JCLExit=pgmName

    実行するアクションを決定するためにサブミットの前のユーザー出口モジュールに渡される関連文字列 (最大 32 文字) を使用する場合:

    JCLExitID=IdentString
  • MFBSIJCL の実行を終了する直前に終了ユーザー出口を呼び出す場合:
    TerminateExit=pgmName
  • デフォルトでは、ジョブの終了を待機している MFBSIJCL プロセスに対してソフト強制終了を実行すると、Enterprise Server のジョブも終了前にキャンセルされます。

    プロセスがソフト強制終了されたときにジョブを強制終了しないようにするには、次のパラメーターを使用します。

    ES_JOB_KILL=NO
    デフォルトは ES_JOB_KILL=YES です。
  • デフォルト (JES2) 以外の JCL ファイルのタイプを指定する場合:
    JCLType={VSE|JES2|JES3}
  • (オプション) MSS セキュリティが有効な場合:
    • ユーザー ID を指定する場合:
      UserID=myUser
    • パスワードを指定する場合:
      Password=myPwd
    • セキュリティ グループを指定する場合:
      SGroup=securityGroup
  • シンボリック パラメーターの置換および Control-M AutoEdit 機能の使用:

    Control-M AutoEdit 機能にアクセスせずにパラメーターを置換するには、次を使用します。

    SkelProcessType=MFBSI
    注: JCL パラメーターを使用する場合は、これらのパラメーターを使用する必要があります。

    置換は SkelProcessType で要求されます。

    Control-M AutoEdit 機能の特定の処理を有効にするには、次を使用します。

    SkelProcessType=CONTROL-M

    または

    SkelProcessType=MFBSICTM

    (オプション) MFBSIJCL コマンド ラインでパラメーターが指定されていない場合でもパラメーターを置換する場合(DATE や DAY などのシステム パラメーターの置換が可能):

    AutoEdit

    (オプション) 1 文字または 2 文字のいずれかとしてパラメーター置換プレフィックスを指定する場合:

    SUBST-Prefix=parameterValue

    デフォルトの parameterValue%% です。

    (オプション) 週が始まる曜日を指定する場合:

    StartOfWeek=Sunday|Monday

    デフォルト値は、Monday です。

    (オプション) BY REFERENCE または BY CONTENT で置換された JCL を強制的にサブミットする場合 (CASSUB –x):

    CASSUB-CTM={BYREF|CONTENT}
    デフォルトでは、CASSUB... –j ... が使用されます。
  • (オプション) ネイティブ コマンドの代わりに CASSUB/CASOUT の API 呼び出しの使用を指定し、それらのために新しいプロセスを作成せずに済むようにする場合:
    CASAPI
  • ジョブが異常終了した場合に MFBSIJCL によって返される OS コードを指定する場合:
    • システムによる異常終了:
      SYS-ABEND-RC=nnn
    • ユーザーによる異常終了:
      USR-ABEND-RC=nnn
    • ランタイム システムによる異常終了:
      RTS-ABEND-RC=nnn
  • Enterprise Server でジョブの状態をチェックするために MFBSIJCL によって使用されるデフォルトの遅延は、次のとおりです。
    • 「Job Started」の各チェックまでに 2 秒
    • 「Job Conluded」の各チェックまでに 10 秒

    次の 2 つのパラメーターを使用して、これらの遅延を構成できます。

    JOBSTART-LOOKUP-FREQ={nn|AUTO}
    JOBEND-LOOKUP-FREQ={nn|AUTO}

    詳細は次のとおりです。

    nn
    遅延の秒数を示します。最小値は 1、最大値は 60 です。
    AUTO
    MFBSIJCL によってルックアップの遅延が自動的に最適化されます。

    AUTO を使用する場合、MFBSIJCL では、3 分間に 1 秒の初期遅延が使用され、その後にデフォルト値が復元されます。

    これらのパラメーターを使用すると、Enterprise Server JCL でレポートされるジョブの実行時間と比べて、MFBSIJCL のオーバーヘッド経過時間が大幅に短縮されます。これは、頻繁に実行される短期実行のジョブがある場合に主に効果があります。

  • (オプション) MSS/JCL で終了ジョブを完了するために許容される最大遅延 (分単位) を指定する場合:
    EMX-Timeout=nn
    デフォルト値は 6 分です。
  • mfbsijcl 実行の詳細なトレース ログを生成する場合。Micro Focus サポートから求められた場合に使用します。これは本番環境では推奨されません。
    MFDEBUG