機能説明
本コマンドは、「ラベル: エラー種別: メッセージテキスト」の形式でメッセージを作成し、そのメッセージを標準エラー出力へ表示するとともに、システム監視エージェントへメッセージを通知します。
システム監視エージェント未起動時は、メッセージ一時保存ファイルに保存され、システム監視エージェント起動時に読み込まれます。
記述形式
【Windows版】
opfmt | [-c] [-f flags] [-l label] [-s errclass] format [args] |
【UNIX版】
opfmt | [-c] [-f flags] [-l label] [-s errclass] [-g catalog:msgnum] format [args] |
オプション
このオプションは無視されます。
このオプションは無視されます。ただし、指定した場合は引数を指定しなければなりません。
作成されるメッセージのラベル文字列を指定します。labelは、256バイト以内の文字列を指定してください。接尾辞のコロン「:」は自動的に付加されます。
labelが指定されない場合のメッセージ形式は、「エラー種別:メッセージテキスト」です。
作成されるメッセージのエラー種別文字列(重要度)を指定します。errclassは以下の表にある「指定する文字列」の中から1つを指定します。これにより、エラー種別と重要度が決まります。エラー種別の接尾辞のコロン(:)は自動的に付加されます。指定されない場合は、Windows版の場合はERRORが使用され、UNIX版の場合はエラーが使用されます。
Windows版
指定する文字列 | エラー種別 | 重要度 |
---|---|---|
HALT または halt | HALT | 最重要 |
ERROR または error | ERROR | 重要 |
WARNING または warning | WARNING | 警告 |
NOTICE または notice | INFO | 通知 |
INFO または info | INFO | 一般 |
UNIX版
指定する文字列 | エラー種別 | 重要度 |
---|---|---|
HALT または halt | 停止 | 最重要 |
ERROR または error | エラー | 重要 |
WARNING または warn | 警告 | 警告 |
NOTICE または notice | 情報 | 通知 |
INFO または info | 情報 | 一般 |
作成されるメッセージのテキスト文字列をメッセージカタログで指定します。catalogにはメッセージカタログ名を、msgnumには取り出したいメッセージテキスト番号を指定し、コロンでつないだ1つの文字列とします。catalogは14バイト以内の文字列を指定してください。これらの文字列には、NULL「\0」、スラッシュ「/」およびコロン「:」は使用できません。
環境変数LC_MESSAGESまたはLANGに設定されたロケールに、catalogで指定したメッセージカタログが存在しない場合、または、msgnumが範囲外の場合、opfmtはCロケールからテキストを取り出そうとします。これに失敗すると、opfmthコマンド行から渡されたままのformat文字列をメッセージテキストとして使用します。メッセージカタログについての詳細については、システムが提供しているgettxt(3c)mkmsgs(1)のマニュアルページを参照してください。
formatには、システムが提供しているprintf()関数と同じ形式のメッセージテキストを指定します。argsには、formatに必要な引数を指定します。formatの指定に対してargsの数が多い場合は、余分なargsは無視されます。formatの指定に対してargsの数が少ない場合、その結果は不定です。
なお、指定できる書式は文字列「%s」だけです。
formatには、システムが提供しているprintfコマンドと同じ形式のメッセージテキストを指定します。argsには、formatに必要な引数を指定します。formatの指定に対してargsの数が多い場合は、余分なargsは無視されます。formatの指定に対してargsの数が少ない場合は、その結果は不定です。
指定できる書式は文字列「%s」だけです。また、「%」をメッセージテキストとして使用する場合は、2つ連続させて(「%%」)記述します。
システムが提供しているprintfコマンドについての詳細については、printf(1)のマニュアルページを参照してください。
復帰値
正常終了
異常終了
参照
コマンド格納場所
Windows | Systemwalkerインストールディレクトリ\mpwalker.dm\bin |
UNIX | /opt/systemwalker/bin |
実行に必要な権限/実行環境
【Windows】
一般ユーザの権限が必要です。
運用管理サーバ/部門管理サーバ/業務サーバで実行可能です。
運用管理クライアント/クライアントでは、[イベント監視]を選択インストールしたとき実行可能です。
【UNIX】
一般ユーザの権限が必要です。
運用管理サーバ/部門管理サーバ/業務サーバで実行可能です。
運用管理クライアント/クライアントでは、[イベント監視]を選択インストールしたとき実行可能です。
注意事項
運用管理サーバでクラスタ待機系の監視を行っている場合、待機系のシステムからopfmtコマンドを実行しても運用系システムでのメッセージ監視はできません。
なお、待機系時で実行したopfmtの結果は、コマンドを実行したシステムが運用系になったときにメッセージが通知されます。
各オプションは、メッセージの長さ(以下に示す文字列の長さの合計)が2047バイト以内になるように指定してください。これを超える場合、メッセージは先頭からの2047バイト分のみがSystemwalker Centric Managerに通知されます。
ラベル
「-l label」を指定した場合、labelの長さ+2です。
未指定の場合は0です。
エラー種別
「-s errclass」を指定した場合、errclassに対応するエラー種別の長さ+2です。
未指定の場合は以下になります。
Solaris,HP-UX,AIX
言語がUTF-8の場合
11(デフォルトのエラー種別「エラー」の長さ+2)です。
言語がSJIS,EUCの場合
8(デフォルトのエラー種別「エラー」の長さ+2)です。
言語がCの場合
7(デフォルトのエラー種別「ERROR」の長さ+2)です。
Windows
7(デフォルトのエラー種別「ERROR」の長さ+2)です。
Linux
言語がUTF-8の場合
11(デフォルトのエラー種別「エラー」の長さ+2)です。
言語がCの場合
7(デフォルトのエラー種別「ERROR」の長さ+2)です。
メッセージ
「-g catalog:msgnum」を指定しない場合
formatの長さです。
formatが%で始まる書式を含む場合、書式を引数で置換した文字列の長さです。
「-g catalog:msgnum」を指定する場合
catalog(メッセージカタログ)の中の、msgnum(メッセージテキスト番号)で指定したメッセージの長さです。
メッセージが%で始まる書式を含む場合、書式を引数で置換した文字列の長さです。
catalogで有効なメッセージカタログ名を指定していない場合、またはmsgnumに範囲外のメッセージテキスト番号を指定した場合は、formatの長さです。
各オプションに指定する文字列に、一般的なエスケープ処理のほかに、ダブルクォーテーション「"」を含む文字列を指定する場合は、文字列全体をダブルクォーテーションで囲み、以下を参考にしてエスケープ処理を実施してください。
文字列内に「"」と「<」が混在する場合は、「"」を「""」でエスケープする。
文字列内に「"」があるが「<」は無い場合は、「"」を「\"」でエスケープする。
【UNIX版】
使用できるメッセージカタログの形式は、mkmsgsコマンドでフォーマットされたメッセージカタログです。メッセージカタログの作成方法の詳細については、gettxt(3C)、mkmsgs(1)のマニュアルページを参照してください。
コマンドを実行する環境のLANGとシステムのコード系を同一のものにしてください。また、コマンドをユーザアプリケーションより発行の場合、OSとユーザアプリケーションが実行している環境でLANG(文字コード)が一致しているか、ユーザアプリケーションの実行環境のLANG(文字コード)を確認してください。一致していない場合、OSと同一のLANGを設定してください。
使用例1
opfmt -l LABEL -s INFO "test message"
使用例2
opfmt "test message"
実行結果/出力形式
実行した結果は以下の形式で監視イベント一覧に表示されます。
ラベル: エラー種別: メッセージテキスト
注意
ラベルとエラー種別、エラー種別とメッセージテキストの間は「: 」(コロンと空白)で区切られます。
ラベル: -lオプションで指定した文字列
エラー種別: -sオプションで指定した文字列に対応するエラー種別
メッセージテキスト: formatで指定した文字列実行環境による差異はなし
上記“使用例1”を実行した場合
LABEL: INFO: test message
上記“使用例2”を実行した場合
ERROR: test message