Sun[TM] Identity Manager 8.0 版本說明

文件增訂與校正

本小節包含 Identity Manager 8.0 文件集發佈後所需的新資訊與更正資訊。相關資訊編排如下:


Identity Manager 8.0 管理

本小節包含對「Sun Identity Manager 管理」的校正:


Identity Manager 技術部署簡介

本小節包含用於「Sun Identity Manager Technical Deployment Overview」的新資訊與文件校正。

下列資訊應加入「Identity Manager Technical Deployment Overview」的「Private Labeling of Identity Manager」一章,或在其中加以修正:

您現在可以使用自己選擇的可本土化字串替代瀏覽器標題列中的產品名稱字串。

  1. 匯入下列 XML 檔案:
  2. 程式碼範例 5-4 要匯入的 XML

    <?xml version='1.0' encoding='UTF-8'?>

    <!DOCTYPE Configuration PUBLIC 'waveset.dtd' 'waveset.dtd'>

    <Configuration name='AltMsgCatalog'>

    <Extension>

    <CustomCatalog id='AltMsgCatalog' enabled='true'>

    <MessageSet language='en' country='US'>

    <Msg id='UI_BROWSER_TITLE_PROD_NAME_OVERRIDE'>Override Name</Msg>

        </MessageSet>

    </CustomCatalog>

    </Configuration>

    </Extension>

  3. 使用 Identity Manager IDE 載入系統配置物件進行編輯。增加新的頂層屬性:
  4. Name = customMessageCatalog

    Type = string

    Value = AltMsgCatalog

  5. 開啟 ui.web 通用物件並尋找 browserTitleProdNameOverride 屬性。將此值設定為 true。
  6. 儲存對系統配置物件所做的變更,然後重新啟動應用程式伺服器。
  7. 「Customizing Identity Manager End User Pages」中所提供關於如何自訂登入頁面的說明,應包含下列有關訊息金鑰的資訊。(ID-16072)
  8. JSP 或 Identity Manager 元件

    影響的介面

    訊息金鑰

    登入頁面標題

    管理員與使用者

    UI_LOGIN_TITLE_TO_RESOURCE

    UI_LOGIN_CHALLENGE

    登入頁面子標題

    管理員與使用者

    根據登入模式選取金鑰:忘記密碼、忘記使用者 ID、登入詰問。

    UI_LOGIN_WELCOME3

    UI_LOGIN_WELCOME4

    UI_LOGIN_WELCOME5

    UI_LOGIN_WELCOME6

    UI_LOGIN_CHALLENGE_INFO

    staticLogout.jsp and user/staticUserLogout.jsp

    管理員與使用者

    UI_LOGIN_TITLE

    continueLogin.jsp

    管理員

    UI_LOGIN_IN_PROGRESS_TITLE

    UI_LOGIN_WELCOME

變更預設的「登入為...」文字

  1. 匯入下列 XML 檔案:
  2. <?xml version='1.0' encoding='UTF-8'?>

    <!DOCTYPE Configuration PUBLIC 'waveset.dtd' 'waveset.dtd'>

    <Configuration name='AltMsgCatalog'>

    <Extension>

    <CustomCatalog id='AltMsgCatalog' enabled='true'>

    <MessageSet language='en' country='US'>

    <Msg id='UI_NAV_FOOT_LOG_AS'>mytext {0}!</Msg>

    </MessageSet>

    </CustomCatalog>

    </Extension>

    </Configuration>

  3. 將下行加入系統配置物件的 <Configuration><Extension><Object> 元素內:
  1. 儲存變更並重新啟動應用程式伺服器。


Identity Manager 工作流程、表單與檢視

本小節包含用於「Sun Identity Manager Workflows, Forms, and Views」的新資訊與文件校正。

第 1 章:Identity Manager 工作流程

第 2 章:工作流程服務

鎖定佈建工作流程服務

解除鎖定工作流程服務

第 3 章:Identity Manager 表單

相關資訊

有關稽核相關表單處理

指定使用者表單

預設的稽核相關表單

為何自訂這些表單?

掃描作業變數

第 4 章:Identity Manager 檢視

一般屬性

下表列出 Org 檢視的高階屬性。

名稱

可否編輯?

資料類型

是否為必要項目?

orgName

讀取

字串

系統產生

orgDisplayName

讀/寫

字串

orgType

讀/寫

字串

orgId

讀取

字串

系統產生

orgAction

寫入

字串

orgNewDisplayName

寫入

字串

orgParentName

讀/寫

字串

orgChildOrgNames

讀取

List

系統產生

orgApprovers

讀/寫

List

allowsOrgApprovers

讀取

List

系統產生

allowedOrgApproverIds

讀取

List

系統產生

orgUserForm

讀/寫

字串

orgViewUserForm

讀/寫

字串

orgPolicies

讀/寫

List

orgAuditPolicies

讀/寫

List

renameCreate

讀/寫

字串

renameSaveAs

讀/寫

字串

orgName

識別組織的 UID。由於組織可以有相同的簡稱卻有不同的父組織,因此該值與大多數的檢視物件名稱不同。

orgDisplayName

指定組織的簡稱。此值僅供顯示之用,不需要是唯一值。

orgType

定義組織類型,其允許的值是 junctionvirtualjunctionvirtual 類型以外的組織沒有值。

orgId

指定 Identity Manager 內組織的唯一識別 ID。

orgAction

