--- title: PerformanceObserver.observe() slug: Web/API/PerformanceObserver/observe tags: - API - PerformanceObserver - Web パフォーマンス - パフォーマンス - メソッド - リファレンス translation_of: Web/API/PerformanceObserver/observe ---
監視するパフォーマンスエントリタイプのセットを指定するには、{{domxref("PerformanceObserver")}} インターフェイスのobserve()
メソッドを使用します。パフォーマンスエントリタイプは {{domxref("DOMString")}} オブジェクトの配列として指定され、それぞれが1つのエントリタイプを命名します。型名は{{SectionOnPage("/ja/docs/Web/API/PerformanceEntry/entryType", "パフォーマンスエントリタイプ名")}}に記載されています。
一致するパフォーマンスエントリが記録されると、パフォーマンスオブザーバーのコールバック関数 ({{domxref("PerformanceObserver")}}) の作成時に設定されたコールバック関数が呼び出されます。
observer.observe(options);
options
PerformanceObserverInit
ディクショナリ
entryTypes
" は {{domxref("DOMString")}} オブジェクトの配列で、それぞれが監視対象のパフォーマンスエントリの種類を1つ指定します。有効な型名のリストについては {{domxref("PerformanceEntry.entryType")}} を参照してください。認識されない型は無視されますが、ブラウザは開発者がコードをデバッグするのに役立つ警告メッセージをコンソールに出力するかもしれません。有効な型が見つからない場合、observe()
は効果がありません。この例では、2つの PerformanceObservers
を作成して設定します。1つは"mark"
と "frame"
イベントを監視し、もう1つは "measure"
イベントを監視します。
var observer = new PerformanceObserver(function(list, obj) { var entries = list.getEntries(); for (var i=0; i < entries.length; i++) { // Process "mark" and "frame" events } }); observer.observe({entryTypes: ["mark", "frame"]}); function perf_observer(list, observer) { // Process the "measure" event } var observer2 = new PerformanceObserver(perf_observer); observer2.observe({entryTypes: ["measure"]});
仕様書 | ステータス | コメント |
---|---|---|
{{SpecName('Performance Timeline Level 2', '#dom-performanceobserver-observe', 'observe()')}} | {{Spec2('Performance Timeline Level 2')}} | observe() メソッドの初期定義 |
{{Compat("api.PerformanceObserver.observe")}}