ユーザー・ガイド

     前  次    新規ウィンドウで目次を開く    PDFとして表示 - 新規ウィンドウ  Adobe Readerを入手 - 新規ウィンドウ
コンテンツはここから始まります

Tuxedo Job Enqueueing Service (TuxJES)の使用

この章には次のトピックが含まれます:

 


概要

バッチ・ジョブ・システムは、重要なメインフレーム・ビジネス・アプリケーション・モデルです。Tuxedo Job Enqueueing Service (TuxJES)エミュレーション・アプリケーションを使用すると、メインフレーム・アプリケーションをオープン・システムへ円滑に移行できます。TuxJESは、メインフレームJES2関数のサブセットを実装しています(ジョブの送信、ジョブの表示、ジョブの保留、ジョブの解放、ジョブの取消しなど)。

TuxJESは、次のバッチ・ジョブ・フェーズに対処しています。

要件

TuxJESはOracle Tuxedoアプリケーションであり、TuxJESを実行するためにはOracle Tuxedoが必要です。

分散環境でTuxJESをデプロイするためには、共有ファイル・システム(NFSなど)が必要です。

TuxJESコンポーネント

TuxJESには、次の主要なコンポーネントが含まれます。

 


TuxJESシステムの構成

Oracle TuxedoアプリケーションとしてのTuxJESの設定(/Qを使用)

TuxJESは、Oracle Tuxedoアプリケーションです。大部分のTuxJESコンポーネントは、Oracle TuxedoクライアントまたはOracle Tuxedoサーバーです。まずTuxJESをOracle Tuxedoアプリケーションとして構成する必要があります。TuxJESがインストールされたディレクトリを参照する環境変数JESDIRが、正しく構成される必要があります。

Oracle Tuxedo構成ファイル

リスト1に、TuxJESシステムのためのOracle Tuxedo構成ファイル(UBBCONFIG)例の一部を示します。

リスト1 TuxJESシステムのためのOracle Tuxedo UBBCONFIGファイルの例
*GROUPS
QG
                LMID=L1 GRPNO=2 TMSNAME=TMS_QM TMSCOUNT=2
                OPENINFO="TUXEDO/QM:/jes2queue/QUE:JES2QSPACE"
ARTG
                LMID=L1 GRPNO=4
EVTG
                LMID=L1 GRPNO=8
*SERVERS
DEFAULT:
                CLOPT="-A"
TMQUEUE
                SRVGRP = QG  SRVID = 1
                RESTART = Y CONV = N MAXGEN=10
                CLOPT = "-s JES2QSPACE:TMQUEUE -- -t 5 "
ARTJESADM			SRVGRP =ARTG  SRVID = 1 MIN=1 MAX=1
                CLOPT = "-A -- -i jesconfig"
ARTJESCONV			SRVGRP =ARTG  SRVID = 20 MIN=1 MAX=1
                CLOPT = "-A --"
ARTJESINITIATOR			SRVGRP =ARTG  SRVID = 30
                CLOPT = "-A -- -c ABCDEFG
ARTJESPURGE			SRVGRP =ARTG  SRVID = 100
                CLOPT = "-A --"

Oracle Tuxedo構成ファイル(UBBCONFIG)には、次のTuxJESサーバーが含まれている必要があります。

注: ARTJESADMARTJESCNOVARTJESINITIATORおよびARTJESPURGEの複数のインスタンスを構成できます。

TuxJES管理サーバーARTJESADMの場合、-i オプションを使用してTuxJES構成ファイルを指定する必要があります。ARTJESADMは、Oracle Tuxedo構成ファイル(UBBCONFIG)で、ARTJESCONVARTJESINITIATORまたはARTJESPURGEの各サーバーより前に構成される必要があります。

詳細は、 『Oracle Tuxedo Application Runtime for Batchリファレンス・ガイド』を参照してください。

TuxJESはOracle Tuxedo /Qコンポーネントを使用するため、UBBCONFIGファイル内に、TMS_QMが構成されたOracle Tuxedoメッセージング・サーバーTMQUEUEを持つOracle Tuxedoグループが必要です。/Qキュー・スペースの名前は、JES2QSPACEと構成する必要があります。

TuxJESシステムは、単一のマシン上で動作するOracle Tuxedo SHMアプリケーション、または複数のマシン上で動作するOracle Tuxedo MPアプリケーションのいずれかです。

Oracle Tuxedoアプリケーションを設定する方法に関する詳細な情報は、Oracle Tuxedo関連のドキュメントを参照してください。

TuxJES用のUBBCONFIG内のブロック・タイム

ジョブ操作(ジョブ発行を除く)については、SCANUNITBLOCKTIMEパラメータを設定して、メッセージ・ブロックのタイムアウト時間などのシステム活動を指定できます。割り当てる値は5の倍数の正数である必要があります。

表1 SCANUNITおよびBLOCKTIMEパラメータの特性
パラメータ
特性
SCANUNIT
チェック間隔とタイムアウトをきめ細かく制御します。SCANUNITは、0から60秒の間の2または5の倍数である必要があります。
例: SCANUNIT 20
デフォルトは10
BLOCKTIME
BLOCKTIMEは、メッセージがタイムアウトする前にブロックできる時間を制御します。
SCANUNIT * BLOCKTIMEが32767以下である必要があります。
デフォルトでは、SCANUNIT * BLOCKTIMEが約60秒になるように設定されます。

リスト2 設定例
*RESOURCES
IPCKEY         113333
DOMAINID       jesdomain
MASTER         SITE1
MODEL          SHM
MAXACCESSERS   200
MAXSERVERS     50
NOTIFY         SIGNAL
SCANUNIT       20 
BLOCKTIME      50

この例では、サニティ・スキャンは20秒ごとに実行され、リクエストが20 * 50 = 1000秒を超えてブロックされることはありません。

ジョブ発行のタイムアウトの制御はBLOCKTIMESCANUNITではなく、artjesadminコマンドラインで指定します。例:

artjesadmin -t 60 -i JOBA

この例では、JOBAの発行が60秒間で終了しなかった場合、タイムアウトが戻されます。

TuxJESは/Qに従って、ジョブを表すメッセージの保存や取得を行います。TuxJES内部での/Q操作のタイムアウト・メカニズムを制御するのは、UBBCONFIG RESOURCESセクションのMAXTRANTIMEだけです。

UBBCONFIGMAXTRANTIMEを明確に指定する必要があります。指定しなかった場合、Tuxedoは自動的にデフォルト値を使用します(デフォルト値はTuxedoリリースによって異なる可能性があります)。

このMAXTRANTIMEの値は、具体的なシステム・ロードに基づいて設定します。次の例はMAXTRANTIMEを5分に設定しています。

リスト3 例: MAXTRANTIMEを使用したタイムアウトの制御
*RESOURCES 
IPCKEY      	133770 
DOMAINID    	jessample 
MASTER      	SITE1 
MODEL       SHM 
MAXTRANTIME 300	# 300 seconds