僅支援目錄結合、虛擬組織與動態組織。允許的值是 refresh。當組織是目錄結合或虛擬組織時,重新整理作業的運作方式會視 orgRefreshAllOrgsUserMembers 的值而定。

orgNewDisplayName

在重新命名組織時,指定新的簡稱。

orgParentName

識別父組織的完整路徑名稱。

orgChildOrgNames

列出所有直接與間接子組織的 Identity Manager 介面名稱。

orgApprovers

列出核准此組織中已增加或修改的使用者時,所需的 Identity Manager 管理員。

allowedOrgApprovers

列出使用者名稱,以充當此組織中已增加或修改之使用者的核准人。

allowedOrgApproverIds

列出使用者 ID,以充當此組織中已增加或修改之使用者的核准人。

orgUserForm

指定建立或編輯使用者時,此組織的成員使用者所使用的 userForm

orgViewUserForm

指定檢視使用者時,此組織的成員使用者所使用的檢視使用者表單。

orgPolicies

識別套用至此組織的所有成員使用者之策略。此為依類型字串鍵入的物件清單: 每個策略物件包含下列使用 orgPolicies[<type>] 前綴的檢視屬性。<type> 表示策略類型 (例如 Lighthouse 帳號)。

orgAuditPolicies

指定適用於此組織的所有成員使用者之稽核策略。

renameCreate

設為 true 時,會複製此組織並使用 orgNewDisplayName 的值建立新組織。

renameSaveAs

設為 true 時,會使用 orgNewDisplayName 的值重新命名此組織。

目錄結合與虛擬組織屬性

名稱

可否編輯?

資料類型

是否為必要項目?

orgContainerId

讀取

字串

系統產生

orgContainerTypes

讀取

List

系統產生

orgContainers

讀取

List

系統產生

orgParentContainerId

讀取

字串

系統產生

orgResource

讀/寫

字串

是 (如果是目錄結合或虛擬組織)

orgResourceType

讀取

字串

系統產生

orgResourceId

讀取

字串

系統產生

orgRefreshAllOrgsUserMembers

寫入

字串

orgContainerId

指定相關 LDAP 目錄容器的 dn (例如 cn=foo,ou=bar,o=foobar.com)。

orgContainerTypes

列出所允許的資源物件類型 (可包含其他資源物件)。

orgContainers

列出 Identity Manager 介面所用的資源基底容器,以顯示可從中進行選擇的清單。

orgParentContainerId

指定相關父 LDAP 目錄容器的 dn (例如 ou=bar,o=foobar.com)。

orgResource

指定用以同步化目錄結合與虛擬組織的 Identity Manager 資源名稱 (例如 West Directory Server)。

orgResourceType

表示同步化目錄結合與虛擬組織的來源 Identity Manager 資源類型 (例如 LDAP)。

orgResourceId

指定用以同步化目錄結合與虛擬組織的 Identity Manager 資源 ID。

orgRefreshAllOrgsUserMembers

若為 trueorgAction 的值為 refresh,即會針對所選組織與所有子組織,將 Identity 組織使用者成員身份與資源容器使用者成員身份同步化。若為 false,則不會同步化資源容器使用者成員身份,僅會針對所選組織與所有子組織,將資源容器與 Identity 組織同步化。

動態組織屬性

名稱

可否編輯?

資料類型

是否為必要項目?

orgUserMembersRule

讀/寫

字串

orgUserMembersRuleCacheTimeout

讀/寫

字串

orgUserMembersRule

(依名稱或 UID) 識別 authType 為 UserMembersRule 的規則,該規則會在執行階段進行評估以決定使用者成員身份。

orgUserMembersCacheTimeout

指定 orgUserMembersRule 所傳回的使用者成員若要快取,快取要經過多久才逾時 (以毫秒為單位)。值 0 表示無快取。

有關使用者檢視的討論,現在包含下列 accounts[Lighthouse].delegates 屬性的討論:(ID-15468)

accounts[Lighthouse].delegates

列出以 workItemType 編製索引的委託物件,其中每個物件各指定特定工作項目類型的委託資訊

accounts[Lighthouse].delegatesHistory

列出委託物件 (以 0 到 n 為索引),其中,n 是委託歷程記錄物件目前的數目至委託歷程記錄的深度。

此屬性有唯一的屬性:selected,此為布林值,可指出目前選取的委託歷程記錄物件。

accounts[Lighthouse].delegatesOriginal

workItemType 編製索引的委託物件原始清單,跟在取得作業或簽出檢視作業後面。

所有 accounts[Lighthouse].delegates* 屬性皆具有下列屬性:

accounts[Lighthouse].delegate* 屬性的屬性

說明

 

workItemType

識別要委託的 workItem 類型。如需 workItem 類型的有效清單,請參閱此文件附錄的「Identity Manager 技術部署簡介」小節中有關「委託物件模型」的說明。

workItemTypeObjects

列出使用者據以委託未來 workItem 核准請求之特定角色、資源或組織的名稱。當 workItemType 的值為 roleApprovalresourceApprovalorganizationApproval 時,此屬性即有效。

若未指定,此屬性依預設會對以此使用者為核准人的所有角色、資源或組織,指定未來 workItem 請求的委託。

toType

受委託類型。有效值如下:

manager

delegateWorkItemsRule

selectedUsers

toUsers

列出受委託之使用者的名稱 (若 toTypeselectedUsers)。

toRule

指定規則名稱,以便在評估後決定受委託使用者集 (若 toTypedelegateWorkItemsRule)。

startDate

指定委託開始的日期。

