root / trunk / web / dojo / dojox / analytics / README
History | View | Annotate | Download (5.76 KB)
1 |
------------------------------------------------------------------------------- |
---|---|
2 |
dojox.analytics |
3 |
------------------------------------------------------------------------------- |
4 |
Version 1.0 |
5 |
Release date: 12/17/2007 |
6 |
------------------------------------------------------------------------------- |
7 |
Project state: |
8 |
[base]: alpha |
9 |
[Urchin]: alpha |
10 |
------------------------------------------------------------------------------- |
11 |
Project authors |
12 |
Dustin Machi (dmachi) |
13 |
Peter Higgins (dante) |
14 |
------------------------------------------------------------------------------- |
15 |
Project description |
16 |
analytics and client monitoring system. Including the base analytics |
17 |
system and any number of plugins enables logging of different system data |
18 |
back to the server. Plugins included at this time: |
19 |
|
20 |
dojo - reports dojo startup collected information |
21 |
window - reports available window information to the server |
22 |
mouseOver - allows periodic sampling of mouseOver |
23 |
mouseClick - reports any mouse clicks to the server |
24 |
idle - reports idle/activity |
25 |
consoleMessages - reports console.* messages to the server |
26 |
|
27 |
Additionally, a Google Analytics (Urchin tracker) helper is included |
28 |
in this project, though is unrelated to the Core dojox.analytics |
29 |
project code. |
30 |
|
31 |
------------------------------------------------------------------------------- |
32 |
Dependencies: |
33 |
|
34 |
Dojo Core (package loader). |
35 |
------------------------------------------------------------------------------- |
36 |
Documentation |
37 |
|
38 |
Usage: |
39 |
|
40 |
The primary intended usage will be to create a custom build layer that includes |
41 |
the particular plugins you need for your project. However in practice you |
42 |
can use the system as such: |
43 |
|
44 |
<script type="text/javascript" src="../../../dojo/dojo.js" |
45 |
djConfig="parseOnLoad: true, isDebug: false, usePlainJson: true, sendMethod: 'script', sendInterval: 5000"></script> |
46 |
|
47 |
<script language="JavaScript" type="text/javascript"> |
48 |
// include the analytics system |
49 |
dojo.require("dojox.analytics"); |
50 |
|
51 |
//tracks mouse clicks on the page |
52 |
dojo.require("dojox.analytics.plugins.mouseClick"); |
53 |
|
54 |
// this plugin returns the informatin dojo collects when it launches |
55 |
dojo.require("dojox.analytics.plugins.dojo"); |
56 |
|
57 |
// this plugin return the information the window has when it launches |
58 |
// and it also ties to a few events such as window.option |
59 |
dojo.require("dojox.analytics.plugins.window"); |
60 |
|
61 |
// this plugin tracks console. message, It logs console.error, warn, and |
62 |
// info messages to the tracker. It also defines console.rlog() which |
63 |
// can be used to log only to the server. Note that if isDebug() is disabled |
64 |
// you will still see the console messages on the sever, but not in the actual |
65 |
// browser console. |
66 |
dojo.require("dojox.analytics.plugins.consoleMessages"); |
67 |
|
68 |
// tracks where a mouse is on a page an what it is over, periodically sampling |
69 |
// and storing this data |
70 |
dojo.require("dojox.analytics.plugins.mouseOver"); |
71 |
|
72 |
//tracks when the user has gone idle |
73 |
dojo.require("dojox.analytics.plugins.idle"); |
74 |
|
75 |
</script> |
76 |
|
77 |
When done using a build, none of the dojo.require() statement will be requires |
78 |
would already be in the build. |
79 |
|
80 |
Most of the plugins and the base itself have a number of configurable params |
81 |
that are passed in via the djConfig variable set. This approach is taken so that |
82 |
the parameters can be easily provided in the case of a build or for a custom |
83 |
dojo.js build with analytics built in. Examples for different build profiles |
84 |
are in the profiles directory. |
85 |
|
86 |
Available Configuration Parameters: |
87 |
|
88 |
Base Configs |
89 |
sendInterval - Normal send interval. Default 5000 |
90 |
sendMethod - "script" || "xhrPost" |
91 |
inTransitRetry - Delay before retrying an a send if it was in transit |
92 |
or if there is still data to be sent after a post. |
93 |
Default 1000 |
94 |
analyticsUrl - url to send logging data to. defaults to the test php |
95 |
file for now |
96 |
maxRequestSize - Maximum size of GET style requests. Capped at 2000 for |
97 |
IE, and 4000 otherwise |
98 |
|
99 |
consoleMessages Config: |
100 |
|
101 |
consoleLogFuncs - functions from the console object that you will log to |
102 |
the server. If the console object doesn't exist |
103 |
or a particuarl method doesn't exist it will be |
104 |
created as a remote logging only method. This provides |
105 |
a quick and convient way to automatically define |
106 |
a remote logging funciton that includes the functions |
107 |
name in the log. The 'rlog' in the default paramerters |
108 |
is an example of this. Defaults to ["error", "warn", "info", "rlog"] |
109 |
|
110 |
idle Config: |
111 |
|
112 |
idleTime - Number of ms to be idle before being reported to the server as idle |
113 |
|
114 |
mouseOver config: |
115 |
targetProps - the properties whose values will be reported for each target from |
116 |
a mouse over sample. defaults to ["id","className","localName","href", "spellcheck", "lang", "textContent", "value" ] |
117 |
|
118 |
sampleDelay - the delay in ms between mouseover samples. Defaults to 2500 |
119 |
|
120 |
window config: |
121 |
windowConnects - methods on the window objec that will be attached to |
122 |
have its data passed to the server when called. |
123 |
|
124 |
|
125 |
Note that the basic usage of this system simply serializes json with toJson() when passed |
126 |
to the analytics addData() method. If data is passed that has circular references |
127 |
it will die. Take care not to do that or be surprised when it doens't work |
128 |
in those cases. |
129 |
|
130 |
------------------------------------------------------------------------------- |
131 |
Installation instructions |
132 |
|
133 |
Grab the following from the Dojo SVN Repository: |
134 |
http://svn.dojotoolkit.org/var/src/dojo/dojox/trunk/analytics |
135 |
|
136 |
Install into the following directory structure: |
137 |
/dojox/analytics/ |
138 |
|
139 |
...which should be at the same level as your Dojo checkout. |