UBBCONFIG RESOURCESセクションのMAXTRANTIMEの詳細は、Tuxedoドキュメントの 「UBBCONFIG(5)」を参照してください。

tpdequeue()tpenqueue()など、/Q操作でタイムアウトが発生した場合、MAXTRANTIMEを調整して、タイムアウトが発生しないようにします。

Oracle Tuxedo /Qキュー・スペースとキューの作成

TuxJESシステム用にJES2QSPACEという名前の/Qキュー・スペースを作成する必要があります(このキュー・スペースに/Qキューの一部を作成する必要があります)。TuxJESには、キュー・スペース(JES2QSPACE)とキューを作成するサンプル・シェル・スクリプト(jesqinit)が用意されています。詳細は、Oracle Tuxedo Application Runtime for Batchリファレンス・ガイドを参照してください。

ファイル・システム構成

TuxJESは、ファイル・システムを使用して、バッチ実行エンジンと通信します。TuxJESとバッチ実行エンジンの間の通信のために、ファイル・システム上にディレクトリが作成されます。ディレクトリの名前は、TuxJES構成ファイルで指定されている必要があります。複数のマシン上にTuxJESシステムをデプロイする場合、このディレクトリは共有ファイル・システム(たとえば、NFS)に存在する必要があります。

TuxJES構成ファイル

TuxJES管理サーバーARTJESADMに対して構成ファイルを指定できます。構成ファイルでは、次のパラメータを構成できます。

JESROOT

ジョブ情報を格納するルート・ディレクトリ。必須の属性です。このディレクトリが存在しない場合、ARTJESADMが自動的に作成します。

DEFAULTJOBCLASS

JCLでジョブ・クラスが設定されていない場合のデフォルト・ジョブ・クラス。オプションの属性です。この属性が設定されていない場合、デフォルト・ジョブ・クラスはAです。

DEFAULTJOBPRIORITY

JCLでジョブ優先度が設定されていない場合のデフォルトのジョブ優先度。オプションの属性です。この属性が設定されていない場合、デフォルトのジョブ優先度は0です。

DUPL_JOB=NODELAY

設定されていない場合、あるジョブ名に対して、1つのジョブだけが実行ステータスであることができます。NODELAYは、依存性チェックを削除します。デフォルト値は、遅延実行です。

NJESUPPORT=ON

設定されない場合、NJEサポートは無効となり、バッチ・ランタイムAPI m_JobSetExecLocationで指定されるサーバー・グループでジョブを実行できません。デフォルト値はOFFです。

EVENTPOST=S,C,E,P,L,A

個別のステージで、ジョブに対してイベントがポストされるかどうかを指定します。
S: ジョブ送信イベント。
C: ジョブ変換完了イベント。
E: ジョブ実行完了イベント。
P: ジョブ・パージ・イベント。
L: ジョブ取消し完了イベント。
A: サポートされているすべてのイベント
EVENTPOSTが指定されない場合、イベントはポストされません。イベントのポストでのデータ・バッファはFML32タイプで、フィールドはtuxjes/include/jesflds.hで定義されます。

JES_ACL_FILE

ジョブ・アクセス認可構成ファイルのフルパス。このファイルは暗号化されていてもいなくても構いません。詳細は、「JES_ACL_FILE_TYPE」を参照してください。

JES_ACL_FILE_TYPE

JES_ACL_FILEファイルの書式。これはPLAINまたはENCRYPTEDに設定できます(大文字と小文字は区別されます)。デフォルト値はPLAINです。

JES_ACL_MODE

ユーザー、操作、およびジョブのタプルについて、JES_ACL_FILEに一致ルールが見つからなかった場合のアクション。これはMAC (Mandatory Access Control)またはDAC (Discretionary Access Control)に設定できます。デフォルト値はMACです。

JOBREPOSITORY

ジョブが格納されるジョブ・リポジトリのパス。設定された場合、ジョブ送信で入力されたスクリプト・ファイル・パスに、JOBREPOSITORY内の相対パスを使用できます。
複数のパス名をコロン(:)で区切って指定できます。次に例を示します。
JOBREPOSITORY=<path1>:<path2>:<path3>
送信するジョブを見つけるために、バッチ・ランタイムは、(JOBREPOSITORY内で)指定された順序でそれらのパスから検索します。一致するジョブ名が見つかると、バッチ・ランタイムは検索を停止し、この一致したジョブを送信します。

PRIVILEGE_MODE

ユーザー代入を有効化するかどうか、およびその方法を指定します(「TuxJESユーザー代入」を参照してください)。値は次のとおりです。
NONE: デフォルト値。ジョブがJESシステムを起動するOSユーザーによって実行されることを示します。これは、JESシステム上のこれまでの実装すべてと互換性があります。
USER_IDENTICAL: ジョブが、JESシステムに参加するJESクライアントを使用してOracle Tuxedoユーザーによって実行されることを示します。この値を選択する前に、Oracle Tuxedoの各ユーザーが既存のOSユーザーに対応することを確認します。
USER_MAPPING: この値を指定すると、JESシステムはTuxJESユーザー・マッピング・ファイルを参照し、JESシステムに参加するJESクライアントを使用してOracle Tuxedoユーザーに対応するOSユーザーを検出して、このOSユーザーをジョブの実行者として指名します。

USER_MAPPING_FILE

TuxJESユーザー・マッピング・ファイルの保存場所のフルパス。PRIVILEGE_MODEと共に使用されます(その値がUSER_MAPPINGの場合)。

SYSLOG=OFF,ON,DAILY,WEEKLY,MONTHLY

OFF:ログを指定しません。
ON:SYSLOGへの書込みを指定します。デフォルト値です。このSYSLOGにはjessys.logという名前が付けられます。SYSLOG_PATHを使用して、このファイルのパスをデフォルトの$JESROOT/jessys.logから別のディレクトリに変更できます。
DAILY:SYSLOGへの書込みを指定します。毎日、新しいログ・ファイルが作成されます。このSYSLOGにはjessys.log.<mmddyy>という名前が付けられます。たとえば、「jessys.log.032715」という名前のSYSLOGは、2015年3月27日に作成されたログ・ファイルを表します。SYSLOG_PATHを使用して、このファイルのパスをデフォルトの$JESROOT/jessyslog/jessys.log.<mmddyy>から別のディレクトリに変更できます。
WEEKLY:SYSLOGへの書込みを指定します。毎週、新しいログ・ファイルが作成されます。このSYSLOGにはjessys.log.<mmddyy>という名前が付けられます。ここで、ddにはその週の最初の日を意味します(1週間は日曜日に始まります)。たとえば、「jessys.log.032215」という名前のSYSLOGは、2015年3月22日(日曜日)から2015年3月28日(土曜日)に作成されたログ・ファイルを表します。SYSLOG_PATHを使用して、このファイルのパスをデフォルトの$JESROOT/jessyslog/jessys.log.<mmddyy>から別のディレクトリに変更できます。
MONTHLY:SYSLOGへの書込みを指定します。毎月、新しいログ・ファイルが作成されます。このSYSLOGにはjessys.log.<mmddyy>という名前が付けられます。ここで、ddにはその月の最初の日を意味します。たとえば、「jessys.log.030115」という名前のSYSLOGは、2015年3月に作成されたログ・ファイルを表します。SYSLOG_PATHを使用して、このファイルのパスをデフォルトの$JESROOT/jessyslog/jessys.log.<mmddyy>から別のディレクトリに変更できます。