endDate

指定委託結束的日期。

從表單參照 DelegateWorkItems 檢視物件

下列程式碼範例說明如何從表單參照 DelegateWorkItems 檢視委託物件:

<Field name='delegates[*].workItemType'>

<Field name=’delegates[*].workItemTypeObjects’>

<Field name=’delegates[*].toType’>

<Field name='delegates[*].toUsers'>

<Field name=’delegates[*].toRule’>

<Field name='delegates[*].startDate'>

<Field name='delegates[*].endDate'>

其中,支援的索引值 (*) 為 workItemType 值。

name

識別使用者軟體權利文件 (依唯一識別碼)。

status

指定使用者軟體權利文件物件的狀態。有效的狀態包含 PENDING、ACCEPTED、REJECTED、REMEDIATING 和 CANCELLED。

user

識別此軟體權利文件的相關 WSUser 之名稱。

userId

指定相關 WSUser 的 ID。

attestorHint

向驗證者顯示由 [檢視確定規則] 提供的 (字串) 提示。此提示可當做規則給驗證者的「忠告」。

userView

包含使用者軟體權利文件掃描程式所擷取的使用者檢視。根據存取掃描物件的配置,此檢視可包含多個資源帳號,或不包含任何資源帳號。

reviewInstanceId

指定 PAR 作業實例的 ID。

reviewStartDate

表示 PAR 作業的 (字串) 開始日期 (使用標準格式)。

scanId

指定 AccessScan 作業定義的 ID。

scanInstanceId

指定 AccessScan 作業實例的 ID。

approvalWorkflowName

表示要執行以進行核准的工作流程名稱。此值來自存取掃描作業定義。

organizationId

指定掃描時 WSUser 組織的 ID。

attestorComments

列出軟體權利文件的驗證記錄。每個驗證記錄各表示對軟體權利文件執行的相關動作或陳述式,包含核准、拒絕與重新掃描。

attestorComments[timestamp].name

用以識別清單中此元素的時間戳記。

attestorComments[timestamp].attestor

識別在軟體權利文件上加入註釋的驗證者之 WSUser 名稱。

attestorComments[timestamp].time

指定驗證者驗證此記錄的時間。可能與時間戳記不同。

attestorComments[timestamp].status

表示驗證者指定的狀態。可以是任何字串,但一般會是表示驗證者所採取動作的字串;例如,核准、拒絕、重新掃描、修正。

attestorComments[name].comment

包含驗證者加入的註釋。

第 6 章:XPRESS 語言

第 8 章:HTML 顯示元件

如何使用 objectSelector 範例程式碼

  1. 從 Identity Manager IDE 開啟 [管理員程式庫 UserForm] 物件。
  2. 在此表單中加入下列程式碼:
  3. <Include>

       <ObjectRef type='UserForm' name='Scalable Selection Library'/>

    </Include>

  4. AdministratorFields 欄位內,選取 accounts[Lighthouse].adminRoles 欄位。
  5. 將整個 accounts[Lighthouse].adminRoles 替代為下列參照:
  6. <FieldRef name='scalableWaveset.adminRoles'/>

  7. 儲存物件。
  8. 當您日後編輯使用者及選取 [安全性] 標籤時,Identity Manager 即會顯示自訂表單。按一下 [...],以開啟 Selector 元件並顯示搜尋欄位。使用此欄位搜尋以文字字串開頭的管理員角色,並將欄位值設為一個或多個值。

    若要復原表單,請從 [配置] > [匯入交換檔案] 匯入 $WSHOME/sample/formlib.xml

    如需其他範例,說明如何使用 objectSelector 範本來管理多物件環境中的資源與角色,請參閱 sample/formlib.xml 中的「可延伸選取程式庫」。

  9. 有關 TabPanel 元件的討論現在包含下列 validatePerTab 特性的描述:(ID-15501)

ListEditor

啟用 Identity Manager 登入頁面的自動完成功能。

附錄 A:表單與程序對映


Identity Manager 部署工具

本節提供「Identity Manager Deployment Tools」文件的更正及補充:

使用 Identity Manager 效能評測器

Identity Manager 提供效能評測器公用程式,協助您對部署中與表單、Java、規則、工作流程以及 XPRESS 相關的效能問題進行疑難排解。

表單、Java、規則、工作流程與 XPRESS 皆可能導致效能與範圍問題。效能評測器會評測不同區域所耗用的時間,可讓您決定這些表單、Java、規則、工作流程或 XPRESS 物件是否造成效能與範圍問題,以及倘若如此,是這些物件的哪些部分導致問題。

本節說明如何使用 Identity Manager 效能評測器,並提供指導以協助您瞭解如何對部署中的效能問題進行疑難排解。相關資訊編排如下:

簡介

本節提供 Identity Manager 效能評測器的特性與功能簡介。相關資訊編排如下:

主要功能

您可以使用效能評測器公用程式執行以下作業:

效能評測器找出及管理來源的方式

本節描述效能評測器如何查詢及管理下列 Identity Manager 物件的來源:

表單、規則、工作流程與 XPRESS 物件     當您使用效能評測器拍攝快照時,伺服器會計算所有效能評測資料並搜尋資料依賴的來源。伺服器接著會從儲存庫擷取所有這些來源,並將其納入快照中。因此,您可以確定快照中所顯示的 Identity Manager 物件,能確實反映擷取快照當時的狀況。

