Google Analytics; creating a segment using multiple ids - google-analytics

I would like to get google analytics on a small set of pages, of the thousands of pages, tracked by the google analytics. Each of these page has a unique id and I was hoping to use these to identify the subset of pages. Following are examples of such ids.
uda502aaf-3a8f-4aa5-9f49-00d2ac4c6545
ud5655462-c5f5-46c4-b807-d1a8527786d7
uceb1a469-0af9-499f-9608-42242a9f0c63
uc4b4d9e3-a558-4282-a009-e984e81364eb
ubaf6e057-4cad-4b9b-a625-7b2ea11fa8c5
ub1c4cb68-bc41-476b-9e31-9b9800113236
uadb6c44d-792b-48ca-969d-ff1b638dd223
uaa17490f-11ff-4947-9841-9f744963fbc2
u9a60d135-64f7-4890-963f-8093b8cf1eaa
I tried to create a filter on pages, using "contains", with the ids separated by | as shown below
A)
uf07f4d74-2239-4b4b-851f-d40e51ad5f9a | 125bd8a07b4c32917dae805c23ead087 | c65da9b1fcb588e64cb126fda78afee9
AND
B)
(uf07f4d74-2239-4b4b-851f-d40e51ad5f9a) | (125bd8a07b4c32917dae805c23ead087) | (c65da9b1fcb588e64cb126fda78afee9)
and everything was "0". I know users have visited these pages. How can I create a correct filter for such IDs?
Thx in advance

You can't use a "contains" filter type if you have multiple IDs that you want to sort through. In your example A, you are using something like a Regex format, so you should select "Matching RegExp" as the filter type.

Related

marketo smart list filters exclude matching records

Is there a way to use the smart list in a campaign to exclude records that match a filter?
I've got a custom table linked to the lead records, but it's a many-to-one style. I'm trying to suppress lead records where the history records match certain values.
Problem is that there seems to be no way to do it. I can have it include leads with no history records or leads with history records without certain values, but if the same lead has multiple history records, it will show up if either record has a value not in the exclusion.
What I want is the leads where NONE of the history records for it has those certain values, not simply to exclude the history records that match.
If this were a sql join statement, what I'm getting is:
select * from leads
join history on history.leadid = leads.id and history.myval != 'x'
but what I want is:
select * from leads
where id not in (select id from history where myval = 'x')
You might be able to do it by creating a couple of smart lists
a> A smart list that will checks for all the people who have that custom object AND have the exact value(s) that you want to Exclude
b> Then create another smart list with criteria like,
All the people who have,
1> That custom object
AND
2> Who are NOT in the first smart list A
That should give you the people you are looking for
Hope this helps
Rajesh Talele

Using application insights REST API for reading custom events

