ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Enterprise Repository構成ガイド
11g リリース1 (11.1.1.7)
E59381-01
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

13 使用状況の自動検出の構成

この章では、Oracle Enterprise Repositoryでのアセット使用を自動的に増分するSoftware File Identification (SFID)とその使用方法について説明します。

この章には、次のセクションがあります。

13.1 概要

Oracle Enterprise Repositoryでは、複数の方法でアセットの使用状況を追跡できます。Oracle Enterprise Repositoryは開発者に対して可能なかぎりガバナンスをシームレスにしているため、使用状況の自動検出(SFID)をEclipse環境および.Net環境から使用できます。このような環境では、開発者はwsdl、スキーマ、または他のアーティファクトのコピーを受け取ります。組織でこのようなアーティファクトの使用状況を自動的に追跡する場合、Oracle Enterprise RepositoryではこれにSFIDのタグを付けます。開発者の環境にアーティファクトが表示されると、Oracle Enterprise Repositoryでそのアーティファクトが認識され、使用状況が増分されます。つまり、開発者がリポジトリからアーティファクトを取り込む必要がありません。これはデスクトップから、またはバージョン制御システムから取り込めます。Oracle Enterprise Repositoryではソースに関係なく、合致を認識し、使用状況を増分します。使用状況追跡は、Oracle Enterprise Repositoryが再利用ROIの生成に使用する主なメソッドです。

Software File Identification (SFID)は、Oracle Enterprise Repositoryの手動のアセット(「使用 - ダウンロード」プロセス)とは別のアセットの使用状況を判断する機能を提供します。SFIDプロセスは、アセット内で選択したファイルを一意のSFIDフィンガープリントとタグ付けします。アセットがOracle Enterprise Repositoryの「使用 - ダウンロード」ボタン以外の方法で取得された場合でも、このタグは、アセットが使用された時間と場所を検出するために使用されます。アセット内でタグ付けされたファイルを開発者のIDEで開いたときに、使用状況のインスタンスがOracle Enterprise Repositoryによって記録されます。

SFIDでは、Eclipse用またはVisual Studio .NET用のOracle Enterprise Repositoryプラグインのインストールが必要です。サポートされているIDEからのリポジトリ・アクセスの機能の詳細は、次のドキュメントを参照してください。

13.2 SFIDの有効化

この手順は、Oracle Enterprise Repositoryの「管理」画面で実行します。

  1. 左のペインで「システム設定」をクリックします。

  2. 「新しいシステム設定の有効化」テキスト・ボックスに「cmee.usagedetection.enable」と入力します。

  3. 「有効化」をクリックします。図13-1に示すように、メイン・ペインのプロパティ・リストに「使用状況の自動検出の有効化」オプションが表示されます。

  4. プロパティがTrueに設定されていることを確認します。

  5. 「保存」をクリックします。これで、SFIDが有効になりました。

    • 新しくSFID要素がタイプ・マネージャのタイプに追加されます。

    • SFID要素がアセット・タイプに追加されると、アセット・エディタでそのタイプを表示したときにSFIDのセクションがアセットに表示されるようになります。そのセクション内では、ファイルをSFIDフィンガープリントに選択できます。

      図13-2 使用状況の自動検出の構成

      図13-2の説明が続きます
      「図13-2 使用状況の自動検出の構成」の説明

    • SFID機能は現在、Oracle Enterprise Repository REXで使用可能です。


      注意:

      REXの詳細は、『Oracle Fusion Middleware Oracle Enterprise Repository統合ガイド』のリポジトリ拡張性フレームワークに関する項を参照してください。


13.3 タイプへのSFID要素の追加

SFID要素をタイプに追加すると、そのタイプのアセットを自動的に検出できるようになります。


注意:

また、SFIDを追跡対象の個々のアセットに追加する必要があります。


