oracle过滤器基础,示例过滤器表达式 (Oracle Solaris Studio 12.2:性能分析器)
示例過濾器表達式
本節介紹可通過 er_print -filters 命令以及在分析器過濾對話框中使用的過濾器表達式的示例。
利用 er_print -filters 命令,過濾器表達式用單引號引起來,如下所示:
er_print -filters 'FNAME("myfunc") SOME IN USTACK' -functions test.1.er
示例?5–1 按名稱和堆棧過濾函數
從用戶函數堆棧過濾名為 myfunc 的函數:
FNAME("myfunc") SOME IN USTACK
示例?5–2 按線程和 CPU 過濾事件
當線程 1 僅在 CPU 2 上運行時,要查看線程 1 中的事件,請使用:
THRID == 1 && CPUID == 2
示例?5–3 按索引對象過濾事件
如果將索引對象 THRCPU 定義為 "CPUID<<16|THRID",下面的過濾器與上述當線程 1 僅在 CPU 2 上運行時查看線程 1 中的事件等效:
THRCPU == 0x10002
示例?5–4 過濾指定時間段發生的事件
過濾介于第 5 秒和第 9 秒之間的時間段中發生的實驗 2 的事件:
EXPID==2 && TSTAMP >= 5000000000 && TSTAMP < 9000000000
示例?5–5 過濾來自特定 Java 類的事件
過濾堆棧中具有特定 Java 類的任何方法的事件(用戶視圖模式下):
FNAME("myClass.*") SOME IN USTACK
示例?5–6 按內部函數 ID 和調用序列過濾事件
已知函數 ID(如分析器中所示)時,過濾包含計算機調用堆棧中特定調用序列的事件:
(314,272) ORDERED IN MSTACK
示例?5–7 按狀態或持續時間過濾事件
如果 describe 命令列出時鐘分析實驗的以下屬性:
MSTATE UINT32 Thread state
NTICK UINT32 Duration
可以使用以下過濾器選擇處于特定狀態的事件:
MSTATE == 1
或者,可以使用以下過濾器選擇處于特定狀態且其持續時間比 1 個時鐘周期長的事件:
MSTATE == 1 && NTICK > 1
總結
以上是生活随笔為你收集整理的oracle过滤器基础,示例过滤器表达式 (Oracle Solaris Studio 12.2:性能分析器)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql ocp 题库部分解析
- 下一篇: WebStorm WiFi真机同步无法安