We have a custom event put in place on page which tracks the link clicks on given page to app insights. And with the REST API we would like to get the frequently accessed links from app insights.
How can we build the Query to get this analytics data, any sample on reading custom events available?
Thanks
if you open the Application Insights Analytics website for any resource, there's some "Common Queries" examples right on the front page. one of them is called "Usage" and if you click it it will show you this one:
//What are the top 10 custom events of your application in the past 24 hours?
customEvents
| where timestamp >= ago(24h)
| summarize dcount(user_Id), count() by name
| top 10 by count_
| render barchart
which:
queries customEvents,
filtering to the last 24 hours (timestamp >= ago(24h)),
does a summary of the distinct count of users (dcount(user_Id)) and the total number of events (count()), grouped by the event name (by name),
then filters to the top 10 by the _count field created from the summarization (top 10 by count_)
and then renders it as a bar chart (render barchart)
there are many other examples on the analytics home page as well.
Edit to add: You can easily query any custom properties or metrics that you send as well. the customDimensions and customMeasurements fields in each event type are json typed fields, and if there's no spaces in the names, you can just use dot notation to grab values. if the field has names/special characters, use brackets and quotes:
customEvents
| where timestamp >= ago(1h)
| extend a = customDimensions.NameOfFieldWithNoSpacesOrSpecialCharacters
| extend b = customDimensions["Field with spaces"]
| extend duration = customMeasurements["Duration (ms)"]
| project a, b, duration
| limit 10
(you don't need to use extend, you can use the fields however you want this way, with extend or project or summarize or any other functions or anything else. i just used extend for the example here.)

Google Analytics API: how to get non-US visitors

I have been using visitors with ga:country filters to get specific country's visitors. For example to get the number of visitors from US, I used the filter of 'ga:country==United%20States'. But I am wondering if I can do something like 'ga:country!=United%20States'? I guess I can subtract ga:country==United%20States from total visitors but I am wondering.
The easet way of doing this is to create a filter ga:country. A filter will let you remove a subset of the data returned by a query. Think of it like a where clause in SQL.
Filter=ga:country!%3DUnited%20States
That translates to
Filter=ga:country != United States
I made a simple report on my personal dashboard the Google Analtyics to test it.
Added info on filtering:
You can add more then one filter by seprateing
OR operator is defined using a comma (,).
AND operator is defined using a semi-colon (;).
You can mix and match Metric and Dimensions in the same filter.

Missing values in google.com:analytics-bigquery:LondonCycleHelmet.ga_sessions_20130910

I am working with the practice repository in preparation for doing upcoming work with a large enterprise client using BQ. The repository link is: google.com:analytics-bigquery:LondonCycleHelmet.ga_sessions_20130910
I have 3 questions to ask in relation to the sample repository & a query that was run (please see the bottom of the link for the query that motivated the question:
1) What is the difference between customDimensions.index, customDimensions.value and hits.customDimensions.index, hits.customDimensions.value?
2) If a single hit has multiple custom dimensions/metrics how is that returned/queried? I only see single dimensions matching at the hit level in the sample data.
3) There are no custom metric values passed in the example data, what will those values look like?
Here is the query that motivated the previous 3 questions:
SELECT hits.page.pagePath AS urls,
hits.time,
customDimensions.index,
customDimensions.value,
hits.customMetrics.index,
hits.customMetrics.value,
trafficSource.medium,
hits.customVariables.index,
hits.customVariables.customVarName,
hits.customVariables.customVarValue
FROM [google.com:analytics-bigquery:LondonCycleHelmet.ga_sessions_20130910]
Every record in that table represents one Google Analytics Session. Big Query has this concept of nested fields and that's how individual hits are defined. They are nested into the hits record.
Answering your questions:
1) customDimensions.index and customDimensions.value are the index and value for user or session scoped custom dimensions. hits.customDimensions.index and hits.customDimensions.value re custom Dimensions set at hit scope level. The scope is defined when you create the custom Dimension through GA interface. indexes are integers from 1 to 20 (as defined in the Admin section) and value is the string passed as the value for that custom Dimension. More info about Custom Dimensions/Metrics
2) Both rows and rows.customDimensions are REPEATED RECORDS in Big Query. So in essence every row in that BQ table looks like this:
|- date
|- (....)
+- hits
|- time
+- customDimensions
|- index
|- value
But when you query the data this should be FLATTEN by default. Because it's flatten if a single hit has multiple custom dimensions and metrics it should show multiple rows, one for each.
3) Should be the same as customDimensions but the values are INTEGER instead of STRINGS.
For a simpler and more educational dataset I suggest that you create a brand new BQ table and load the data provided on this developer document page.
PS: Tell my good friends at Cardinal Path that Eduardo said Hello!

How to use Facebook Graph api

I am using facebook graph Api for my application where i want the data of this page.
http://www.facebook.com/pages/
In this page there is option TV SHOW I want collect all information of that page.
But i didn't any graph api method for this page.
Please help me for this problem.
As far as I can tell, this isn't something you can do. It has to do with what Facebook sets as "indexable" columns in their tables. For example, the page table has a type ID and the TV SHOWS category ID appears to be 89, so you'd think you could run a FQL query such as:
https://api.facebook.com/method/fql.query?query=SELECT page_id, name FROM page WHERE type=89
or perhaps:
https://api.facebook.com/method/fql.query?query=SELECT page_id, name FROM page WHERE type='TV SHOW'
But you'll get this notice:
Your statement is not indexable. The
WHERE clause must contain an indexable
column.
Unfortunately, the only two indexable columns for WHERE statements using the page table are page_id and name. So you can only query this table for one page at a time. Which makes sense when you consider how expensive a search like that would be on billions of records.
You can do a generic graph search for "TV SHOWS" but it won't give the the results on the page index as you requested:
https://graph.facebook.com/search?q=TV%20SHOWS&type=page
The Graph API is more about introspection/connections between objects than an open search protocol.

Resources