この手順は、タイプ・マネージャで実行されます。

  1. 図13-3に示すように、SFID要素を追加するタイプを選択します。

    図13-3 タイプ・マネージャ・ウィンドウ

    図13-3の説明が続きます
    「図13-3 タイプ・マネージャ・ウィンドウ」の説明

  2. デフォルトでは「エディタ」タブが表示されます。表示されない場合は「エディタ」タブをクリックします。

  3. 図13-4に示すように、「タブ」セクションのリストから、SFID要素を追加するタブを選択します。

    図13-4 「タブ」リスト

    図13-4の説明が続きます
    「図13-4 タブ・リスト」の説明

    そのタブの要素のリストが「要素」セクションに表示されます。

  4. 「要素」セクションで、「追加」ボタンをクリックします。「追加する要素タイプの選択」ダイアログが表示されます。

  5. 図13-5に示すように、「要素タイプ」リストから「SFID」をクリックします。

    図13-5 「追加する要素タイプの選択」ダイアログ

    図13-5の説明が続きます
    「図13-5 「追加する要素タイプの選択」ダイアログ」の説明

  6. 「OK」をクリックします。図13-6に示すように、「追加する要素タイプの選択」ダイアログが終了し、「使用状況の自動検出の編集」ダイアログが表示されます。

  7. SFID要素名を入力します。

    図13-6 「使用状況の自動検出の編集」ダイアログ

    図13-6の説明が続きます
    「図13-6 「使用状況の自動検出の編集」ダイアログ」の説明

  8. 「OK」をクリックします。図13-7に示すように、「要素」セクションに新しい要素がリストされます。

    図13-7 「要素」セクション

    図13-7の説明が続きます
    「図13-7 「要素」セクション」の説明

  9. 「ファイル」「保存」をクリックして変更したアセット・タイプを保存します。

  10. タイプ・マネージャを終了します。

  11. アセット・エディタでは、SFID要素を追加したタイプのアセットを開きます。

    「SFID」セクションがその割当先のタブに表示されます。

13.4 アセットへのSFIDの追加

IDEを介してアセットを追跡するには、そのアセットを表す一意のアーティファクト・ファイルを選択します。ファイルにはSFIDが割り当てられ、IDEプロジェクトでそのファイルが検出されるたびに使用状況が増分されます。この手順は、アセット・エディタで実行されます。

  1. SFIDが追加されるアセットを選択します。

  2. 「使用状況の自動検出」セクションで、「追加」ボタンをクリックします。

  3. 図13-8に示すように、「追加」ダイアログのリストからフィンガープリントするファイルを選択します。

    図13-8 「追加」ダイアログ

    図13-8の説明が続きます
    「図13-8 「追加」ダイアログ」の説明

  4. 「OK」をクリックします。

    選択したファイルがダウンロードされ、SFIDが計算され、その後、ファイルのローカルの(ダウンロードした)コピーが削除されます。選択したファイルのフィンガープリントが失敗した場合は、警告メッセージが表示されます。

13.4.1 SFIDファイルの更新

この手順は、アセット・エディタで実行されます。

  1. 「使用状況の自動検出」セクションのリストから更新するSFIDファイルを選択します。

  2. 更新」ボタンをクリックします。更新の進捗を示す「操作の実行」ウィンドウが表示されます。

13.4.2 SFIDファイルの削除

この手順は、アセット・エディタで実行されます。

  1. 「使用状況の自動検出」セクションのリストから削除するSFIDファイルを選択します。

  2. 「削除」ボタンをクリックします。ファイルがリストから削除されます。

13.5 SFIDツール・キット

SFIDツール・キットでは、サード・パーティ開発者向けに、SFID候補を発行するためにOracle Enterprise RepositoryのREXサブシステムと統合するアプリケーションを開発できるフレームワークを提供します。SFIDツール・キットでは、指定されたディレクトリの各ファイルにSFID候補を作成し、そのSFID候補を保管および分析するためにOracle Enterprise Repositoryシステムに発行するアプリケーションを提供します。


注意:

REXサブシステムの詳細は、『Oracle Fusion Middleware Oracle Enterprise Repository統合ガイド』のサブシステムの概要に関する項を参照してください。


SFIDの計算に関する注意点

13.5.1 インストールおよび構成

この項では、SFIDツール・キットのインストールと構成の手順について説明します。この項には次のトピックが含まれます:

13.5.1.1 認識されないSFIDの収集の有効化

組織によっては、デプロイされたSOAアセットがすべてOracle Enterprise Repositoryに存在することが必須条件になります。企業は認識されないSFIDを収集し、この条件への準拠をモニターできます。たとえば、企業は認識されないSFIDのビルド・スクリプトをモニターできます。さらに、サービス・モニタリング・ツールではOracle Enterprise Repositoryに存在しないサービスを検出できます。このような「規定外のサービス」はSFIDに割り当てられ、アセットの候補としてOracle Enterprise Repositoryに収集されます。Oracle Enterprise Repositoryへ収集されたサービスは、詳細に評価され、処理されます。

