ドキュメント一覧 | API

BOOMR オブジェクト

boomerang は全て BOOMR オブジェクトを通してアクセスします。それぞれのプラグインは各 API を持っていますが、それも BOOMR.plugins を通した領域となります。このドキュメントは主に BOOMR オブジェクトについて記述します。

以下のいずれかへのアクセスには BOOMR オブジェクトを参照します。例えば version の文字列を取得するには、BOOMR.version を使います。

プロパティ

version

boomerang ライブラリーのバージョン。バージョンは メジャー.マイナー.パッチレベル 形式の文字列になります。標準的なバージョンナンバリングが適用されます。

plugins

boomerang に追加されている全てのプラグインを格納します。もしあなたが自分でプラグインをつくった場合このオブジェクトに追加するべきです:

BOOMR.plugins.MyPlugin = {
	...
};

設定

boomerang の設定については 使用方法 #6 — boomerang を設定する に記載されています。BOOMR オブジェクトに関係があるパラメーターは:

beacon_url
[強く推奨] ビーコンの結果を送る URL 。全てのパラメーターはこの URL の QueryString に追加されます。この URL は QueryString 部分を事前に持っておく必要はありません。このパラメーターには初期値はありません。もし設定されていなければビーコンは送信されません。
site_domain
[推奨] 全ての Cookie がセットされるドメイン。boomerang はこれを自動判別しようとしますが、あなたのサイトが foo.com の形式の場合を除き、実際には取得に失敗します。これはドメイン間で共有する帯域幅やパフォーマンスを測定したいときに役立ちます。もし複数のドメインを持っている場合はうまくいきません。別々に測定しなければなりません。
user_ip
[推奨] この名前にもかかわらず、これはユーザーのコネクションをユニークに区別するために使われる自由な文字列です。これは主にユーザーの帯域幅を再測定するかどうかの判断に使われるか、または Cookie に格納される値に使われます。IPv4 アドレスや IPv6 アドレスまたはそれ以外のユーザーのコネクションを区別できるものを使うことになります。
log
[オプション] 初期値では boomerang は YUI のロガーコンポーネントが見つかればそれを、Firebug が見つかれば代わりにそれを使おうと試みます。どちらもない場合は、初期状態では何もログに残しません。ログメッセージ用の関数のために log パラメーターを設定することで自身のロガーを定義することができます。
この関数については:
function log(oMessage, sLevel, sSource);
どこに:
oMessage
記録されるオブジェクトまたはメッセージ。記録するオブジェクトを決定するだけです。
sLevel
"error"、"warn"、"info"、"debug" などのログレベル。
sSource
ログメッセージのソース。通常はプラグインの名前がついた "boomerang" の文字列になります。
lognull を設定することでログの記録を無効にできます。
autorun
[オプション] 初期値では boomerang は自動的に実行され window.onload イベントに page_ready ハンドラーが登録されます。もし autorunfalse にすると、これは起こらず、BOOMR.page_ready() を自分で呼び出す必要があります。
<plugin_name>
それぞれのプラグインは設定オブジェクトのサブオブジェクトを通して設定を行ないます。キーはプラグインの名前になります。ビルトインのプラグインの設定方法については次の各セクションをご覧ください。

メソッド

init(oConfig)

boomerang を初期化するために呼び出すのが init メソッドです。boomerang の JavaScript の読み込みが終わったあとにこのメソッドを一度だけ呼び出します。一つの設定オブジェクトをパラメーターとして受け取ります。詳細は 設定項目の説明 をご覧ください。

返り値

BOOMR オブジェクトへの参照。メソッドチェーンをサポートします。

page_ready()

page_ready イベントを発行するメソッドです。init() メソッドを呼び出した時に autorun を false にしているときだけこのメソッドを呼び出します。あなたのページではユーザーが ready を使う場合にはこのメソッドを呼び出す必要があります。これはページの読み込み時間の測定時の終了時間になります。

例:

このメソッドの使い方の例は 使用方法 #1b をご覧ください。

返り値

BOOMR オブジェクトへの参照。メソッドチェーンをサポートします。

subscribe(sEvent, fCallbackFn, oCallbackData, oCallbackScope)

subscribe メソッドは boomerang の イベント にイベントハンドラーを追加します。4つのパラメーターを受け付けます。

パラメーター:

sEvent
イベント名。page_readypage_unloadbefore_beacon のうちのいずれかを指定します。
fCallbackFn
このイベントが発生したときに呼び出されるコールバック関数への参照。関数の記述は次のようにします:
function(oEventData, oCallbackData);
oCallbackData
[オプション] コールバック関数に2番目のパラメーターとして渡されるオブジェクト
oCallbackScope
[オプション] もしこのオブジェクトが指定されていればコールバック関数はこのオブジェクトのメソッドとして呼び出され、コールバック関数の内部での全ての this への参照は oCallbackScope を参照します。

before_beacon はビーコンが発生する前に何かしたい場合に便利ですが、page_readypage_unload イベントはほとんどのプラグインで役立ちます。さらに詳しい内容は イベント のセクションをご覧ください。

返り値

BOOMR オブジェクトへの参照。メソッドチェーンをサポートします。

addVar(sName, sValue) または addVar(oVars)