此程序會增加快照的大小,但來源大小實際上只佔總大小的一小部分。因此,您可以將快照傳送至 Sun 的「客戶支援」,而不用分開傳送您的原始碼檔案。

Java 來源     當您拍攝 Java 來源的快照時,用戶端會下載快照,然後搜尋快照以從專案擷取所有參照的 Java 來源。當您儲存快照時,用戶端會壓縮來源並將其附加在快照結尾。

然後,當您檢視快照並移至 Java 來源時,用戶端會先檢查快照內容。若用戶端在此找不到內容,則會檢查專案的內容。此程序可讓您從自訂 Java 程式碼與 Identity Manager 程式碼傳送包含效能評測資料的快照。


備註

在 Java 來源快照中,請勿以為來源會隨伺服器更新或一直可以使用。


統計警告

以下各節包含計算效能評測器提供結果時所要考量的資訊:

Self Time 統計     若要計算根節點的 Self Time 統計,效能評測器會從根節點的總計時間扣除所有子節點的時間。

因此,未執行的子節點時間會反映在根節點的 Self Time 中。如果根節點有很長的 Self Time,則必須找出原因。您可能尚未執行適當的方法,因此檢查的地方有誤。

例如,假設方法 A 呼叫方法 B。

方法 A 總計需要 10 秒 (其中總計時間包含呼叫 B),而呼叫 B 總計需要 10 秒。

如果 A 與 B 皆已執行,則呼叫堆疊會反映此資訊。您會看到 A 的 Self Time 為 0 秒,而 B 的 Self Time 為 10 秒 (其中 10 秒是實際用在 B 中的時間)。但是,如果未執行 B,您僅會看到呼叫 A 需要 10 秒,因此 A 的 Self Time 為 10 秒。因此,您可能會以為問題是在 A,而不是在 B。

您尤其會在 JSP 初始編譯期間注意到 JSP 有很長的 Self Time。如果重設收集的結果,然後重新顯示頁面,則 Self Time 值會少得多。

建構子呼叫     由於 Java 方法策略中的限制,this() 或 super() 的初始呼叫會顯示為建構子呼叫的同層級,而非子系。請參閱下列範例:

class A

{

public A()

{

this(0);

}

public A(int i)

{

}

}

and:

class B

{

public static void test()

{

new A();

}

}

呼叫樹狀結構會類似:

B.test()

-A.<init>(int)

-A.<init>()

而不是:

B.test()

-A.<init>()

-A.<init>(int)

常駐程式執行緒     多數 Identity Manager 的常駐程式執行緒 (例如 ReconTask.WorkerThread.run() 或 TaskThread.WorkerThread.run()) 所耗用的時間看似很久,但請勿被此誤導。大部分的時間是耗用在等候事件時的暫停上。您必須研究這些追蹤才能知道處理事件實際耗用的時間。

入門

本節描述如何啟動效能評測器,以及如何使用效能評測器圖形化使用者介面的各項功能。相關資訊編排如下:

開始之前

由於效能評測器會耗用大量的記憶體,應大量增加伺服器與 Netbeans Java Virtual Machine (JVM) 的記憶體。

完成之後,可如下節所述啟動效能評測器。

啟動效能評測器

您可以使用下列任意的方法從 Identity Manager IDE 視窗啟動效能評測器:

當您啟動效能評測器時,會顯示 [效能評測器選項] 對話方塊,您可以在此指定要使用的效能評測選項。指定效能評測器選項提供設定這些選項的說明。

使用效能評測器

本節描述效能評測器圖形化使用者介面的功能,以及如何使用這些功能。相關資訊編排如下:

指定效能評測器選項

[效能評測器選項] 對話方塊包含下列標籤:

使用這些標籤上的選項以指出要評測效能的物件及設定檔中要顯示的元素。

指定效能評測器選項之後,請按一下 [確定] 以啟動效能評測器。效能評測器可根據專案配置執行下列兩項作業其中之一:

模式     [模式] 標籤提供下列選項:

IDM 物件篩選器     [IDM 物件篩選器] 標籤提供下列選項:

Java 篩選器     選取 [Java 篩選器] 標籤可執行下列作業:

Java 篩選器會依方法式樣提供,並以包含或排除的式樣來表示 (根據標準方法名稱)。其中標準方法名稱為:

fully-qualified-class-name.method-name(parameter-type-1, parameter-type-2, ...)


備註

若是建構子,則 method-name<init>


下列是一些範例:

請視需要適當修改 build.xml 中的下列各行,以執行其他 JAR。例如,

<instrument todir="${lighthouse-dir-profiler}/WEB-INF" verbose="${instrumentor.verbose}" includeMethods="${profiler.includes}" excludeMethods="${profiler.excludes}">

<fileset dir="${lighthouse-dir}/WEB-INF">

<include name="lib/idm*.jar"/>

<include name="classes/**/*.class"/>

</fileset>

</instrument>

依預設,配置會包含所有自訂類別與大部分的 Identity Manager 類別。由於某些 Identity Manager 類別在啟用後會中斷效能評測器,因此會強制排除這些類別。

例如,會排除來源為工作流程、表單與 XPRESS 引擎的類別,否則效能評測器在評測 Java 與 Identity Manager 物件的效能時會產生無法辨識的快照。

請注意,Java 篩選器會提供比 IDM 物件篩選器更仔細的篩選。Java 方法會讓執行作業增加大量的經常性耗用時間,從而嚴重影響效能評測結果。由於 Identity Manager 物件是解譯而不是編譯,因此可忽略執行此方法所耗用的時間。因此,基本上排除工作流程 A 而包含工作流程 B 是不必要的,依此類推。