SYSLOG_PATH

SYSLOGファイルのパスを表します。
SYSLOG=ONが設定されている場合、$SYSLOG_PATH/jessys.logという名前のSYSLOGが、このSYSLOG_PATHで指定されたディレクトリに配置されます。
SYSLOG=DAILY,WEEKLY,MONTHLYが設定されている場合、$SYSLOG_PATH/jessys.log.<mmddyy>という名前のSYSLOGが、このSYSLOG_PATHで指定されたディレクトリに配置されます。jessys.log.<mmddyy>SYSLOG=DAILY,WEEKLY,MONTHLYのネーミング規則に従って名づけられます。
SYSLOG_PATHを指定しなかった場合、デフォルトでは、SYSLOGファイルはそのまま$JESROOT/jessyslog (SYSLOGDAILYWEEKLY、またはMONTHLYに設定されている場合)、または$JESROOT (SYSLOGONに設定されている場合)に残ります。

QSPACE_THRESHOLD

パーセンテージ: 1-99。これはキュー領域使用率のしきい値です。キュー領域の使用率がこのしきい値に達すると、新しいジョブは発行できますが、artjesadminの出力時に警告メッセージが表示されます。また、有効な場合は、自動パージが実行されます。デフォルトは80です。

AUTOPURGE

整数値: 0-32767 (2^15-1)。
0: 自動パージを無効化します。デフォルト値です。
N(>=1): 自動パージを有効化し、最初に終了したN個のジョブを一度にパージします。
N>=(OUTPUTキューのサイズ)の場合、OUTPUTキュー内のすべてのジョブがパージされます。

AUTOPURGE_KEEPFILES

ON:: 自動パージ中に、フォルダ<JESROOT>/<JOB_ID><JESROOT>/<JOB_ID>.bakにバックアップします。関連するメッセージをOUTPUTキューから削除します。
AUTOPURGE=0の場合、この項目は無視されます。デフォルト値です。
OFF: 自動パージ中に、ジョブに属するファイル(フォルダ<JESROOT>/<JOB_ID>に存在)をすべて削除します。
リスト4 jesconfigの例
JESROOT=/nfs/users/john_doe/jreroot
DEFAULTJOBCLASS=B
DEFAULTJOBPRIORITY=9
EVENTPOST=S,C,E,P,L,A
QSPACE_MAX_USAGE=80
AUTOPURGE=10
AUTOPURGE_KEEPFILES=ON
注意: キュー領域の使用率が80%に達すると、最初に終了した10個のジョブが自動的にパージされます。
注: 自動パージ・ジョブについては、フォルダ<JESROOT>/<JOB_ID>にあるすべてのファイルが <JESROOT>/<JOB_ID>.bakとしてバックアップされます

TuxJESセキュリティ構成

TuxJESでは、Oracle Tuxedoセキュリティ・メカニズムを活用して認証を実装します。認証が有効の場合、genapprofileユーティリティを使用してセキュリティ・プロファイルを生成し、それをartjesadminパラメータとして使用して、TuxJESシステムにアクセスしてください。プロファイルで使用されるユーザーは、ジョブ所有者です。ジョブを管理(取消し、パージ、保留および解放)できるのは、所有者だけです。ジョブは、誰でも表示できます。ジョブに所有者がない場合、誰でも操作できます。

Oracle Tuxedoアプリケーションはセキュリティが構成されていない場合でも、genjesprofileユーティリティを使用してジョブ所有者権限のチェックを強制し、データベース接続MT_DB_LOGINを格納できます。

このセキュリティ・メカニズムに基づき、ART for Batchは、ユーザーのジョブ操作アクションを制御するための軽量ジョブ・アクセス認可メカニズムを提供します。この認可に必要なのはシンプルな構成のみです。認可サーバーやサードパーティのセキュリティ製品さえ必要ではありません。詳細は、「TuxJESジョブ・アクセスの認可」を参照してください。

TuxJESユーザー・マッピング・ファイル

PRIVILEGE_MODE値をMAPPING_CREDENTIALに指定する場合、ユーザー・マッピング・ファイルがロードされ有効になります。Oracle TuxedoユーザーとOSユーザーの間のマッピング関係を定義します。マッピング・ファイル内のすべての行は次のフォーマットになります。

tuxedousername OSusername

ユーザー・マッピング・ファイルの所有者はルート、ファイル権限は「-rw-------」にすることをお薦めします。

リスト5に、TuxJESシステム用ユーザー・マッピング・ファイルのセグメント例を示します。

リスト5 TuxJESシステム用ユーザー・マッピング・ファイル例
tuxedouser1 OSuser1
tuxedouser2 OSuser2

Oracle TuxedoアプリケーションとしてのTuxJESの設定(データベースを使用)

TuxJESの設定

TuxJESで/Qの代替としてデータベースを使用して、バッチ・ジョブのメタデータを格納および管理できます。このモードでは、TuxJESに/Qが不要になり、パフォーマンスの向上と完全なデータ整合性が提供されます。

注: 現在はOracle Databaseのみがサポートされています。
UBBCONFIG

TuxJESでは/Qではなくデータベースを使用してジョブが格納されるため、/QおよびサーバーTMQUEUE/TMS_QMのグループを使用する必要はありません。他のすべてのサーバーおよびグループは影響を受けません。

JESCONFIG

データベースを使用できるようにするために、USE_DBという名前の新しい構成項目がJESCONFIGファイルに追加されました。表2USE_DBの値を示します。リスト6に例を示します。

表2 USE_DBの値
名前
説明
USE_DB
ORACLE
Oracle Databaseを使用してジョブ管理データを格納します。
DB2
DB2を記憶域として使用してジョブ情報を格納します。
これは現在サポートされていません。
NOT SET
/Qを使用してジョブ情報を格納します。

注意:

Oracle Databaseの設定

データベース資格証明の取得

データベースを記憶域として使用する場合は、接続情報が必要です。これは暗号化され、JESROOTディレクトリの別の非表示ファイル(JESROOT/.jessysprofile)に格納されます。このファイルを生成するために、新しいユーティリティgensysprofileが追加されました。

使用方法は次のとおりです。

