Initiate Log Stream - Parallel Transporter

Teradata® Parallel Transporter Operator プログラマ ガイド

Product
Parallel Transporter
Release Number
17.10
Published
2021年6月
Language
日本語
Last Update
2021-09-23
dita:mapPath
ja-JP/igj1608578346674.ditamap
dita:ditavalPath
ja-JP/igj1608578346674.ditaval
dita:id
B035-2435
Product Category
Teradata Tools and Utilities

目的

Initiate Log Streamは、ログ ストリームを開始するために使用されます。 Teradata PTスクリプト内では、Log View ServerまたはLog View Clientにメッセージを生成させるためのメッセージ カタログ名が供給されます。 ロギング機能自体は、メッセージ カタログを使用しません。

構造

#include <pxoper.h>
PXSTC_Code PX_LogInit(PX_OperatorHandle  oprhandle,
   char  *componentname,
   PX_Number  instancenumber 
   char  *outputlogreport,
   PX_ErrorProc   errorproc,
   PX_LogHandle *loghandle);

次のような場合に当てはまります。

パラメータ 機能 指定
componentname 入力 コンポーネントの名前
instancenumber 入力 オペレータ インスタンスの番号
loghandle 出力 Logger APIによって割り振られたログ ストリームへのハンドル。

PX_LogInitへのPX_LogHandleポインタのアドレスを渡すことは呼出し元が担当します。ただし、構造体の割振りはLogger APIの担当となります。

errorproc 入力 Logger API内でエラーが発生したときに呼び出される関数へのポインタ。特定のエラー処理が必要ではない場合は、NULL。
oprhandle 入力 オペレータへのハンドル
outputlogreport 入力 プライベート ログ レポートの名前。ログ レポートがパブリックの場合は、NULL。

outputlogreportパラメータには、PrivateFileNameなどの明示的な文字値、またはNULLのいずれかを含めることができます。 NULLが指定された場合、ログはPUBLIC(パブリック)になります。

戻りコード

以下のInitiate Log Stream関数のステータス コードは、Teradata PTオペレータ インターフェースによって定義されます。

ステータス コード 意味
PXSTC_Success 呼出しの成功
PXSTC_LogInsuff MemError メモリ の割振りの失敗
PXSTC_CatalogError メッセージ カタログが指定されていない
PXSTC_Log CommunicationError ノードLoggerとのソケット通信からのエラー
PXSTC_LogPassword Logger APIがロガーのパスワードとして間違った値を供給した(供給されたAPIを使用せずにロガーへのアクセスを試みたことを示す)
PXSTC_InvalidData Type Logger APIにとって未知のパラメータ型が含まれている
PXSTC_NoMessage Catalog 要求されたメッセージ カタログが存在しない
PXSTC_Unknown Error 未知の初期化エラー

オペレータをサポートするために上記以外のInitiate Log Stream関数ステータス コードが必要な場合は、追加定義します。

使用上の注意

Initiate Log Stream関数を定義する場合の注意事項は、以下を考慮してください。

対象 使用上の注意
ステータス 関数のステータスがPXSTC_Successの場合は、この関数によってオペレータのメッセージ カタログが正常に初期化されたことを示します。
関連項目

例 - Initiate Log Stream

#include <pxoper.h>
PX_ErrorProc  myerror;
PX_Operator oprhandle;
PX_LogHandle *loghandle;
.
.
.
PX_Initiate(PX_Operator oprhandle)
{
.
.
.
.
/* Initiate a public log stream for instance 75
of "mycomponent". */
PX_LogInit(oprhandle,"mycomponent", 75, NULL, myerror, &loghandle);
.
/* Initiate a private log stream named "myreport" for instance 75 of "mycomponent". */
PX_LogInit (oprhandle, "mycomponent", 75, "myreport", myerror, &loghandle);
.
.
/* Initiate a private log stream named using user defined Teradata Parallel Transporter script attribute  */
/* (PrivateLogName) for instance 75 of "mycomponent". */
PX_GetAttribute(oprhandle, "PrivateLogName", (PX_AttributeValue *)&value, &length);
PX_LogInit (oprhandle, "mycomponent", 75, value, myerror, &loghandle);
.
.
}