ビーコンに一つ以上のパラメーターを追加します。このメソッドはビーコンにパラメーターを追加したいプラグインによって使用されますが、ページの開発者が現在のリクエストにタグをつけるために使う場合もあるかもしれません。

例:

addVar() を使用した例は 使用方法 #5 をご覧ください。

このメソッドは key/value のペアを含んだ一つのオブジェクト、または一つ目が変数名、二つ目が値といったような二つのパラメーターと一緒に呼び出されます。全ての名前は URL のクエリーストリングに使用できる文字列である必要があります。英数字とアンダースコアを推奨しますが、あなたが使いたい文字列でも構いません。値は文字列または数値である必要があります。こちらも名前と同じ制限があります。

返り値

BOOMR オブジェクトへの参照。メソッドチェーンをサポートします。

removeVar(sName, ...)

ビーコン URL から一つ以上の変数を削除します。これはセットしたパラメーターの値をリセットするプラグインで有効に使えます。また、before_beacon ハンドラーでも送信したビーコンを止めるために使用できます。使用方法は 使用方法 #5 をご覧ください。

このメソッドは変数名のリストまたは変数名のリストを含んだ一つの配列のいずれかを受け取ります。

返り値

BOOMR オブジェクトへの参照。メソッドチェーンをサポートします。

sendBeacon()

ビーコンを送信するために boomerang へリクエストを送ります。boomerang はこのリクエストを無視する場合があります。このメソッドが呼び出されると、boomerang は全てのプラグインをチェックします。もし不完全なプラグインがあれば(プラグインの is_complete() をチェック)、このメソッドは false を返し何もしません。全てのプラグインに問題なければ、ビーコンに送信された全ての変数と一緒に before_beacon イベントを発生させます。

全ての before_beacon ハンドラーが終了したあとに、beacon_url がセットされているか、ビーコンを送信するためにパラメーターが存在するかをチェックし共に問題がなければビーコンが送信されます。

返り値

BOOMR オブジェクトへの参照。メソッドチェーンをサポートします。

log(sMessage, sLevel, sSource)

設定されたロガーへ sLevel のレベルと一緒に sMessage を記録します。このメソッドは単に設定されたロガーに全てのロギング情報を渡します。設定の詳しい方法は 使用方法 #6 をご覧ください。

大抵の場合ログレベルを設定するよりも次のメソッドを使用したほうが便利です。

返り値

なし

debug(sMessage, sSource)

設定されたロガーへ debug レベルで sMessage を記録します。sSource がセットされていると "boomerang." の文字列に結合され、ログメッセージのソースとしてセットされます。このパラメーターはプラグイン名や行番号、関数名などを出力するために使用できます。

返り値

BOOMR オブジェクトへの参照。メソッドチェーンをサポートします。

info(sMessage, sSource)

設定されたロガーへ info レベルで sMessage を記録します。sSource がセットされていると "boomerang." の文字列に結合され、ログメッセージのソースとしてセットされます。このパラメーターはプラグイン名や行番号、関数名などを出力するために使用できます。

返り値

BOOMR オブジェクトへの参照。メソッドチェーンをサポートします。

warn(sMessage, sSource)

設定されたロガーへ warn レベルで sMessage を記録します。sSource がセットされていると "boomerang." の文字列に結合され、ログメッセージのソースとしてセットされます。このパラメーターはプラグイン名や行番号、関数名などを出力するために使用できます。

返り値

BOOMR オブジェクトへの参照。メソッドチェーンをサポートします。

error(sMessage, sSource)

設定されたロガーへ error レベルで sMessage を記録します。sSource がセットされていると "boomerang." の文字列に結合され、ログメッセージのソースとしてセットされます。このパラメーターはプラグイン名や行番号、関数名などを出力するために使用できます。

返り値

BOOMR オブジェクトへの参照。メソッドチェーンをサポートします。

イベント

page_ready

ユーザーがページを利用できるようになった時に発生します。デフォルトでは window.onload が発生した時に発生しますが、autorunfalse にしている場合は BOOMR.init() が呼び出されたときに BOOMR.page_ready() によって明示的に発生させる必要があります。

コールバック

追加されるイベントデータはコールバック関数に渡されます。いくつかのデータは subscribe() メソッドに渡されます。

page_unload

ブラウザーがページを閉じる直前に発生します。window.onbeforeunload が発生した時に発生します(Opera では onunload)。

コールバック

追加されるイベントデータはコールバック関数に渡されます。いくつかのデータは subscribe() メソッドに渡されます。

before_beacon

ビーコンがサーバーへ送信される直前に発生します。ビーコンのパラメーターは BOOMR.removeVar() を呼び出すことによってビーコンを止めるられます。

コールバック

コールバック関数は二つのパラメーターと一緒に呼び出されます。最初のパラメーターはビーコンに追加される全てのパラメーターを含んだオブジェクトになります。二つ目のパラメーターは subscribe() メソッドに渡されたコールバックデータのオブジェクトになります。もしコールバック関数が boomerang から全てのパラメーターを削除した場合、ビーコンは送信されません。

ビーコンパラメーター

独自のプラグインがない場合、boomerang はビーコンを通して次のパラメーターを送ります:

v
使用している boomerang ライブラリーのバージョン。
u
ビーコンを送るページの URL 。

プラグインによってはそれぞれのプラグインの API ドキュメントに記述されている独自のパラメーターを追加するかもしれません。