gensysprofile -d <JESROOT>

gensysprofileを起動すると、ユーザー名、パスワードおよび(データベース)サーバー名を入力するよう求められます。画面上のプロンプトを示します。

リスト7 画面プロンプト
User name:
Password:
Server name:

(データベース)サーバー名の文字列はデータベース・サーバーが存在する場所を示し、通常、データベース・インスタンスの名前です。構文は、TWO_TASK環境変数の設定に使用されるものと同じです。書式は次のいずれかです。

たとえば、orcl12cまたは//bej301420.cn.oracle.com:1522/orcl.cn.oracle.comを使用できます。

出力は、JESROOTディレクトリの非表示ファイル.jessysprofileです。

注意:
表の作成

Oracle Databaseを使用してジョブ管理データを格納するには、最初に表JES2_JOBNUMおよびJES2_JOB_PARAMを作成する必要があります。これらの2つの表を作成および削除するために、2つの外部シェル・スクリプトが提供されています。2つのスクリプトは、$JESDIR/toolsにあります。

OracleのデータベースTAFの設定(オプション)

Oracle Database TAF (Transparent Application Failure)が有効な場合、データベース・サーバーがクラッシュすると、データベースのリカバリ後、TuxJESドメインを再起動しなくてもTuxJESは継続してサービスを提供できます。TAFが有効でない場合、データベース接続が切断されたら、データベースのリカバリ後にTuxJESドメインを再起動する必要があります。

TAFは、クライアント側とサーバー側の両方で構成できます。両方とも構成した場合、サーバー側の設定が優先されます。

TAF構成の詳細は、Oracle Databaseのドキュメントを参照してください。次にTAFの簡単な説明を示します。

クライアント側でTAFを構成するには、接続記述子のCONNECT_DATAの部分にFAILOVER_MODEパラメータを含めます。

クライアント側でTAFオプションを構成するには、tnsnames.oraファイルにOracle Netパラメータを追加する必要があります。TAFオプションを実行するパラメータは、接続記述子のCONNECT_DATAセクションにあるFAILOVER_MODEです。FAILOVER_MODEには、次のパラメータが含まれる場合があります。

表3 tnsnames.oraファイルのパラメータ
パラメータ
説明
TYPE
フェイルオーバーのタイプを指定します。
METHOD
プライマリ・ノードからバックアップ・ノードにフェイルオーバーが行われる速さを設定します。
BACKUP
バックアップ接続として使用する別のネット・サービス名を指定します。
RETRIES
接続を試行する回数を指定します。
DELAY
接続試行の間隔を秒数で指定します。

リスト8にサンプルを示します。このサンプルでは、FAILOVER_MODEにフェイルオーバー・タイプsessionおよびメソッドbasicが構成されています。

リスト8 フェイルオーバーのサンプル構成
TNSNAMES.ora
ART =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = bej301738.cn.oracle.com)(PORT = 1521))
      (LOAD_BALANCE = yes)
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = art)
      (FAILOVER_MODE =
        (TYPE = session)
        (METHOD = basic)
      )
    )
  )

MPモードでのTuxJESの設定

TuxJESは、MPモード内で容易に構成できるようになりました。ただし、ジョブを実行するには、EJRとTuxJESの両方で、ジョブを異なるマシンで同時に実行できるように構成を調整する必要があります。この項では、MPモードでバッチ・ランタイムを構成するための必須の構成について具体的に説明します。

TuxJESドメインの異なるマシン上のすべてのサーバーで共有されるジョブのデータは、共有記憶域(NFS)に置いて、ドメイン内のすべてのマシンでアクセスできるようにする必要があります。さらに、NFSはすべてのマシンで同じマウント・ポイントでマウントする必要があります。最後に、JESROOTは、各ノードで共有JESルート・ディレクトリを指すように正しく構成する必要があります。実行時には、すべてのマシン上のTuxJESサーバーが、そのような共有JESROOTに対してデータの書込みや取得を行います。

MPモードでのEJRの構成の詳細は、「バッチ・ランタイムの使用」の「MPモードでのバッチ・ランタイムの構成」を参照してください。

 


TuxJESの使用

TuxJESシステムが起動したら、artjesadminユーティリティを使用して、ジョブの送信、保留、解放、取消し、パージ、ジョブ情報の表示、ジョブ・ステータス変更のためのイベントのサブスクライブを行うことができます。

ジョブの送信

artjesadminのサブコマンドsubmitjobを使用して、ジョブを送信することができます。

submitjob (smj) -i|-I scriptfilename [-t timeout] [-o ejr option]

-i scriptfilename:スクリプト・ファイル。

-I scriptfilename:JCLジョブの発行のために指定されるオプション。

-t timeout:ジョブを発行するときに、タイムアウトしきい値を制御するために指定します。

-o ejr option:EJRスクリプト・ファイルに渡すオプションを指定します。

artjesadmin -yオプションを使用して、ジョブを同期的に発行することができます。

詳細は、『Oracle Tuxedo Application Runtime for Batchリファレンス・ガイド』「artjesadmin」を参照してください。

ジョブ情報の表示

artjesadminのサブコマンドprintjobを使用して、単独のジョブまたは一連のジョブの情報を表示することができます。

printjob(ptj) -n jobname | -j jobid | -c job_class |-a [-v] [-m]

-n jobname: 指定されたジョブ名を持つジョブを表示します
-j jobid: 個別のジョブ情報を表示します
-c job_class: 個別のクラス・ジョブ情報を表示します
-a: すべてのジョブを表示します
-v: 冗長モード
-m: あるジョブの各ステップのCPU使用時間率を出力します

printjobサブコマンドの出力には、次の内容が含まれます。

EXECUTING: ジョブは実行中です
CONVING: ジョブは変換を待機しています
WAITING: ジョブは実行を待機しています
DONE: ジョブは、正常に完了しました
FAIL: ジョブは完了しましたが、失敗しました
HOLD_WAITING: ジョブは、変換後、保留状態です
HOLD_CONVING: ジョブは、変換なしの保留状態です
INDOUBT: ジョブは、イニシエータが再起動されたため、インダウト状態です
CANCELED: ジョブはキャンセルされました
注: JES2システムにあるジョブが多すぎる場合、コンソールですべてのジョブのステータスを出力するときにタイムアウトが発生する可能性があります。この状況を回避するには、JESのubbconfigに十分長いブロック・タイムを設定する必要があります。
注意: ブロック・タイムの設定の詳細は、「TuxJES用のUBBCONFIG内のブロック・タイム」を参照してください。

ジョブ・ステータスの取得(同期)

ジョブ・ステータスを同期的に取得するには、次の書式でartjesadminを使用します。

artjesadmin [-f [security_profile]] -p -j jobid

-p-j

オプション-p-jは、artjesadminコンソールを使用せずにジョブ・ステータスを取得するために追加されたオプションです。

終了コード

