Create a metric in workspace for the rate at which any page is the previous page to a specific page? - adobe-analytics

Our site has several error page including a catch-all error page for errors that we cannot identify. I am trying to create a metric in workspace that will give me the rate at which any page is the previous page to the catch-all error page.
This is what I tried (not working):
((page=catch-all AND previous page exists)[Unique visitors])/(Page exists[Unique Visitors]
It gives me 99% on the error page itself and 0% for every other page.
I previously had another formula working correctly for specified pages like this:
((page=catch-all AND previous page=specific page)[Unique visitors])/(page=specific page[Unique Visitors]
This would give the error rate of a specific page. How do I create a metric that can sub in any page in workspace?

The easiest way to obtain this data is to fire a custom event whenever an error message is shown. From there, you can calculate error rate by taking the total number of errors and dividing it by the total number of page views for each given page.

Related

On third page not getting next page token google place api?

On third page not getting next page token google place api?
I am using Google place text search API in my Ruby on rails application, everything is working fine but after third page I am not getting any next page token so for every text search I am getting only 60 result. Is I am missing something please suggest any help would be appreciable. This happen for every text.
My request for first page :-
https://maps.googleapis.com/maps/api/place/textsearch/json?key=#{my_key}&query=#{my_query}
My request for other page with token:-
https://maps.googleapis.com/maps/api/place/textsearch/json?key=#{my_key}&pagetoken=#{next_page_token}
And usually I am searching on google it show 100's of result for same place text. How can I get result more than 60.
This is intended behavior for Google's Places API, as you can only get up to 60 places, split across 3 pages (3 queries). This is why there is no next_page_token on the third page.
By default, each Nearby Search or Text Search returns up to 20
establishment results per query; however, each search can return as
many as 60 results, split across three pages. If your search will
return more than 20, then the search response will include an
additional value — next_page_token.
Reference here.

How to view all tracked visitors in Google Analytics in main URL without tracking code

We use Marketo and it adds an ID for every unique visitor. This presents a problem when I want to view all visitors that have filled out our contact form. The main page is:
/EnterpriseDemoRequest_ThankyouConfirm.html
So when I get results from Google on the thank you page it shows up like so in a giant list like below:
...
78. /ContactSales_ThankyouConfirm.html?aliId=25026187
79. /ContactSales_ThankyouConfirm.html?aliId=25027907
80. /ContactSales_ThankyouConfirm.html?aliId=25028288
81. /ContactSales_ThankyouConfirm.html?aliId=25028314
...
Hoping someone can help me figure out how to filter out the tracking code beyond /EnterpriseDemoRequest_ThankyouConfirm.html
Thanks!
You should aliId as an excluded URL query parameter in Admin > Profile > Settings:
This change is to be done at the "Profile" (now labelled "View") level. As such, it will only apply to future data.

How to track type-ahead internal search in SiteCatalyst

I'm planning out how to track internal search data in Omniture/SiteCatalyst.
It's a fairly straight-forward plan for a standard "enter a term and get a page of results" model: set sProps and eVars with the terms, the count of results, and the page searched from, then fire a success event for searching and another for clicking a search result.
For a type-ahead search--where the user is given search results as they type in a search bar--what's a good strategy for handling the timing of event submissions so that you don't end up with different events/entries for letters 4, 5, 6, and 7 of a search term's entry?
Our solution was to leverage a delay on the autocomplete to reduce the number of calls. From a tracking standpoint, if someone pauses for 1 second (or 500 ms, whatever), then they're probably actually waiting for the autocomplete results, and that constitutes a valid search.
From a technical standpoint, we leveraged the delay option on the jQuery UI widget.
Strategy I've always used is to not track the "auto-complete" search features..put the tracking on the search results page same as normal. Or are you saying the whole search results page is being output as the user types? If that is the case...one thing you could do is write some code to pop the Omniture code when the search field loses focus.
Another thing you can do is as the visitor is typing in the search bar, on each keypress, write the current value to a cookie. Then have some code that runs on page load to look for that cookie and if it exists, pop the Omniture search variables and erase the cookie. Alternatively you can keep track of current value w/ a server-side session variable since I assume this thing is ajax driven, and output the omn code w/ server-side code if session var exists. These methods would mean that the search events and vars would not pop on the search results page...this probably isn't that big a deal, unless you have supporting variables you pop, like an "internal search referrer" prop/eVar that keeps track of the previous page the visitor was on (or the page the visitor was on when they performed the search). So you'll have to keep that in mind and carry that over as well.
Whenever you do a search you might be aware of the concept that query string parameter get added at the end of URL.
Suppose www.stackoverfow.com is website and when are you performing a search on it then it will be like www.stackoverflow.com?q=yourname , yourname is the searchkeyword.This keyword we can capture in sitecatalyst.
you can see google.com while searching on internet for sitecatalyst is ---
www.google.co.in/search?q=sitecatalyst
In the same way we can use query string parameter as q = something.
after doing all this thing we can use the plugin getQueryParam in plugin section of the s_code library file to fetch that variable and store that in sitecatalyst variable...
example:-
function s_doPlugins(s) {
var one = s.getQueryParam("q");
if(one)
s.eVar1=one;
}
s.doPlugins=s_doPlugins
insert this below code outside plugin section
/*
* Returns the value of a specified query string parameter, if found in the current page URL.
*/
s.getQueryParam=new Function("p","d","u",""
+"var s=this,v='',i,t;d=d?d:'';u=u?u:(s.pageURL?s.pageURL:s.wd.locati"
+"on);if(u=='f')u=s.gtfs().location;while(p){i=p.indexOf(',');i=i<0?p"
+".length:i;t=s.p_gpv(p.substring(0,i),u+'');if(t){t=t.indexOf('#')>-"
+"1?t.substring(0,t.indexOf('#')):t;}if(t)v+=v?d+t:t;p=p.substring(i="
+"=p.length?i:i+1)}return v");
s.p_gpv=new Function("k","u",""
+"var s=this,v='',i=u.indexOf('?'),q;if(k&&i>-1){q=u.substring(i+1);v"
+"=s.pt(q,'&','p_gvf',k)}return v");
s.p_gvf=new Function("t","k",""
+"if(t){var s=this,i=t.indexOf('='),p=i<0?t:t.substring(0,i),v=i<0?'T"
+"rue':t.substring(i+1);if(p.toLowerCase()==k.toLowerCase())return s."
+"epa(v)}return ''");
you will find that it will capture your search results
please let me know in case of more clarifications

Quickreport - pagenumber does not increase when page changed

I am using the OnNeedData feature with an array feeding a number of qrLabels in a detail band configuration - (Delphi 2010 and QuickRep5) - On a multi-page report, I need to detect every next page (2, 3, 4 etc) and modify the first line in the detail band.
Everything works fine except that the internal page number variable (QuickReport.QRprinter.pagenumber) does not increment before the first line is printed (or shown).
As an exemple, if I print a spam removed of labels with the caption equal to the page number,
the first line of page 2 will show Page 1 and the rest of the lines on that page will show correctly Page 2 same thing happens for all other pages.
Can someone help me to find a way to properly identify the beginning of a new page, I have tried OnEndPage, OnStartPage, BeforePrint, etc. without success - the counter always increment after the first line of the detail band has been printed...
Thank you
Make sure that the Quickrep1 has a PageheaderBand
Then examine the QuickRep1.QRPrinter.PageNumber in the OnBeforePrint event handler of that PageHeaderBand.

Grails: I need to measure the time it takes to create a graph in a grails application

I have a view that <g:render>s a template and the template has a <g:each> statement that
creates an image which the src of the image is a ${createLink} call to a controller that creates the image (plotted graph). I need to total the time of creating the set of images. Any ideas on how to do that? Also in the view is a called to Ajax.PeriodicalUpdater to update the graphs every 10 seconds. Basically I have the following in the template:
<g:each in "${list}" var="l">
<img src="${createLink(controller:'fooController', params: [blah:blah], action:"controllerAction')}"
</g:each>
I tried doing it at the action method side but each call is a different Thread and I need the total time of all images created. I tried measuring before the <g:each> and after but that didn't work because of the Threads.
How can I do this?
If my action method returns a time can I access it from within the <g:each>.
It's probably must be measured from client side. And this can be easily done by using just Firebug for Firefox, it shows you all information about current page, including total time of loading it.

Resources