日本-日本語
日本HPホーム 製品 & サービス サポート & ドライバー ソリューション ご購入方法
≫  お問い合わせ

製品とサービス >  ソフトウェアとOS >  OpenVMS >  マニュアル

OpenVMS マニュアル


≫ 

OpenVMS
ライブラリ

タイトルページ
目次
まえがき
第 1 章:COM for OpenVMSに関するリリースノート
第 2 章:OpenVMS Registryに関するリリースノート
第 3 章:COM for OpenVMSの概要
第 4 章:COM for OpenVMSのインストール
第 5 章:アプリケーションの開発と運用のためのCOM for OpenVMSユーティリティ
第 6 章:COM for OpenVMSアプリケーションの開発
第 7 章:OpenVMS Registryの概要
第 8 章:OpenVMS Registryシステム管理
第 9 章:OpenVMS Registryサーバの管理
第 10 章:OpenVMS Registryシステムサービス
第 11 章:OpenVMS イベント
第 12 章:認証
付録 A :MIDLコンパイラのオプション
付録 B :トラブルシューティング
付録 C :サンプルアプリケーションの作成
付録 D :V1.0からV1.1へのアップグレード
付録 E :相違点,API,インタフェースの一覧
付録 F :インストールされるファイル一覧
用語集
略語集
索引
PDF
OpenVMS ホーム
OpenVMS Alpha オペレーティング・システム | HPE 日本

OpenVMS Alpha
オペレーティング・システム
コネクティビティ開発者ガイド


目次 索引

第 3 部
OpenVMS Events

第 3 部では, OpenVMS Events についての関連情報を扱います。

第 11 章
OpenVMS Events



Windows NT システムでは,イベントは,システムまたはアプリケーション内で発生する重要な出来事です。たとえば,サービスの開始や停止,ユーザのログオンやログオフ,リソースへのアクセスなどはイベントです。 システムでイベントが検出されると,イベント・ログ・サービスがイベント (または監査エントリ) をレコード形式でシステム・ログ,セキュリティ・ログ,アプリケーション・ログのいずれかに書き込み,監査トレールを作成します。レコードには日時,ソース (発生源),カテゴリ,イベント番号,ユーザ,コンピュータに関する情報が格納されます。 Windows NT システムでは,これらのログやそこに記録されているイベントは,イベント・ビューアを使用して表示します。

COM Version 1.0 for OpenVMS では,OpenVMS はすべての COM for OpenVMS イベントを DCOM$EVENTLOG.RPT テキスト・ファイルに書き込んでいました。 COM Version 1.1 for OpenVMS では,OpenVMS は COM for OpenVMS イベントの Windows NT ログと Advanced Server for OpenVMS ログの両方をサポートするようになりました。 COM for OpenVMS イベント (OpenVMS での COM サーバの起動など) をログに記録し, Windows NT システムまたは OpenVMS システムからこれらの OpenVMS イベントを確認できるようになりました。

OpenVMS Events の依存関係についてと, OpenVMS Events が OpenVMS インフラストラクチャの他の部分とどのように関係するかの詳細については, 第 4.9 節 を参照してください。

11.1.1 参考文献

イベントと関連トピックの詳細については,次の参考文献が役立ちます。

  • イベント・ログに関する書籍:

    • Windows NT Server 4.0 Unleashed』 Jason Garms 著,SAMS Publishing,Indianapolis,IN,1998。 ISBN: 0-672-30933-5

    • Win32 System Services: The Heart of Window 95 and Windows NT』 Marshall Brain 著,Prentice Hall,Upper Saddle River,NJ,1996。 ISBN: 0-13-324732-5

  • その他の情報源:

    • Microsoft Win32 Software Development Kit
      特に, RegisterEventSourceReportEventDeregisterEventSource機能に関する節と, System Services: Event Logging という節を参照してください。



11.2 OpenVMS Events の概要

システムは OpenVMS Events を Windows NT イベント・ログ, Advanced Server for OpenVMS イベント・ログ, OpenVMS システムのログ・ファイルに記録します。

OpenVMS Events を表示するには,次のいずれかを使用します。

  • Windows NT イベント・ビューア ( 第 11.2.1 項 を参照)

  • Advanced Server for OpenVMS イベント・ビューア ( 第 11.2.2 項 を参照)

  • OpenVMS イベント・ログ・ファイル ( 第 11.2.3 項 を参照)



11.2.1 Windows NT イベント・ビューアによる OpenVMS Events の表示