表4に、-pの場合のartjesadminの終了コードを示します。

表4 終了コード
終了コード
説明
ノート
0
ジョブが正常に終了しました。
ジョブ・ステータス= DONE
ジョブが正常に終了しました。
1
コマンド実行が失敗しました。
失敗の原因は、内部エラー、ネットワーク・エラーまたは構文エラーのいずれかです。
3
ジョブ・ステータス= FAIL
JOB実行が失敗しました。
4
ジョブ・ステータス= CANCEL
ジョブがキャンセルされました。
5
ジョブ・ステータス= CONVING
ジョブは変換を待機しています。
6
ジョブ・ステータス= EXECUTING
ジョブは実行中です。
7
ジョブ・ステータス= HOLD_CONVING
ジョブは、変換なしの保留状態です。
8
ジョブ・ステータス= HOLD_WAITING
ジョブは、変換後の保留状態です。
9
ジョブ・ステータス= WAITING
ジョブは実行を待機しています。
10
ジョブ・ステータス= DISCARD
このステータスは、tpenqueue()が失敗したときに発生します。
11
ジョブ・ステータス= INDOUBT
ジョブが実行されているときに、JESサーバーARTJESINITIATORがシャットダウンして再起動した場合、ジョブ・ステータスはINDOUBTになります。
22
ジョブが存在しません。
N/A

標準出力

表5に示す情報は、次の書式でstdoutに出力されます。
<JOBID>,<JOBNAME>,<JOBSTATUS>,<JOB RETURN CODE>

表5 標準出力
出力内容
説明
サンプル
<JOBID>
ジョブID
00005097
<JOBNAME>
ジョブ名
JOBA
<JOBSTATUS>
ジョブの現在のステータス
DONE
<JOB RETURN CODE>
EJRから返された、ジョブのリターン・コード(ジョブが完了した場合のみ)
C000

リスト9の例: ジョブが正常に終了しました
00000002,JOBA,DONE,C0000
リスト10の例: ジョブは終了しましたが、失敗しています
00000002,JOBA,FAILED,U0568
リスト11の例: ジョブが実行中です
00000002,JOBA,EXECUTING

ジョブの保留

artjesadminのサブコマンドholdjobを使用して、CONVINGまたはWAITINGステータスにあるジョブまたは一連のジョブを保留することができます。

holdjob(hj) -n job name | -j jobid | -c job_class | -a

-n jobname: 指定されたジョブ名を持つジョブを保留します
-j jobid: 特定のジョブを保留します -c job_class: 特定のクラスのジョブを保留します -a: すべてのジョブを保留します

ジョブの解放

artjesadminのサブコマンドreleasejobを使用して、HOLD_WAITINGまたはHOLD_CONVINGステータスにあるジョブまたは一連のジョブを解放することができます。

releasejob(rlj) -n job name | -j jobid | -c job_class | -a

-n jobname: 指定されたジョブ名のジョブを解放します
-j jobid: 特定のジョブをリリースします -c job_class: 特定のクラスのジョブをリリースします -a: すべてのジョブをリリースします

ジョブの取消し

artjesadminのサブコマンドcanceljobを使用して、単独のジョブまたは一連のジョブの情報を取り消すことができます。

canceljob(cj) -n job name | -j jobid | -c job_class | -a

-n jobname: 指定されたジョブ名を持つジョブを取り消します
-j jobid: 特定のジョブを取消します -c job_class: 特定のクラスのジョブを取消します -a: すべてのジョブを取消します

ジョブのパージ

artjesadminのサブコマンドpurgejobを使用して、単独のジョブまたは一連のジョブの情報をパージすることができます。

purgejob(pgj) -n job name |-j jobid | -c job class | -s job status | -a

-n jobname: 指定されたジョブ名のジョブをパージします
-j jobid: 特定のジョブをパージします
-c job class: 指定されたジョブ・クラスのジョブをパージします
-s job status: 指定されたジョブ・ステータスのジョブをパージします
-a: すべてのジョブをパージします

DONEまたはFAILステータスの完了されたジョブが、パージ・キューへ移動されます。他のジョブの場合、purgejobが、canceljobと同じ効果を持っています。purgejobコマンドは、ジョブを直接パージしません。ARTJESPURGEサーバーが、TuxJESシステムからジョブを削除します。

自動ジョブ・パージ

キュー領域内の使用可能な領域がすべて使用されている場合は、新しいジョブは発行できません。新しいジョブの発行を有効化するには、ユーザーは一部のジョブを手動でパージし、使用率を低下する必要があります。ただし、これは、アプリケーション管理者に不都合が生じ、大きな労力がかかる場合があります。もう1つの強化、自動パージを導入できます。自動パージを有効にした場合、キュー領域の使用率が警告レベルしきい値に達すると、OUTPUTキューにある指定した数のジョブが自動的にパージされます。自動パージは有効または無効(デフォルト)にできます。ユーザーは自動パージされるすべてのジョブのファイルをバックアップするのか、完全に削除するのかを選択できます。

注意: 自動パージは、あるジョブがキュー領域に正常に挿入され、キューの使用率が警告しきい値に到した時点でのみ発生します。この時点でOUTPUTキューにジョブが存在しない場合は、ジョブは自動パージされません。極端な例として、あるジョブが発行された後に、キュー領域の状態が使用可能な領域がすべて使用されていますおよびOUTPUTキューにジョブがありませんに変更された場合は、この最後のジョブの発行によってジョブが自動パージされることはありません。この状況では、自動パージは実行されないため、ユーザーは一部のジョブを手動でパージする必要があります。そうでない場合は、新しいジョブを発行できません。
注意: ジョブの発行が失敗すると、自動パージは起動されません。
注意: 自動パージは現在のジョブの発行に影響しません。
注意: JESシステムは、一定間隔でのチェックなど、他のどの形式でもバックグラウンドで自動パージを実行することはありません。
注意: TSAMPlusプラグインを使用したOEM統合は、ジョブ・ログとsysoutの自動アーカイブをサポートしています。ジョブがパージされると、主要なジョブ情報とジョブ・ログはEM管理リポジトリで入手可能になります。
注意: キュー領域の使用率のチェック動作は、あるジョブがキュー領域に正常に挿入された時点でのみ発生します。ジョブの発行のみが、このチェック動作を起動できます。ジョブの発行が失敗すると、このチェック動作は起動されません。
注意: チェック結果は現在のジョブの発行に影響しません。
注意: JESシステムは、一定間隔でのチェックなど、他のどの形式でもバックグラウンドでキュー領域の使用率のチェックを実行することはありません。
キュー領域の警告しきい値の設定