備註

您無法在執行效能評測器時修改 Java 篩選器。您必須停止效能評測器,才能變更 Java 篩選器。


其他     [其他] 標籤提供下列選項:

使用 IDM 效能評測器檢視

IDM 效能評測器檢視包含下列區域:

目前的專案區域     [目前的專案] 區域包含列出所有目前專案的下拉式功能表。使用此功能表可選取要評測其效能的專案。

控制區域     [控制] 區域包含四個圖示,如下表所述:

圖示

用途

[啟動 Identity Manager 效能評測器] 圖示

啟動 Identity Manager 效能評測器

啟動效能評測器並開啟 [效能評測器選項] 對話方塊。

[停止 Identity Manager 效能評測器] 圖示

停止 Identity Manager 效能評測器

停止效能評測器。

此圖形顯示 [重設收集的結果] 圖示。

重設收集的結果

重設到目前為止所收集的效能評測結果。

[修改效能評測] 圖示

修改效能評測

重新開啟 [效能評測器選項] 對話方塊,以變更任何設定來修改目前的效能評測結果。

狀態區域     [狀態] 區域會報告是否已連線至主機,並提供效能評測器啟動、執行與停止的狀態資訊。

效能評測結果區域     [效能評測結果] 區域包含兩個圖示,如下表所述:

圖示

用途

[拍攝快照] 圖示

啟動 Identity Manager 效能評測器

啟動效能評測器並開啟 [效能評測器選項] 對話方塊。

此圖形顯示 [重設收集的結果] 圖示。

重設收集的結果

重設到目前為止所收集的效能評測結果。

[已儲存的快照] 區域     [已儲存的快照] 區域提供所有儲存的快照清單。


備註

儲存快照提供儲存快照的說明。


此外,您可以使用下列按鈕管理這些快照:

使用快照檢視

當您開啟快照時,Identity Manager IDE 右上方的 [快照檢視] 視窗會顯示結果。

快照提供數種資料的檢視,以下各節將對此進行描述:

呼叫樹狀結構檢視     [呼叫樹狀結構檢視] 包含樹狀結構表格,顯示整個系統的呼叫計時及呼叫計數。

此樹狀結構表格包含三欄:

Hotspots 檢視     [Hotspots 檢視] 提供直列式節點清單,顯示所有父系節點的集合呼叫計時。

此檢視包含下列欄:

Back Traces 檢視     [Back Traces 檢視] 提供顛倒的呼叫堆疊,顯示呼叫每個節點的所有來源呼叫鏈。

您可以使用這些統計回答以下問題:如果我從此節點刪除此特定的呼叫鏈,可以節省多少時間?

您可以在節點 (稱為根節點) 上按一下滑鼠右鍵,並從快顯功能表中選取 [顯示 Back Traces],以從任何其他快照檢視存取 [Back Traces] 檢視。


備註

[Time] 與 [Invocations] 資料值在 [Back Traces] 檢視中有不同的含義:

  • Time:此欄中的值表示從指定呼叫鏈呼叫根節點時,在根節點中所費的時間。
  • Invocations:此欄中的值表示從指定呼叫鏈呼叫根節點時,在根節點中所費的時間。

被呼叫端檢視     [被呼叫端檢視] 提供節點 (稱為根節點) 的彙總呼叫樹狀結構,而不考慮其父鏈為何。

如果從主要呼叫樹狀結構的許多位置呼叫的區域有問題,而您想檢視節點的整體設定檔,這些統計會很有幫助。

您可以在節點 (稱為根節點) 上按一下滑鼠右鍵,並從快顯功能表中選取 [顯示被呼叫端],以從任何其他快照檢視存取 [被呼叫端檢視]。


備註

[被呼叫端檢視] 中所使用的 [Time] 與 [Invocations] 資料值,和 [呼叫樹狀結構] 檢視中所使用的資料值有相同含義。


使用快顯功能表選項

在 [呼叫樹狀結構檢視] 或 [Hotspots 檢視] 中任何的節點上按一下滑鼠右鍵,會隨即顯示快顯功能表,內含下表所述的選項:

功能表選項

說明

移至來源

選取此選項可檢視對應 Java 方法、工作流程、表單、規則或 XPRESS 之節點的 XML 來源。如需有關此檢視的詳細資訊,請參閱效能評測器找出及管理來源的方式

顯示 Back Traces

選取此選項可存取 [Back Traces] 檢視。如需有關此檢視的詳細資訊,請參閱 Back Traces 檢視

顯示被呼叫端

選取此選項可存取 [被呼叫端檢視]。如需有關此檢視的詳細資訊,請參閱被呼叫端檢視

在 Hotspots 中尋找

選取此選項可在 [Hotspots 檢視] 中尋找節點。如需有關此檢視的詳細資訊,請參閱 Hotspots 檢視

清單選項 > [排序] >

此選項有下列選項:

  • None
  • 呼叫樹狀結構
  • Time
  • Invocations
  • Ascending
  • Descending

清單選項 > [變更可見欄]

選取此選項可變更 [呼叫樹狀結構] 或 [Hotspots] 清單中所顯示的欄。

您可以在 [變更可見欄] 對話方塊顯示時,選取下列一個或多個選項:1

  • 呼叫樹狀結構:呼叫樹狀結構
  • Invocations:Invocations
  • Time:Time

搜尋快照