Windows NT イベント・ビューアを使用して OpenVMS Events を表示するには,次の操作を行います。

  1. Windows NT イベント・ビューアを起動します。
    「スタート」 メニューから 「プログラム」「管理ツール」「イベントビューア」を選択します。

  2. 「イベントビューア」ウィンドウで 「ログ」メニューの 「コンピュータの選択...」 をクリックし,リスト・ボックスから OpenVMS システムを選択します。

  3. 「イベントビューア」ウィンドウで 「ログ」 メニューの「システム」をクリックして,システム・イベント・ログを表示します。システム・イベント・ログには, COM for OpenVMS イベントが格納されています。
    COM for OpenVMS イベントだけを表示するには,次の操作を行います。

    • 「イベントビューア」ウィンドウで 「表示」メニューの 「イベントのフィルタ...」をクリックします。
      「フィルタ」ウィンドウが表示されます。

    • 「フィルタ」ウィンドウの「ソース:」リスト・ボックスから「DCOM」を選択します。



11.2.2 Advanced Server for OpenVMS イベント・ビューアによる OpenVMS Events の表示

COM for OpenVMS イベントを表示するには,次の操作を行います。

  1. Advanced Server for OpenVMS が実行されていることを確認します。

  2. 次の Advanced Server for OpenVMS ADMINISTRATOR コマンドを入力します。


      $ ADMIN SHOW EVENTS/TYPE=SYSTEM/SOURCE=DCOM/FULL 
    


    ビューアは COM for OpenVMS イベントだけを表示し, COM for OpenVMS イベントに関連付けられた補足情報も表示します。



11.2.3 OpenVMS のみでのイベントのログ

場合によっては, COM for OpenVMS イベントを OpenVMS システムのみで書き込んだり,表示しなければならないことがあります。 Windows NT ログの代わりに,Compaq は COM イベント情報を OpenVMS ファイルに書き込む別のイベント・ロガーを提供しています。このファイルは次の場所にあります。


SYS$MANAGER:DCOM$EVENTLOG.RPT 

COM サーバ ( DCOM$RPCSS) がエラーを検出すると, COM for OpenVMS はこのイベント・ログ・レポートを自動的に作成します。イベント・ロガーはファイルの最後に新しいイベントを追加します。記録されるイベントの形式は次のとおりです。


event type : ddd mmm dd hh:mm:ss yyyy
First event message
 
event type : ddd mmm dd hh:mm:ss yyyy
Second event message
. 
. 
. 

例 11-1 はイベント・ログの内容を示しています。

例 11-1 OpenVMS イベント・ログの例

$ Type SYS$MANAGER:DCOM$EVENTLOG.RPT 
 
(1)
ERROR : Tue Sep 15 11:18:54 1998 
Unable to start a DCOM Server: {5E9DDEC7-5767-11CF-BEAB-00AA006C3606} 
Runas (null)/SMITH 
The Windows NT error: 1326 
Happened while starting: device:[account]SSERVER.EXE 
 
(2)
ERROR : Tue Sep 15 19:14:45 1998 
The server {0C092C21-882C-11CF-A6BB-0080C7B2D682} did not register 
with DCOM within the required timeout. 
 

  1. システムは最初のエラー・イベントを Tue Sep 15 11:18:54 1998に記録しました。 COM サーバ (DCOM$RPCSS) は, SMITHアカウントで稼動しているクライアントの代わりに, COM アプリケーション device:[account]SSERVER.EXEを起動できませんでした ( クライアントは "access denied" などのエラーを受け取っている可能性があります )。この結果作成された Windows NT エラーは 1326であり,これが "Logon failure: unknown user name or bad password"に変換されます。
    このエラーを検出した場合は, OpenVMS Authorize ユーティリティ (AUTHORIZE) を使用して,ユーザ・アカウントが有効であるかどうか確認してください。

  2. システムは 2 番目のエラー・イベントを Tue Sep 15 19:14:45 1998に記録しました。 COM サーバ (DCOM$RPCSS) は, COM アプリケーション {0C092C21-882C-11CF-A6BB-0080C7B2D682}を起動することはできましたが,アプリケーションは正常に動作しませんでした。アプリケーションは指定された時間内に DCOM$RPCSS に登録されませんでした ( クライアントは "Server execution failed" CO_E_SERVER_EXEC_FAILUREなどのエラーを受け取っている可能性があります )。
    このエラーを検出した場合は,対話方式でサーバ・アプリケーションを実行し,整合性を判断してください。




アプリケーションがイベント・ログ・ファイルに情報を記録することを許可します。

NTA$EVENTW ルーチンはすべての操作を同期的に完了します。


形式

NTA$EVENTW [nullarg], func, itmlst, evsb




引数



nullarg


OpenVMS usage: reserved
データ型: longword (unsigned)
アクセス: read only
受け渡し方: by value


Compaq が使用するために予約されています。

