リファレンス ガイド

     前  次    新しいウィンドウで目次を開く     
ここから内容の開始

Oracle TSAM リファレンス ガイド

Oracle TSAM リファレンス ガイドは、Oracle TSAM ソフトウェアに付属のシステム処理およびコマンドについて説明します。

表 1 Oracle TSAM のシステム処理およびコマンド
名前
説明
呼び出しのメッセージのモニタ属性を取得するためのルーチン
Oracle TSAM エージェント ローカル モニタ サーバ

 


tpgetcallinfo

名前

tpgetcallinfo()— 呼び出しパス モニタのメッセージのモニタ属性を取得するためのルーチン

形式

int tpgetcallinfo(const char *msg, FBFR32 **obuf, long flags)

説明

tpgetcallinfo() は Oracle TSAM API であり、呼び出しパス モニタにのみ使用されます。tpgetcallinfo() は、以下のパラメータをサポートしています。

msg

測定に使用される型付きバッファ。

obuf

フィールドを使うために使用される FML32 バッファ。

flags

将来使用するために予約されたフィールド。

モニタされた呼び出しでは、tpgetcallinfo() に次のフィールドが使用されます。

tpgetcallinfo()

呼び出しパス モニタを有効にした場合、メッセージ モニタ属性を取得します。

tpgetcallinfo()

幅広い機能を実行するために様々なシナリオで使用できます。一般的な使用目的は、以下のとおりです。

表 2 は、FML モニタ メトリクス フィールド名のリストです。

戻り値

モニタ属性を含む FML32 バッファの取得に成功すると、0 が返されます。

異常終了すると、tpgetcallinfo() は -1 を返し、tperrno を設定してエラー条件を示します。

エラー

異常終了時には、tpgetcallinfo() は tperrno を次のいずれかの値に設定します。

[TPEINVAL]

無効な引数が指定されました (たとえば、msg が NULL である場合、あるいは obuf が無効な FML32 バッファである場合など)。

[TPESYSTEM]

メッセージ入力にモニタ属性が含まれていません。これは、メッセージに対して呼び出しパス モニタをオンにしていないためです。

[TPEOS]

オペレーティング システムのエラーが発生しました。

使用例