キュー領域の使用率の警告しきい値を設定します。このしきい値はファイルjesconfigで構成できます。新しいジョブを発行すると、JESは、キュー領域の現在の使用率が警告しきい値に達していないかをチェックします。

  1. jesconfigファイルで自動パージが有効になっている場合は、自動パージを起動します。
  2. 「ジョブは正常に発行されました」というメッセージに続けて、1行の警告メッセージがartjesadminコンソールに出力されます。これは、ユーザーに一部のジョブをパージするよう示しています。または、自動パージされたジョブの数が表示されます(自動パージが有効になっている場合)。

この機能は、tuxedo /Qの新機能の1つです。現在のキュー領域の使用率がパーセンテージで返されます。

注意: キュー領域の使用率のチェック動作は、あるジョブがキュー領域に正常に挿入された時点でのみ発生します。ジョブの発行のみが、このチェック動作を起動できます。
注意: キュー領域が警告しきい値を超えているものの100よりも小さい場合は、使用可能な領域がすべて使用されているわけではないため、新しいジョブの発行は許可されますが、警告メッセージがartjesadminコンソールに表示されます。
注意: ジョブの発行が失敗すると、このチェック動作は起動されません。
注意: チェック結果は現在のジョブの発行に影響しません。
注意: JESシステムは、一定間隔でのチェックなど、他のどの形式でもバックグラウンドでキュー領域の使用率のチェックを実行することはありません。

ARTJESINITIATOR構成の表示/変更

artjesadminのサブコマンドprintconcurrentを使用して、同時にジョブを実行するARTJESINITIATORサーバーの最大数を表示することができます。

printconcurrent(pco) -g groupname -i serverid

-g groupname: ARTJESINITIATORサーバーのTuxedoグループ名
-i serverid: ARTJESINITIATORサーバーのTuxedoサーバーID

artjesadminのサブコマンドchangeconcurrentを使用して、同時にジョブを実行するARTJESINITIATORサーバーの最大数を変更することができます。

changeconcurrent(chco) -g groupname -i serverid -n concurrent_num

-g groupname: ARTJESINITIATORサーバーのTuxedoグループ名
-i serverid: ARTJESINITIATORサーバーのTuxedoサーバーID -n concurrent_num: 同時実行されるジョブの最大値

ARTJESINITIATORサーバーの制御

artjesadminのサブコマンドshowjobexecを使用して、ジョブを実行するARTJESINITIATORサーバーの最大数を表示することができます。

showjobexec(she) [-n machine] | [-g groupid [-i serverid]]

-n machine

ARTJESINITIATORサーバーが稼働しているTuxedo論理マシン名。

-g groupid:

ARTJESINITIATORサーバーのTuxedoグループID

-i serverid:

ARTJESINITIATORサーバーのTuxedoサーバーID
注: オプションが何も指定されている場合、すべてのARTJESINITIATORサーバーで実行されているジョブが表示されます。

ARTJESINITIATORサーバーによる、新たに実行するジョブの取得を停止できます。ただし、サーバーは現在仕掛中のジョブの仕上げを続けます。

stopjobexec(ste) [-n machine] | [-g groupid [-i serverid]]

-n machine:

ARTJESINITIATORサーバーが稼働しているTuxedo論理マシン名。

-g groupid:

ARTJESINITIATORサーバーのTuxedoグループID。

-i serverid:

ARTJESINITIATORサーバーのTuxedoサーバーID。
注: オプションが何も指定されていない場合、すべてのARTJESINITIATORサーバーが新しいジョブの取得を停止します。

ARTJESINITIATORサーバーによる新しいジョブの取得と実行を再開します。

resumejobexec(rse) [-n machine] | [-g groupid [-i serverid]]

-n machine:

ARTJESINITIATORサーバーが稼働しているTuxedo論理マシン名。

-g groupid:

ARTJESINITIATORサーバーのTuxedoグループID

-i serverid:

ARTJESINITIATORサーバーのTuxedoサーバーID
注: オプションが何も指定されていない場合、すべてのARTJESINITIATORサーバーが再開します。

ARTJESINITIATORサーバーの制御(同期)

artjesadminを次の書式で使用して、ARTJESINITIATORサーバーを同期的に制御することができます。

artjesadmin [-f [security_profile]] -x showjobexec|resumejobexec|stopjobexec [[lmid=machine|grpid=groupid|grpid=groupid,srvid=serverid];...]

-x showjobexec [[lmid=machine|grpid=groupid|grpid=groupid,srvid=serverid];...]:

すべてのARTJESINITIATORサーバー、論理マシン・サーバー、グループID別サーバー、またはグループIDとサーバーID別サーバーについて、実行中のジョブ数を表示します。

-x stopjobexec [[lmid=machine|grpid=groupid|grpid=groupid,srvid=serverid];...]:

すべてのARTJESINITIATORサーバー、論理マシン・サーバー、グループID別サーバー、またはグループIDとサーバーID別サーバーについて、実行する新しいジョブの取得を停止します。

-x resumejobexec [[lmid=machine|grpid=groupid|grpid=groupid,srvid=serverid];...]:

すべてのARTJESINITIATORサーバー、論理マシン・サーバー、グループID別サーバー、またはグループIDとサーバーID別サーバーについて、実行する新しいジョブの取得を再開します。

イベントのサブスクライブ/サブスクライブ解除

artjesadmin のサブコマンドeventを使用して、ジョブ・ステータス変更イベントをサブスクライブまたはサブスクライブ解除することができます。

event (et) [-t C,E,P,L,A] on|off

C: ジョブ変換完了イベント。
E:ジョブ実行終了イベント。
P: ジョブ・パージ・イベント。
L: ジョブ取消し完了イベント
A: サポートされているすべてのイベント。イベントがonに設定されている場合、Aがデフォルトです。
on |off: 送信がonまたはoffです。on設定は、-tオプションとともに使用できます。

イベントをサブスクライブすると、対応するイベントが生成したときに、artjesadminコンソール上に通知されます。

 


TuxJESジョブ・アクセスの認可

TuxJESセキュリティ・メカニズムに基づき、ART for Batchは、ユーザーのジョブ操作アクションを制御するための軽量ジョブ・アクセス認可メカニズムを提供します。この認可に必要なのはシンプルな構成のみです。認可サーバーやサードパーティのセキュリティ製品さえ必要ではありません。

このメカニズムでは、管理者はTuxJESジョブ操作認可ルールを使用して、特定のユーザーに特定のジョブ操作の実行を認可します。

あるOracle TuxedoユーザーがUnix/Linuxのrootにマップされている(または、これに相当する)場合、このユーザーはスーパー・ユーザーとして扱われます。このスーパー・ユーザーはどのようなジョブ操作でも、認可チェックなしに実行を許可されます。

ジョブ・アクセス認可メカニズムの構成

TuxJESジョブ・アクセス認可メカニズムを有効化するには、次のように構成する必要があります。

このメカニズムを使用する場合、次の構成は省略可能です。

また、TuxJESシステムで使用する暗号化済みのルール・ファイルを生成するにはgenjesaclツールを使用します。