使用 [快照檢視] 視窗頂端的 [搜尋] 圖示 ,在 [呼叫樹狀結構檢視] 或 [Hotspots 樹狀結構] 中依名稱搜尋節點。

或者,在 [呼叫樹狀結構檢視] 或 [Hotspots 檢視] 中的任何節點上按一下滑鼠右鍵,然後從快顯功能表中分別選取 [在呼叫樹狀結構中尋找] 或 [在 Hotspots 中尋找] 以搜尋節點。

儲存快照

效能評測器提供數個儲存快照的選項。如需這些選項的描述,請參閱下表:

圖示

用途

[拍攝快照] 圖示

[在專案中儲存快照] 圖示 (位於 [快照檢視] 視窗頂端)

在專案的 nbproject/private/idm-profiler 目錄中儲存快照。儲存在專案中的快照會列於效能評測器檢視的 [已儲存的快照] 區段中。

此圖形顯示 [重設收集的結果] 圖示。

[在外部儲存快照] 圖示 (位於 [快照檢視] 視窗頂端)

將快照另存在外部的任意位置。

此圖形顯示 [已儲存的快照] 區域中的 [另存新檔] 按鈕。

[另存新檔] 按鈕 (位於 [已儲存的快照] 區域中)

將快照另存在外部的任意位置。

指導:效能問題的疑難排解

Identity Manager 提供指導 (profiler-tutorial.zip) 以協助您瞭解如何使用效能評測器對表單、Java、規則、工作流程與 XPRESS 進行疑難排解。

步驟 1:建立 Identity Manager 專案

遵循下列步驟以建立 Identity Manager 專案:

  1. 選取 [檔案] > [新增專案]。
  2. 請在顯示 [新增專案] 精靈時,指定下列項目,然後按 [下一步]:
    1. 在 [種類] 清單中,選取 [Web] 以表示建立的專案類型。
    2. 在 [專案] 清單中,選取 [Identity Manager 專案]。

    3. 備註

      您必須為功能完整的開發環境建立一般 Identity Manager 專案。請勿選取 [Identity Manager 專案 (遠端)] 選項。


  3. 填寫 [名稱與位置] 畫面上的下列欄位,然後按 [下一步]:
    • 專案名稱: 將 Idm80 輸入為專案名稱。
    • 專案位置:使用預設位置或指定不同的位置。
    • 專案資料夾:使用預設資料夾或指定不同的資料夾。
  4. 請在顯示 [Identity Manager WAR 檔案位置] 畫面時,輸入 Identity Manager 8.0 WAR 檔案的位置。一般而言,解壓縮此檔案會在相同目錄中建立 idm.war 檔案。
  5. 按 [下一步] 繼續執行 [儲存庫設定] 畫面。
  6. 您應該不需要變更此面板上的預設設定,請直接按一下 [完成]。當您在 [Identity Manager IDE 輸出] 視窗中看到 BUILD SUCCESSFUL (建置成功) 訊息時,可以解壓縮效能評測器指導檔案。請參閱步驟 2:解壓縮效能評測器指導,以取得說明。

步驟 2:解壓縮效能評測器指導

解壓縮專案根目錄中的 profiler-tutorial.zip。解壓縮的檔案包含:

<專案根目錄>/custom/WEB-INF/config/ProfilerTutorial1.xml

<專案根目錄>/custom/WEB-INF/config/ProfilerTutorial2.xml

<專案根目錄>/src/org/example/ProfilerTutorialExample.java

<專案根目錄>/PROFILER_TUTORIAL_README.txt

現在即可啟動效能評測器。

步驟 3:啟動效能評測器

若要啟動效能評測器:

  1. 使用開始之前中所提供的說明,增加伺服器與 Netbeans JVM 的記憶體。
  2. 使用簡介中所述的任何方法啟動效能評測器。
  3. 顯示 [效能評測器選項] 對話方塊時,可以指定效能評測選項。

步驟 4:設定效能評測器選項


備註

如需有關所有不同效能評測器選項的詳細資訊,請參閱指定效能評測器選項