コード リスト 1 サービス側の tpgetcallinfo の例
#include <stdio.h>
#include <atmi.h>
#include <userlog.h>
#include <fml32.h>
#include <tpadm.h>
#if defined(__STDC__) || defined(__cplusplus)
tpsvrinit(int argc, char *argv[])
#else
tpsvrinit(argc, argv)
int argc;
char **argv;
#endif
{

/* tpsvrinit ロジック */
#ifdef __cplusplus
extern "C"
#endif
void
#if defined(__STDC__) || defined(__cplusplus)
APPSVC(TPSVCINFO *rqst)
#else
TOUPPER(rqst)
TPSVCINFO *rqst;
#endif
{
FBFR32 *metainfo;
int len = 0;
/* metainfo スペースの割り当て */
metainfo = tpalloc("FML32", NULL, 1024);
if (metainfo == NULL ) {
userlog("Memory allocation failed");
tpreturn(TPFAIE, 0, 0, 0);
}
/* モニタ属性の取得 */
if ( tpgetcallinfo(rqst->data, &metainfo, 0) == 0 )
{
char *corrid;
long laststopsec, starttimesec;
if ((corrid = Ffind32(metainfo, TA_MONCORRID, 0, &len) ) {
userlog("Correlation ID = %s", corrid);
}
len = sizeof(starttimesec);
if (( Fget32(metainfo, TA_MONSTARTTIMESEC, &starttimesec, &len) == 0) {
userlog("Message beginning time = %ld", starttimesec);
		}
}
len = sizeof(lasttimesec);
if (( Fget32(metainfo, TA_MONLASTTIMESEC, &lasttimesec, &len) == 0) {
userlog("Message entering my queue time = %ld", lasttimesec);
	}
}
tpfree(metainfo);
/* 残りのサービス プロセス */
ツーツヲ ツーツヲ
}

 


LMS (ローカル モニタ サーバ)

名前

LMS — Oracle TSAM エージェント ローカル モニタ サーバ

形式

LMS SRVGRP=“identifier” SRVID=“number” [other_parms]
CLOPT= “-A -- -l tsam-manager-dataserver-url [-t heartbeat-interval]
[-x internal-queue-size-limit] [-e log-warning-interval]”

説明

LMS は、Oracle TSAM エージェントの Tuxedo サーバです。LMS では、次の機能が提供されます。

LMS は、適切なオプションを使用して UBBCONFIG ファイルに設定する必要があります。1 つの Tuxedo マシンにデプロイできる LMS は 1 つだけです。

オプション

-l

必須パラメータです。このパラメータの後に Oracle TSAM マネージャ データ サーバが続きます。Oracle TSAM マネージャのインストールに基づき、ホスト アドレスおよびポート番号が設定されます。
注意 : tsam/dataserver は、データ サーバ アドレスです。tsam/dataserver を変更しないよう強くお勧めします。
TCP/IP アドレスの場合、表 1-2 に示すように、次のいずれかの形式が使用されます。

表 1-2 Ipv4 および IPv6 アドレスの形式
IPv4
IPv6
//IP:port
//[IPv6 address]:port
//hostname:port_number
//hostname:port_number
//#.#.#.#:port_number
Hex format is not supported

詳細については、『Tuxedo 10g R3 リファレンス ガイド』のセクション 5、『ファイル形式とデータ記述方法』にある TUXENV(5) 環境変数リスト内の TMUSEIPV6 を参照してください。

-x

省略可能なパラメータ。LMS の内部キューの最大サイズを制限します。範囲は、[1001 ~ 999999] です。Oracle TSAM のデフォルト プラグインから送信されるメッセージは、まずキューに格納されます。システム負荷が大きい場合、キューで大量のメモリが消費されている可能性があります。「-x」オプションを使用すると、LMS で使用されるメモリ量を調整できます。デフォルトは 100000 です。
内部キューの最大サイズに到達すると、最も古いメッセージが削除され、最新のメッセージが追加されます。

-t

省略可能なパラメータ。このパラメータは、パフォーマンス アクティビティがない場合、LMS が Oracle TSAM マネージャへの接続に必要な時間間隔を秒単位で示します。範囲は、[1 ~ 60] です。デフォルト値は 30 秒です。

-e

省略可能なパラメータ。このパラメータは、キューのサイズ制限によりパフォーマンス メトリクス データが削除された場合、LMS から ULOG に送信される警告メッセージの時間間隔を指定します。範囲は、[1 ~ 65535] です。デフォルト値は、-t の値と同じです。警告メッセージは、これまでの間隔で失われたメッセージ数を報告します。

環境変数

TM_MON_REPORT_LOG

プラグインが LMS サーバの呼び出しに失敗した場合、次のメッセージの報告時間間隔を制御します。
LIBTUX_CAT:6774: WARN: LMS 現在、サーバは使用不可能です。
注意 : TM_MON_REPORT_LOG を手動で設定する必要があります。
TM_MON_REPORT_LOG の範囲は、[0 ~ 65535] (秒) です。時間は、60 秒です。TM_MON_REPORT_LOG=0 は、警告メッセージが無効であることを示します。

使用例

コード リスト 3 UBBCONFIG 内の LMS
...
*SERVERS
LMS SRVGRP=LMSGRP SRVID=1 MINDISPATCHTHREADS=1 MAXDISPATCHTHREADS=5
CLOPT=”-A -- -l tsamweb.abc.com:8080/tsam/dataserver -x 200000 -t 60 -e 120”
...

LMS に関する注意

LMSSVC およびセキュリティ

プラグインおよび LMS 間の通信チャネルは、Tuxedo サービス インフラストラクチャに基づいています。LMSSVC は、要求を受信するために LMS が宣言するサービスです。ACL および MANDATORY ACL が UBBCONFIG に使用される場合は、LMSSVC をすべての監視済みプロセスにアクセスできるように設定する必要があります。

1 つのドメインにデプロイされる LMS 数

ローカル処理から LMS への IPC キューの通信を制限できるように、各マシンに 1 つずつ LMS をデプロイすることをお勧めします。
注意 : 複数のマシンによって 1 つの LMS を使用することができますが、ネットワークの帯域幅を消費し、BRIDGE のコンピューティング サイクルを拡張することになります。Tuxedo アプリケーションのパフォーマンス全体に大きな影響がでる可能性があります。

  ページの先頭       前  次