func


OpenVMS usage: function_code
データ型: longword (unsigned)
アクセス: read only
受け渡し方: by value


NTA$EVENTW が実行する機能を指定する機能コード。func 引数は機能コードを格納したロングワードです。$EVENTDEF マクロは各機能コードの名前を定義します。

itmlst


OpenVMS usage: address of item list
データ型: 64-bit address
アクセス: read only
受け渡し方: by value


イベントのソース (発生源) またはイベントに関する情報を指定するアイテム・リスト。itmlst 引数はアイテム記述子のリストの 64 ビット・アドレスであり,各記述子は情報アイテムを示します。 64 ビット形式のアイテム・リストはクォドワードの 0 で終了します。

次の図は,1 つのアイテム記述子の 64 ビット形式を示しています。




evsb


OpenVMS usage: address of status block
データ型: 64-bit address
アクセス: write only
受け渡し方: by reference


要求された操作の終了状態が格納されるイベント状態ブロック。

NTA$EVENTW は要求を開始するときに,状態ブロックを 0 に設定します。要求の終了時に,EVT$L_VMS_STATUS フィールドには操作の主 (OpenVMS) 終了状態が格納されます。

エラーが発生した場合,EVT$L_NT_STATUS (0 以外の場合) は,エラー状態をさらに定義する補助エラー状態です。 機能コード



EVT$_FC_REGISTER_EVENT_SOURCE

イベント・ログとの関連性を開きます。

アイテム・コード 必須 パラメータ データ・タイプ
EVT$_SERVER_NAME 省略可能 入力 文字列 (4 バイトの Unicode)
EVT$_SOURCE 省略可能 入力 文字列 (4 バイトの Unicode)
EVT$_HANDLE 必須 出力 符号なしロングワード

  • EVT$_SERVER_NAME
    この操作が実行されるサーバの UNC (汎用命名規則) 名。
    UNC 名は \\server\ share\path \file という形式です。このアイテムは 0 または未指定でなければなりません。これはクラスタ内で使用可能な Advanced Server for OpenVMS サーバで操作を実行します。

  • EVT$_SOURCE
    イベントを記録するアプリケーションの名前。このフィールドは,説明テキストが格納されているアプリケーション・メッセージ・ファイルをアプリケーションのイベント・ログ・エントリと関連付けます。
    ソースを指定する場合は, Eventlog\Systemキー, Eventlog\Securityキー,
    Eventlog\Applicationレジストリ・キーのサブキーでなければなりません。たとえば, Myappのソース名は,次のキーのレジストリ・エントリを示します。


    HKEY_LOCAL_MACHINE\System\CurrentControlSet\
       Services\Eventlog\Application\Myapp) 
    


    Myappレジストリ値 EventMessageFileは,このアプリケーションのイベントを変換するために使用されるメッセージ・ファイルとパスの名前を指定します。
    ソースは指定しないか,または Null として指定できます。この場合,イベントはアプリケーション・ログ・ファイルに記録されますが,アプリケーションは関連イベントのメッセージ・ファイルを記録しません (この結果,置換テキストも記録されません)。

  • EVT$_HANDLE
    アプリケーション・イベント・ログへのハンドルを返します。このハンドルは他の $EVENT 機能への入力として必要です。
    エラーが発生した場合,ハンドルとして 0 が返されます。このハンドルは CloseHandleAPI の責任の範囲外です。



EVT$_FC_REPORT_EVENT

イベント・ログ・エントリを生成します。