若要使用此指導,請指定下列效能評測器選項:

  1. 在 [模式] 標籤上,選取 [Java 與 IDM 物件] 以評測表單、Java、規則、工作流程與 XPRESS 物件的效能。
  2. 選取 [Java 篩選器] 標籤。
  3. 使用下列步驟停用自訂 Java 類別 (在此案例中為 org.example.ProfilerTutorialExample) 以外的所有 Identity Manager Java 類別:

    1. 按一下 [新增],新的空白欄位會顯示在 [篩選器] 欄底部。
    2. com.waveset.* 輸入新的欄位,然後選取 [排除] 方塊。
    3. 再按一下 [新增]。
    4. com.sun.idm.* 輸入新的欄位,然後選取 [排除] 方塊。
  4. 按一下 [確定] 以執行效能評測器。

  5. 備註

    如果是第一次在專案上執行效能評測器,或最近執行過清除專案動作,則效能評測器需要幾分鐘才能完成。


    當效能評測器完成處理時,系統會提示您登入。

  6. 輸入密碼 configurator,選取 [記住密碼] 方塊,然後按一下 [確定] 繼續。
  7. 請在 Identity Manager 視窗顯示時登入。

  8. 備註

    通常您應該以不同的使用者身份登入 Identity Manager,而不是再次以 configurator 登入。您已使用 configurator 的身份登入效能評測器,Identity Manager 階段作業池不允許使用者重複登入。登入多次可能造成階段作業池故障的假象,且可能扭曲細部效能問題的效能評測結果。

    但是,針對此簡單的範例,階段作業區並不重要,因此您可以 configurator/configurator 登入。


  9. 在 Identity Manager 中,選取 [伺服器作業] > [執行作業],然後按一下 [ProfilerTutorialWorkflow1]。
  10. 此指導可能需要幾分鐘才會回應。

  11. 雖然您現在可拍攝快照,但目前請重設結果、執行效能評測器並再執行一次,然後拍攝快照。

  12. 備註

    執行效能評測器幾次再拍攝快照是最佳作法,如此可確保所有快取皆就緒、所有 JSP 都已編譯等。

    多次執行效能評測器可讓您專注在實際的效能問題上。但如果您有快取寫入的問題,則不要如此做。


    1. 返回 Identity Manager IDE 中的 IDM 效能評測器檢視。按一下 [重設收集的結果] 圖示 此圖形顯示 [重設收集的結果] 圖示。 在 [效能評測結果] 區段 (或 [控制] 區段) 中,可重設目前為止收集的所有結果。
    2. 在 Identity Manager 中,再次選取 [伺服器作業] > [執行作業],然後按一下 [ProfilerTutorialWorkflow1]。
    3. 請在顯示 [進程圖] 時,返回 Identity Manager IDE 並按一下 [效能評測結果] 區段中的 [拍攝快照]。
  13. Identity Manager IDE 會下載快照並在視窗右側顯示結果。
  14. 此區域為 [呼叫樹狀結構] 檢視。在 [呼叫樹狀結構] 頂端,您會看到 /idm/task/taskLaunch.jsp,其 [Time] 欄中列有時間。此時間應表示整個請求耗用六秒以上。

  15. 展開 /idm/task/taskLaunch.jsp 節點,您會看到 ProfilerTutorialWorkflow1 耗用六秒。
  16. 展開 ProfilerTutorialWorkflow1 節點。請注意,activity2 耗用四秒,而 activity1 耗用兩秒。
  17. 展開 activity2
  18. 請注意,action1 耗用兩秒,而 action2 耗用兩秒。

  19. 展開 action1,請注意 <invoke> 也耗用兩秒。
  20. 連按兩下 <invoke> 以開啟 ProfilerTutorialWorkflow1.xml,並反白顯示下行:
  1. 選取 [CPU:<date><time>] 標籤以返回快照。
  2. 展開 <invoke> 節點,請注意效能評測器在 Java ProfilerTutorialExample.example() 方法中耗用兩秒。
  3. 連按兩下方法名稱以開啟 ProfilerTutorialExample.java 來源,並反白顯示下行:
  1. 若返回 [呼叫樹狀結構],您會看到所有兩秒的路徑都指向此方法。(您應該看到三個路徑;總計六秒。)
  2. 選取 [Hotspots] 標籤 (位於 [呼叫樹狀結構] 區域底部) 以開啟 [Hotspots] 檢視。請注意,ProfilerTutorialExample.example() 的總計 Self Time 為六秒。
  3. (如需有關 Hotspots 的更多資訊,請參閱 Hotspots 檢視。)

  4. ProfilerTutorialExample.example() 上按一下滑鼠右鍵,然後從快顯功能表中選取 [顯示 Back Traces]。
  5. 新的 [Back Traces] 標籤會顯示在此區域底端。

  6. 展開 [Back Traces] 標籤上的 ProfilerTutorialExample.example() 節點,會看到有三處呼叫此方法,且從每處呼叫此方法都耗用兩秒。
  7. (如需有關 Back Traces 的更多資訊,請參閱 Back Traces 檢視。)

  8. 按一下 [在專案中儲存快照] 圖示 此圖形顯示 [在專案中儲存快照] 圖示。 以儲存並關閉快照。
  9. 如果您查看 [IDM 效能評測器] 標籤上的 [已儲存的快照] 區段,應該會看到您的快照。(您可能必須向下捲動。)

  10. 選取已儲存的快照,然後按一下 [開啟] 重新開啟快照。

  11. 備註

    您可以使用 [另存新檔] 按鈕在外部儲存快照,並使用 [載入] 按鈕從專案外部載入快照。


  12. 再次關閉快照。

在工作流程 ManualAction 上使用效能評測器

此指導的下一個部分會說明如何評測工作流程 ManualAction 的效能。

  1. 在 Identity Manager 中,選取 [伺服器作業] > [執行作業],然後按一下 [ProfilerTutorialWorkflow2]。
  2. 在幾分鐘後,會顯示一個空白的表單。

  3. 按一下 [儲存],會隨即顯示進程圖。
  4. 再次選取 [伺服器作業] > [執行作業]。
  5. 返回 Identity Manager IDE IDM 效能評測器檢視,然後在 [效能評測結果] 區段中,按一下 [重設收集的結果] 圖示。
  6. 現在按一下 Identity Manager 中的 [ProfilerTutorialWorkflow2]。
  7. 當空白表單再次顯示時,請按一下 [儲存]。
  8. 在 IDM 效能評測器檢視中,按一下 [拍攝快照]。
  9. 幾秒之後,快照應顯示在 [呼叫樹狀結構] 區域中。您應該會看到 /idm/task/workItemEdit.jsp 耗用六秒以上。(此結果會對應至工作流程中的手動操作。)

  10. 展開 /idm/task/workItemEdit.jsp 節點,並注意執行 ManualAction 表單中之所有 Derivation 的節點總計耗用六秒。
  11. 依序展開 DerivationdisplayNameFormvariables.dummy<block> 節點。
  12. 您應該會看到 <block> 耗用了六秒,同時間效能評測器在呼叫 ProfilerTutorialExample.example(). 方法三次中,每次呼叫耗用兩秒。

  13. 您可以連按兩下 <block> 以檢視來源。