この手順は、Oracle Enterprise Repositoryの「管理」画面で実行します。

  1. 左のペインで「システム設定」をクリックします。メイン・ペインに「システム設定」ページが表示されます。

  2. 「新しいシステム設定の有効化」テキスト・ボックスに「cmee.sfid.harvesting.enable」と入力します。

  3. 「有効化」ボタンをクリックします。システム設定のリストに「認識されないSFID収集の有効化」プロパティが表示されます。

    図13-9 認識されないSFID収集の有効化

    図13-9の説明が続きます
    「図13-9 認識されないSFID収集の有効化」の説明

  4. プロパティがTrueに設定されていることを確認します。

  5. 「保存」をクリックします。これで、プロパティが有効になりました。

13.5.1.2 オブジェクト・モデル

図13-10はSFIDのオブジェクト・モデルを説明しています。

図13-10 オブジェクト・モデル

図13-10の説明が続きます
「図13-10 オブジェクト・モデル」の説明

13.5.1.3 サンプル・ディレクトリ・クローラの説明

  • 指定したフォルダ内のすべてのファイルとフォルダを反復処理します。

    • 各候補に対してSFIDCandidateをインスタンス化します。

    • パスおよびsfidなどの一般的なメタデータを移入します。

      それぞれのSFIDCandiateに、Eclipse Workspaceなど、取得する任意のデータを示すSFIDAttributesを作成します。

  • SFIDCandidateオブジェクトの配列を渡し、Oracle Enterprise Repository REXメソッドsfidCandidateSubmitを呼び出します。

  • AlerUtilオブジェクト

    • AlerUtilオブジェクトをインスタンス化してOracle Enterprise Repositoryに接続します。

        String lUrl = "http://localhost:9080/oer/services/FlashlineRegistry";
        String lUserName = "username";
        String lPassword = "password";
        lAlerUtil = new AlerUtil(lUrl, lUserName, lPassword);
      
      
    • AlerUtilオブジェクトを使用してOracle Enterprise Repository REXメソッドを呼び出します。

      lAlerUtil.getFlashlineRegistry().sfidCandidateSubmit(lAlerUtil.getAuthToken(), lSfidCandidates);
      
      
    • AlerUtilオブジェクトは一連の便利なメソッドを提供します。

      • getAuthToken

        現在のユーザー名およびパスワードの有効なauthTokenを取得します。authTokenが失効した場合は、新しいauthTokenを取得します。そうでない場合は、UserValidationExceptionがスローされます。

      • calculateSfidValue

        ファイルまたはパスのSFIDを計算し、ハッシュを文字列として返します。

      • sfidCandiateListToArray

        リストのSFIDCandidatesを配列のSFIDCandidatesに変換します。

      • sfidAttributeListToArray

        リストのSFIDAttributesを配列のSFIDAttributesに変換します。

      • sfidAttributeValueListToArray

        リストのSFIDAttributeValuesを配列のSFIDAttributeValuesに変換します。

      • createCandidate(File)

        ファイルに標準のSFIDCandidateを作成します。SFIDCandidateフィールドのファイルパス、ホストIP、ホスト名およびSFIDが事前移入されます。Filelengthという名前のファイル長の値を保持するSFIDAttributeがSFIDCandidateにアタッチされます。

      • createCandidate(File, Map)

        createCandidate(File)メソッドの指定に従って、ファイルの標準のSFIDCandidateを作成します。マップのそれぞれの(文字列)キー/(文字列)値により、このキーと値に一致する追加のSFIDAttributeがSFIDCandidateにアタッチされます。

      • createCandidate(File, List)

        createCandidate(File)メソッドの指定に従って、ファイルの標準のSFIDCandidateを作成します。リストで渡されたそれぞれのSFIDAttributeをSFIDCandidateにアタッチします。

      • sendCandidate

        収集対象となる単一のSFIDCandidateを送信します。

      • sendCandidates

        収集対象となるSFIDCandidatesのリストを送信します。

13.6 SFIDマネージャ

SFIDマネージャでは、Oracle Enterprise Repositoryで収集されたSFID候補を簡単に表示する方法を提供します。

