練習 1.3:套用您的探測

開始之前,您必須先完成練習 1.2:建立您的第一個探測

現在,您已經建立您的 RandomNumbersProbe 探測,並且修正其中的任何錯誤。 您可以執行 RandomNumbers 程式,然後對它套用探測。請注意,您不必修改包含 RandomNumbers 程式的專案。

首先,在沒有探測的情況下執行 RandomNumbers 程式。

程式會選取 1 到 10 之間的亂數。 如果亂數是 10,則模擬作業會結束,並顯示「命中」。 否則,程式會選取亂數,直到 (A) 新的數字與第一個數字相符,或 (B) 新的數字是 10。 假設是 (A) 的情況,則模擬作業會報告「命中」。如果是 (B) 的情況, 模擬作業會報告「遺失」。

執行程式:

  1. 從 Software Development Platform 功能表列中,按一下視窗 > 顯示視圖 > 主控台。這時會開啟「主控台」視圖。
  2. 在「套件瀏覽器」視圖中, 展開 RandomNumbers,然後展開預設套件項目。
  3. 用滑鼠右鍵按一下 RandomNumbers.java 檔,然後按一下執行 > Java 應用程式

「主控台」視圖中的輸出看起來如下:

亂數模擬作業正在啟動中。
下一個選取的隨機值:7。
起始的隨機值不是 10。尋找相符項目。
目標值為 7
下一個選取的隨機值:5。
沒有相符的項目,不是 10,繼續進行。
目標值為 7
下一個選取的隨機值:8。
沒有相符的項目,不是 10,繼續進行。
目標值為 7
下一個選取的隨機值:7。
在出現 10 之前,出現相符的項目:命中。

現在,重新執行程式,但這次套用您的探測:

  1. 在「套件瀏覽器」視圖中,用滑鼠右鍵按一下 RandomNumbers.java 檔,然後按一下側寫 > Java 應用程式。這時會開啟 RandomNumbers 的「內容」對話框,讓您編輯啟動配置內容。
  2. 選取「側寫」標籤。
  3. 從側寫集清單中,選取探測範例側寫集,然後按一下編輯。這時會開啟「編輯側寫集」對話框。
  4. 下一步。這時會開啟「側寫類型」頁面,讓您編輯探測插入側寫類型內容。您的探測 RandomNumbersProbe 會出現在可選取的探測清單中。
  5. 按一下 RandomNumbersProbe 的勾選框來新增一個勾號,並確定沒有勾選任何其它可能列出的探測。
  6. 下一步。這時會開啟「過濾器集」頁面。您將使用這個頁面來確定探測只會套用到您鎖定的類別和方法。
  7. 確定已選取「預設過濾器集」。每一個過濾器集都包含(最後一個項目)一個隱含的 "include all" 規則, 所以這個過濾器集會排除所有的類別,但您本身程式中的類別除外。
  8. 按一下完成,然後按一下確定
  9. 如果開啟「確認視景切換」對話框,請按一下。Software Development Platform 會切換到「側寫和記載」視景, 然後程式會繼續執行。在載入您選取的探測時,探測會套用到其類別,而在執行方法時,會觸發探測的「進入」片段。
    附註:如果您收到「安全訊息」,指出 Agent Controller 無法使用, 請閱讀如果您無法收集資料
  10. 如果「主控台」視圖尚未顯示,請選取視窗 > 顯示視圖 > 主控台來開啟它。

「主控台」視圖會顯示 RandomNumbers 程式的一般輸出,外加探測邏輯所產生的輸出。「主控台」視圖中的輸出看起來如下:

[輸入方法 RandomNumbers.main]
[輸入方法 RandomNumbers.<init>]
[輸入方法d RandomNumbers.runSimulation]
亂數模擬作業正在啟動中。
[輸入方法 RandomNumbers.getRandomNumber]
下一個選取的隨機值:2。
起始的隨機值不是 10。尋找相符項目。
目標值為 2
[輸入方法 RandomNumbers.getRandomNumber]
下一個選取的隨機值:2。
在出現 10 之前,出現相符的項目:命中。

您可以看見,探測的「進入」片段的輸出會隨著程式本身的輸出一起顯示。請注意, 探測的輸出會以方括弧([ ])括住,因為這就是您在片段中撰寫 System.out.println 呼叫的方式。

如果您無法收集資料

在您可以收集任何類型的側寫資料之前,Agent Controller 必須在執行中。 如果您收到一則訊息,指出 Agent Controller 無法使用,請確定 Agent Controller 已經安裝完成, 以手動方式啟動它,然後重試。如需相關指示,請參閱安裝手冊。您可以利用啟動程式來存取安裝手冊, 或者您可以在產品 CD 的 disk1/install.html 中找到它。

您現在已經建立並使用一個簡易的探測,以便每次在程式中輸入方法時讓探測產生報告。 您現在可以準備開始進行練習 1.4:建立更進階的探測

讀者意見
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.