詳細は、 「ARTJESADM」 「genjesacl」を参照してください。

ジョブ操作認可ルールの使用

ルールの設定

ルールを暗号化するかしないかを設定するJES_ACL_FILEファイル。

プレーンなJES_ACL_FILEファイル

JES_ACL_FILEで指定されたプレーン・テキスト・ファイルにジョブ操作認可ルールを設定します。次のCSV形式を使用します。

permission; user-list; operation-list; jobname-list

次にいくつかの例を示します。

permission

権限にはALLOWまたはDENYを指定します。
このフィールドでは大文字小文字は区別されます。

user-list

Oracle Tuxedoのユーザー名を指定します。ユーザー名を指定する場合、Oracle Tuxedoのネーミング要件だけでなく、以下の要件にも従う必要があります。
- ユーザー名にはセミコロン(;)は使用できません。
- アスタリスク(*)のみのユーザー名は使用できません。
複数のユーザー名は「:」で区切ります。アスタリスクは(*)すべてのOracle Tuxedoユーザーを意味します。このフィールドではワイルドカードはサポートされていません。たとえば、tpuser*tpuserで始まる名前を持つすべてのユーザーの意味ではありません。
Oracle Tuxedoのネーミング要件については、 『Oracle Tuxedoコマンド・リファレンス』を参照してください。

operation-list

ジョブ操作を指定します。指定できるジョブ操作は、SUBMITCANCELPURGEHOLD、およびRELEASEです。
これら5種類のジョブ操作のうち、最も重要なのはSUBMITで、残りの4つのジョブ操作の前提条件です。その理由は、ユーザーがジョブを取消し、パージ、保留、またはリリースしようとした場合、TuxJESはまず、このユーザーがそのジョブの所有者であるかどうかをチェックするからです(ユーザーがSUBMITの権限を付与されていて、ジョブの発行に成功した場合のみ、このユーザーはこのジョブの所有者になり、TuxJESシステムからパージされるまでジョブを所有し続けます)。
複数の操作は「:」で区切ります。アスタリスク(*)はこれらの操作すべてを意味します(SUBMIT:CANCEL:PURGE:HOLD:RELEASEに同じです)。このフィールドではワイルドカードはサポートされていません。このフィールドでは、大文字/小文字が区別されます。

jobname-list

ジョブ名を指定します。ジョブ名はジョブのファイル名ではありません。これはm_JobBeginで指定された内部的なジョブ名で、JCLの//<NAME> JOB文から変換されたものです。
複数のジョブ名を指定するときには「:」で区切ります。ワイルドカード「*」(0個以上の文字)、および「?」(1文字のみ)がサポートされています。
暗号化されたJES_ACL_FILEファイル

JES_ACL_FILE_TYPE=ENCRYPTEDを設定した場合、JES_ACL_FILEファイルを暗号化されたファイルとして構成する必要があります。この暗号化されたファイルはgenjesaclツールで生成可能です。

詳細は、 「JESCONFIG」 「genjesacl」を参照してください。

処理ルール

複数の一致ルールが存在する場合、先頭の一致ルールが最優先されます。一致ルールは、ユーザー、操作、ジョブ・フィールドがすべて一致することを意味します。

ユーザー、操作、およびジョブに一致するルールが見つからない場合、JESCONFIGファイルのJES_ACL_MODEが有効になります。JES_ACL_MODEが設定されていない場合、そのデフォルト値で、操作が拒否されることを意味するJES_ACL_MODE=MACが有効になります。

リスト15に例を示します。

リスト15 ルール処理の例
ALLOW; tpuser1;*;*
DENY; tpuser1;*; JOBA

前述のルールは2つとも一致ルールですが、1つめの一致ルールが優先されます。つまり、tpuser1JOBAへの操作が認可され、2つめの一致ルールは有効になりません。

ユーザーtpuser1に、JOBAのジョブを除くすべてのジョブの操作をさせたい場合は、前述の2つのルールの順番を入れ替えます。

ルールへのコメントの追加

文字#で始まる行はコメントとみなされます(先行するスペースは無視されます)。例:

# This is comment
     # This is also comment.
ALLOW;tpuser1;*;JOBA:JOBB

ルールの直後、同じ行にコメントを書かないでください。たとえば、次の行の#Cはコメントとはみなされません。

ALLOW;tpuser1;*;JOBA:JOBB#C

サンプル

様々な方法でルールを設定した例

名前がJOBAAJOBBB、およびJOBCCで始まるジョブを保護する必要があるとします。tpuser1tpuser2に名前がJOBAAで始まるジョブへの権限を、tpuser3tpuser4に名前がJOBBBおよびJOBCCで始まるジョブへの権限を付与します。その他のジョブは保護の必要がありません。

この要件を満足させるルールは次のようになります。

ALLOW;tpuser1:tpuser2;*;JOBAA*
ALLOW;tpuser3:tpuser4;*;JOBBB*:JOBCC*
DENY;*;*;JOBAA*:JOBBB*:JOBCC*
ALLOW;*;*;*

次のルールもこの要件を満足させます。

ALLOW;tpuser1:tpuser2;*;JOBAA*
ALLOW;tpuser3:tpuser4;*;JOBBB*:JOBCC*
DENY;*;*;JOBAA*:JOBBB*:JOBCC*

次に、JESCONFIGファイルにJES_ACL_MODE=DACを設定します。

ワイルドカードを使ってルールを設定した例

システムに3人のOracle Tuxedoユーザー、tpuser1tpuser2tpuser3と30個のジョブJOBX01からJOBX10JOBY01からJOBY10JOBZ01からJOBZ10があるとします。

tpuser1tpuser2にはすべてのジョブを操作する権限を与え、tpuser3にはJOBX10JOBY10JOBZ01からJOBZ10の12個のジョブだけを操作する権限を与えたいと思います。

様々な解決方法があります。

オプションA:

DENY;tpuser3;*;JOBX0?:JOBY0?
ALLOW;*;*;*

オプションB:

ALLOW;tpuser3;*;JOBX10:JOBY10:JOBZ*
ALLOW;tpuser1:tpuser2;*;*

このケースでは、オプションAは今後、新しく追加されるユーザーに高い権限を認可してしまうため、お薦めできません。

JES_ACL_MODEの使用例

ルール・ファイルに含まれるルールがたった1行だけだとします。

ALLOW; tpuser1; *; JOBA

ユーザーtpuser1JOBBを発行、ユーザーtpuser2JOBA発行しようとした場合、これらの要件に対する一致ルールはありません。したがって、JES_ACL_MODEの設定が有効になります。

デフォルトでは、JES_ACL_MODEMACに設定されているため、このようなアクションは拒否されます。しかし、JES_ACL_MODEDACに設定すると、前述の操作は許可されます。

artjesadminを使用してジョブ・アクセス認可を動的に変更

artjesadminコマンドを使用して、ジョブ・アクセス認可を動的に変更することができます。