アイテム・コード 必須 パラメータ データ・タイプ
EVT$_HANDLE 必須 入力 符号なしロングワード
EVT$_EVENT_TYPE 必須 入力 ワード・マスク
EVT$_EVENT_CATEGORY 省略可能 入力 ワード
EVT$_EVENT_ID 必須 入力 ロングワード
EVT$_USER_SID 省略可能 入力 NT セキュリティ ID
EVT$_NUMSTRINGS 省略可能 入力 ワード
EVT$_DATASIZE 省略可能 入力 ロングワード
EVT$_STRING_ARRAY 省略可能 入力 可変長記述子の配列 (4 バイトの Unicode)
EVT$_RAW_DATA 省略可能 入力 バイナリ・データ

  • EVT$_HANDLE
    以前の EVT$_FC_REGISTER_EVENT_SOURCE 呼び出しから返された値。

  • EVT$_EVENT_TYPE
    イベントの重大度を示します。タイプは次のいずれかです。
    EVT$_SUCCESS
    EVT$_ERROR
    EVT$_WARNING
    EVT$_INFO
    EVT$_AUDIT_SUCCESS
    EVT$_AUDIT_FAILURE

    重大度タイプは,WINNT.H に定義されている Windows NT の対応する重大度にマップされます。

  • EVT$_EVENT_CATEGORY
    1〜65535 の範囲の整数値。 EVT$_EVENT_CATEGORY は特定のソース固有の値です。
    EVT$_EVENT_CATEGORY を使用すると,アプリケーションはメッセージ・ファイルをセクションに分割できます。各セクションにはイベント ID がインデックスとして付加されます。カテゴリを指定しなかった場合,デフォルトは 0 になります。

  • EVT$_EVENT_ID
    無制限の整数値。この値はアプリケーション・メッセージ・ファイルでカテゴリのインデックスとして使用されます。インデックスはこのイベント・メッセージに対して表示されるテキスト文字列の場所を示します。イベント ID は特定のソース固有の値です。

  • EVT$_USER_SID
    イベントをログに記録するスレッドの Windows NT セキュリティ ID (省略可能)。$PERSONA システム・サービスを介して Windows NT 資格情報を取得したアプリケーションは, OpenProcessTokenGetTokenInformationWin32 API を呼び出すことにより, SID を取得できます。形式はこのサービスからは不明です。

  • EVT$_NUMSTRINGS
    EVT$_STRING_ARRAY アイテム・コードに指定された文字列の数。

  • EVT$_DATASIZE
    EVT$_RAW_DATA アイテム・コードによって示されたバッファの長さ (バイト数)。

  • EVT$_STRING_ARRAY
    文字列ポインタの配列。各エントリ・ポイントは最後が Null の文字列です。メッセージ・ファイル内の記述文字列には,%n の形式で文字列プレースホルダを格納できます。%1 は最初のプレースホルダを示します。この配列に指定された文字列は,システムがイベント・メッセージを表示するときに,これらのプレースホルダを置き換えます。

  • EVT$_RAW_DATA
    イベント・メッセージにバイナリ・データを含むことを許可します。
    たとえば,エラーが発生したコンポーネントからデータ構造をダンプできます。



EVT$_DEREGISTER_EVENT_SOURCE

イベント・ログとの関連付けを閉じます。

アイテム・コード 必須 パラメータ データ・タイプ
EVT$_HANDLE 必須 入力 符号なしロングワード

  • EVT$_HANDLE
    以前の EVT$_FC_REGISTER_EVENT_SOURCE 呼び出しから返された値。

アイテム・コード

アイテム・コード パラメータ・タイプ データ・タイプ
EVT$_SERVER_NAME 入力 文字列
EVT$_SOURCE 入力 文字列
EVT$_HANDLE 入力/出力 符号なしロングワード
EVT$_EVENT_TYPE 入力 ワード・マスク
EVT$_EVENT_CATEGORY 入力 ワード
EVT$_EVENT_ID 入力 ロングワード
EVT$_USER_SID 入力 NT セキュリティ ID
EVT$_NUMSTRINGS 入力 ワード
EVT$_DATASIZE 入力 ロングワード
EVT$_STRING_ARRAY 入力 文字列ポインタの配列
EVT$_RAW_DATA 入力 バイナリ・データ

説明 NTA$EVENTW ルーチンを使用すると,イベントのソースの登録と登録の解除,イベント・データの報告を行うことができます。このイベント・ログ機能を使用すると,アプリケーションの内部から情報を記録できます。イベント・ルーチンを使用して,アプリケーション内で進行状況を追跡したり,アプリケーションで検出された問題を識別できます。

NTA$EVENTW ルーチンは同期的に終了します。つまり,要求が終了した後で制御は呼び出しプロセスに戻されます。

イベント・データを書き込むには,次の操作を行います。

  1. イベント・ソースを登録します。
    この操作は,イベント・データが書き込まれるイベント・ログを定義します。

  2. イベントを報告します。
    この操作を実行すると,情報が適切なイベント・ログに書き込まれます。

  3. イベント・ソースの登録を解除します。
    この操作は,イベント・ソースの登録の一部として取得されたリソースを解放します。




返される状態値

SS$_NORMAL サービスは正常終了しました。
SS$_ACCVIO 引数の 1 つを読み込み/書き込みすることができません。
SS$_BADPARAM パラメータが不正です。
SS$_NOPRIV 特権が不足しているため,指定されたイベント・ログにアクセスできません。
SS$_TIMEOUT 要求がタイムアウトしました。
SS$_UNREACHABLE イベント・サービスを使用できません。
SS$_REJECT Windows NT LAN Manager サーバがエラーを検出しました。詳細については,Win32 の状態情報を参照してください。


目次 索引

印刷用画面へ
プライバシー 本サイト利用時の合意事項 ウェブマスターに連絡