SFIDマネージャを使用するには、システム管理者権限が必要です。

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

13.6.1 SFIDマネージャの有効化

この手順は、Oracle Enterprise Repositoryの「管理」画面で実行します。

  1. 左のペインで「システム設定」をクリックします。図13-11に示すように、メイン・ペインに「システム設定」ページが表示されます。

    図13-11 Oracle Enterprise Repositoryの「システム設定」ページ

    図13-11の説明が続きます
    「図13-11 Oracle Enterprise Repositoryの「システム設定」ページ」の説明

  2. 「新しいシステム設定の有効化」テキスト・ボックスに「cmee.sfid.harvesting.enable」と入力します。

  3. 「有効化」ボタンをクリックします。図13-12に示すように、SFIDマネージャがシステム設定のリストに表示されます。

    図13-12 SFIDマネージャ

    図13-12の説明が続きます
    「図13-12 SFIDマネージャ」の説明

  4. 「True」オプションが選択されていることを確認します。

  5. 「保存」をクリックします。

  6. Oracle Enterprise Repositoryのメニュー・バーの「管理」をクリックして「管理」画面をリフレッシュします。

    左側のペインにSFIDマネージャ・セクションが表示されます。

13.6.2 SFIDマネージャの使用

この手順は、Oracle Enterprise Repositoryの「管理」画面で実行します。

  1. 左側のペインのSFIDマネージャをクリックします。

  2. 図13-13に示すように、SFIDマネージャ・セクションのすべてをリストをクリックして、使用可能なSFID候補のリストを表示します。

    図13-13 SFIDマネージャ

    図13-13の説明が続きます
    「図13-13 SFIDマネージャ」の説明

    この操作が完了するまでの時間は、使用可能な候補の数によって決まります。SFID候補は、SFIDマネージャの検索機能を使用して探すこともできます。検索された候補は、図13-14に示すように、メイン・ペインの上部にリストされます。

    図13-14 「名前」 - 「SFID」リスト

    図13-14の説明が続きます
    「図13-14 「名前」 - 「SFID」リスト」の説明

    リストされているSFIDが検出された回数(出現回数)が#列に表示されます。

  3. 図13-15に示すように、リストされた任意の候補をクリックし、メイン・ペインの下部に詳細情報を表示します。

    図13-15 SFID候補のプロパティ

    図13-15の説明が続きます
    「図13-15 SFID候補のプロパティ」の説明

    表示される情報は、すべての候補に共通の一連の主要な属性で構成されます。

    • 表示名

      候補の名前です。通常は、単純なファイル名です。

    • 生成者

      候補を生成したユーザーのユーザー名です。

    • 生成日

      候補を作成した日付です。

    • 更新日

      前回データベース内で候補レコードを変更した日時です。

    • ファイル・パス

      候補を収集したマシン上のファイルへの絶対パスです。

    • ホスト名/IP

      候補を収集したマシンのホスト名またはIPアドレスです。

    • 出現回数

      このコンテキストで、この候補が表示された回数です。このメトリックはファイル使用の頻度を示し、このコンテキスト内でのファイル値の指標を示します。

    • ソース

      Eclipse、Antなどのコンテキストの説明です。

    表示には一連の詳細な属性も含まれ、それらは候補の収集元となったコンテキストに基づいて異なります。

13.7 プログラムによるSFIDの計算

ArtifactFingerprinter javaライブラリは、クライアント側のコードでSFIDフィンガープリントをプログラムによって計算する機能を提供します。

インストール

components-flashtrax.jarファイルがあり、それがインストールのjavaクラスパス内にあることを確認します。

使用方法

com.oracle.artifact.ArtifactAlgorithmクラスには、複数の静的インスタンスがあり、それぞれが特定のファイル・タイプのフィンガープリント・アルゴリズムをカプセル化します。

サポートされているアルゴリズム

プログラムによるSFIDの計算を示す例は次のとおりです。

ArtifactFingerprinter fp = ArtifactAlgorithm.WSDL.newFingerprinter();

String sfid = fp.getFingerprint(new File("mytest.wsdl"));

13.8 SFIDの制限事項

SFIDシステムの制限事項は、次のとおりです。

アセット・エディタの制限事項(SFID生成)

ANT統合の制限事項(SFID比較)