Identity Manager IDE 相關常見問題 (FAQ)

此 FAQ 會回答有關使用 Identity Manager 整合開發環境 (Identity Manager IDE) 的一些常見問題。此資訊已分類如下:

使用 NetBeans

問:我應該使用哪個 Netbeans 版本?

答:請根據您所使用 Netbeans 外掛程式版本隨附的 Identity Manager 產品文件,使用其中記載之 Netbeans 版本


備註

即使是修補程式版本也可能造成主要功能損毀,因此請一律使用記載的正確版本。


問:我在使用 Netbeans 外掛程式時執行了某項作業,結果現在不能用了。這是什麼原因呢?

答:此問題通常是由於 .netbeans 目錄中的檔案損毀所造成。一般來說,刪除 .netbeans 目錄並重新安裝 NetBeans 外掛程式可解決此問題。(刪除 .netbeans 目錄即可解除安裝 NetBeans 外掛程式。您會喪失所有使用者設定,但會保留專案的內容。)

這些步驟如下所示:

  1. 關閉 NetBeans。
  2. 刪除 .netbeans 目錄。
  3. 啟動 NetBeans。
  4. 安裝 NetBeans 外掛程式。
  5. 重新啟動 NetBeans。

使用專案

問:建置並執行專案需要很長的時間,且 Identity Manager IDE 似乎會複製許多檔案。這是什麼原因呢?

答:發生此問題的原因可能如下:

問:現在已經建立 Identity Manager 專案,我該將哪些檔案簽入來源控制?

答: 如需相關資訊,請參閱 Identity Manager IDE README.txt 中的「CVS Best Practices」一節。

問:在 CVS 中使用專案管理的最佳實作為何?

答:如需相關資訊,請參閱 Identity Manager IDE README.txt 中的「CVS Best Practices」一節。

問:物件何時匯入儲存庫?

答:詳細資訊請參閱使用儲存庫

問:我該如何新增 JAR 到專案?

答: 請參閱 Identity Manager IDE README.txt 中的「How to add a new JAR dependency」一節。

使用儲存庫

問:我的 sandbox 儲存庫應使用哪個儲存庫?

答:使用 sandbox 的內嵌式儲存庫,特別是若使用的是 Identity Manager 7.1 (或更高版本),此版本提供 HsSQL 儲存庫。如果未使用內嵌式儲存庫,則會失去功能。

如需更多資訊,請參閱 Identity Manager IDE README.txt 檔案中的「Working with the Repository」一節。

問:物件何時會自動匯入?

答:您必須將 Identity Manager IDE 配置為自動匯入物件。

這些步驟如下所示:

  1. 從 [IDM] 功能表選取 [儲存庫] > [管理內嵌式儲存庫]。
  2. 啟用 [管理內嵌式儲存庫] 對話方塊上的 [自動發佈 Identity Manager 物件] 選項。

  3. 備註

    Identity Manager 專案 (遠端) 不會提供此選項,或者如果您指定自己的儲存庫,亦不會提供此選項。


  4. 選取 [專案] > [執行專案] 或 [專案] > [除錯專案]。
  5. Identity Manager IDE 會自動匯入自從上次執行專案後,已變更的所有物件。


    備註

    自動發佈 Identity Manager 物件會增加啟動伺服器所需的時間。若要將伺服器啟動時間降至最低,請停用此選項,並明確地將物件上傳至儲存庫。


問:上傳物件最有效的方式為何?

答:使用下列其中一個方法上傳已修改的物件:

這兩種方法皆會將物件直接上傳至伺服器,因此沒有快取延遲的問題,且比使用 [執行專案] 或 [除錯專案] 還要快。不論使用哪個儲存庫,皆會提供 [上傳物件] 功能。

使用 Identity Manager IDE 除錯程式

問:Identity Manager IDE 除錯程式很慢。這是什麼原因呢?

答:若要改善除錯程式的效能:

問:我無法設定除錯程式的中斷點。這是什麼原因呢?

答:下列情況可能導致無法設定中斷點:

問:我設定了除錯程式的中斷點,但除錯程式到中斷點時並未暫停。這是什麼原因呢? 

答:請檢查下列兩項:

使用規則

問:在 Netbeans 中開發規則時,為何規則程式庫無法使用設計模式?

答:設計模式功能可從 [專案] 檢視的檔案總管樹狀結構中取得。請使用下列步驟:

  1. 展開程式庫節點並在規則上按一下滑鼠右鍵。
  2. 請在顯示快顯功能表時選取 [特性],然後按一下 [內文]。


Identity Manager 調校、疑難排解和錯誤訊息

本小節提供用於「Sun Identity Manager 調校、疑難排解和錯誤訊息」的新資訊與文件校正。


本土化範圍

過去,Identity Manager 不會本土化資源物件與功能,主要是因為這些資源物件與功能大部分是 Identity Manager 初始化期間載入 (透過 init.xml) 的範例,且物件類型的屬性會根據自訂的層級而在實際的客戶部署中有所差異。以下清單列出使用者可能會見到英文的範圍:(ID-16349)


線上說明

本小節包含線上說明的文件校正。