artjesadmin -f [security_profile] -x setjesacl aclfile=rulepath[,aclfiletype=PLAIN|ENCRYPTED[,aclmode=MAC|DAC]]

また、artjesadminサブ・コマンドも使用できます。

setjesacl (sja) -f rulepath [-t PLAIN|ENCRYPTED] [-m MAC|DAC]

たとえば、DACモードでジョブ・アクセス認可のルール・ファイルを別のファイル(aclrule.new)に変更する場合、リスト16のとおりartjesadminコマンドを使用するか、またはリスト17のとおりartjesadminサブコマンドを使用します。

リスト16 artjesadminコマンドを使用してジョブ・アクセス認可を動的に変更した例
artjesadmin -f jesprofile -x setjesacl aclfile=aclrule.new,aclmode=DAC 
リスト17 artjesadminサブ・コマンドを使用してジョブ・アクセス認可を動的に変更した例
artjesadmin -f jesprofile 
setjesacl -f aclrule.new -m DAC

 


TuxJESのトレース

ART for Batchは、TuxJESクライアントおよびサーバーで生成されたメッセージ(エラー・メッセージ、警告メッセージ、情報メッセージ、デバッグ・メッセージ)のトレースをサポートします。これらのメッセージは書式設定されて、TuxJESトレース・ファイルに保存されます。表示するメッセージの決定には、4種類のトレース・レベル(ERROR、WARN、INFO、DEBUG)を使用できます。

環境変数を設定する

Batch Runtimeを実行する前に、次の環境変数を設定できます。

表6 TuxJESのトレースで使用可能な環境変数
変数
使用方法
JES_TRACE_PATH
TuxJESトレース・ファイルが保存されているディレクトリ。
デフォルト・ディレクトリは${APPDIR}/Logsです。
JESTRACE
TuxJESトレース・メッセージの表示レベル。次のいずれかを設定します。
  • ERRORまたはerror:TuxJESはエラー・メッセージのみを出力します。
  • WARNまたはwarn:TuxJESは、エラー・メッセージと警告メッセージを出力します。
  • INFOまたはinfo:TuxJESは、エラー・メッセージ、警告メッセージ、情報メッセージを出力します。
  • DEBUGまたはdebug:TuxJESはすべてのメッセージを出力します。
デフォルト値はWARNです。
JESTRACEが定義されていない場合、または前述の値のいずれも指定されていない場合には、TuxJESは、JESTRACEWARNが指定されているものとみなします。つまり、TuxJESはエラー・メッセージと警告メッセージを出力します。

TuxJESトレース・ファイルの理解

TuxJESサーバーとクライアントには、それぞれ専用のTuxJESトレース・ファイルがあります。これらのトレース・ファイルには、TuxJESクライアントやサーバーにより生成されたメッセージ(エラー・メッセージ、警告メッセージ、情報メッセージ、デバッグ・メッセージ)が保存されます。

デフォルトでは、JESトレース・ファイルは${APPDIR}/Logsディレクトリに保存されます。Batch Runtimeを実行する前に、環境変数JES_TRACE_PATHを設定して、このディレクトリを変更できます。

TuxJESサーバーのトレース・ファイルには、サーバー名、グループID、サーバーID、固定の接尾辞「jestrace」を組み合わせた名前が付けられます。例:

TuxJESクライアントのトレース・ファイルには、クライアント名と固定の接尾辞「jestrace」を組み合わせた名前が付けられます。例:

TuxJESトレース・メッセージ形式の理解

TuxJESトレース・メッセージは次のフィールドから構成されています。

表7 TuxJESトレース・メッセージ形式の理解
フィールド
コンテンツ
1
プロセスID (PID)
2
スレッドID (TID)
3
現在のタイムスタンプ
4
トレース・メッセージ・レベル
5
メッセージを表示できる関数
6
考えられる動的な値とともに表示されるメッセージ

TuxJESトレース・メッセージ・レベルの理解

TuxJESトレース・メッセージ・レベルには次の4種類があります。

TuxJESトレース・メッセージ・レベルの制御

環境変数JESTRACEを使用して、TuxJESトレース・メッセージ・レベルを設定したり、artjesadminコマンドを使用して動的に変更したりして、どのレベルのメッセージが表示されるかを決定できます。

JESTRACEを使用してTuxJESトレース・メッセージ・レベルを設定

Batch Runtimeを実行する前に、環境変数JESTRACEを設定する必要があります。JESTRACEを設定すると、UBBCONFIG SERVERSセクションに指定されている、すべてのTuxJESクライアントとサーバーのTuxJESトレース・メッセージ・レベルが設定されます。

JESTRACEの詳細は、「環境変数の設定」を参照してください。

artjesadminを使用してTuxJESトレース・メッセージ・レベルを動的に変更

artjesadminコマンドを使用して、TuxJESトレース・メッセージ・レベルを動的に変更することができます。

artjesadmin [-f [security_profile]] -x settracelevel [trclvl=trace_level[,[lmid=machine|grpid=groupid|grpid=groupid,srvid=serverid];...]]

また、artjesadminサブ・コマンドも使用できます。

settracelevel(stl) -t tracelevel [-n machine] | [-g groupid [-i serverid]]

パラメータtrclvl-tには、012、または3を設定できます。0ERRORレベル、1WARNレベル、2INFOレベル、3DEBUGレベルを表します。

machinegroupid、およびserveridパラメータのいずれも指定されていない場合、artjesadminは現在のクライアントとすべてのサーバーについて、UBBCONFIG SERVERSセクションで指定されているTuxJESトレース・メッセージ・レベルを変更します。1つまたは複数のパラメータを指定すると、artjesadminは、指定されたサーバーのTuxJESトレース・メッセージ・レベルの実を変更します。現在のクライアントは変更されません。

詳細は、『Oracle Tuxedo Application Runtime for Batchリファレンス・ガイド』「artjesadmin」を参照してください。

リスト18 例A: artjesadminコマンド
artjesadmin -x settracelevel trclvl=3
リスト19 例A: artjesadminサブ・コマンド
artjesadmin
settracelevel -t 3
リスト20 例B: artjesadminコマンド
artjesadmin -x settracelevel trclvl=0,lmid=SITE1
リスト21 例B: artjesadminサブ・コマンド
artjesadmin
settracelevel -t 0 -n SITE1
リスト22 例C: artjesadminコマンド
artjesadmin -x settracelevel trclvl=2,grpid=1
リスト23 例C: artjesadminサブ・コマンド
artjesadmin
settracelevel -t 2 -g 1
リスト24 例D: artjesadminコマンド
artjesadmin -x settracelevel trclvl=2,grpid=1,srvid=1
リスト25 例D: artjesadminサブ・コマンド
artjesadmin
settracelevel -t 2 -g 1 -i 1

 


関連項目


  先頭に戻る       前  次