I am logging custom metrics using TrackMetric:
var telemetry = new TelemetryClient();
telemetry.TrackMetric($"Cache Size", cache.Count());
But nothing appears in the portal:
The output window when debugging shows the metrics being sent. I'm not sure how else to debug this.
There can be several things that make new items show up later than you'd like:
latency in AI pipeline itself, which is usually just a couple minutes or less (you can always check http://aka.ms/aistatus to see if there's any non-normal latency going on)
if you added a new custom property or new custom metric, it might take time for that new field to show up as a field in the metadata that the charts/etc use to build themselves. depending on timing here, especially if this is a brand new app, it can take up to ~15 minutes for a new property to show up in metadata if the stars are all unaligned... but normally much less than that.
once it is available in metadata, you might need to refresh in the portal if you've already opened Metrics Explorer for that AI resource for it to re-request metadata to see your field (normally just the "refresh" command on Metrics Explorer or an Overview blade is good enough to get that working, but doing a full refresh in the browser works as a last resort)
Related
I have a fully functional and working code (written in C#) which purpose is to track some hits to the specified GA property. This code has been tested and still works successfully. It adds some predefined dimensions (like App Version) to each hit and a several custom metrics to a certain hit types (like event with a certain Event Action).
So far so good everything works flawlessly when taking into account the first property to which these hits are being sent. Also everything is fine when I set up a brand new GA property and track my hits to it - that is, I'm able to see events in Realtime reports, and events show up in custom reports after a while so that I can see my custom metrics.
The issue is that when I try to send absolutely the same hits to the existing property which had been created and configured ages ago - there is no both dimensions (even predefined) and custom metrics in my custom reports. I see these events in realtime and behavior reports, and I'm even able to create a custom report against events count - but that's it. I'm able to use for example Day of the month as a primary dimension, but when I try to use App Version as a dimension or my custom metrics as report metrics - it says "There is no data for this view.".
I've already tried everything I could, have read almost every post about custom definitions in Google and viewed almost each related SO question and answer - still with no luck.
We use measurement protocol
There is a correct User Agent being sent with each hit
17 days has passed since my first attempt to track these hits with existing property
There is no filters and segments at all
There is only one view
For me it looks like a property misconfiguration, but I've inspected each configuration page (I have all possible rights granted) and have not found anything related.
Will appreciate any help with this issue.
UPD: The hit itself (with the sensitive data replaced):
t=event&ec=session&ea=connection_end&el=b225d53a-6bb2-8021-f7b5-ae7004ae0a00&cm1=174960&cm2=1751494&cm3=479033&tid=UA-XXXXXXX-X&cid=4119e77f-be87-4530-04d3-33882f8eea77&v=1&av=XX.XX.99.555&an=my-awesome-app&aid=app.awesome.my
UPD: Here is what I'm trying to achieve (screenshot was made at the test property, where everything works like a charm):
I've setup a Zapier automation to fire an event every time a new deal is made on a 3rd party CRM. The automation triggers fine, and retrieves the GA Client ID stored in the CRM. The goal of this automation is to add the value of the deal to the client's session history. This works completely fine on a new test GA View I made as well as the original one (the one left without any filters).
However, there's one GA View which has both, anti-bot/spider setting and 3 filters set up. I tried disabling all four of them, yet the event still wasn't being fired - not in real-time, nor User Explorer. Wondering what could be the cause of this. All views are, of course, of the same property. Are there any other filters (besides the anti-bot/spider setting and view filters) or options I may have missed that are view-specific that would cause events sent by Zapier not to fire on just this one view?
Any help is appreciated!
The update of the settings, in the specific case relating to the filters, may not be immediate. If you leave the filters disabled, you can certainly check if after midnight (or after a few hours after midnight) you see that data in the reports.
This happens because after midnight the data is reprocessed again, so for that day (which has therefore become the previous one), if you have removed the filters, you should find all the data.
So we've integrated Firebase Analytics and Crashlytics with our mobile app (both Android and iOS) and it works. Well it sort of works. So we don't have any problems with crashlytics but we have an issue with how our custom events are being reported.
If you see the picture above, we have a huge amount of (not set) being recorded. We aren't sending anything custom that isn't being recorded (meaning the big blue box there is all we chose to record) yet we still get (not set) being reported. Is there a way to know what this is or how to remove it? I thought at first it would be firebase_event_origin or something similar to that but it isn't as the numbers still keep increasing after we added the said property in parameter reporting.
This is what my parameter reporting looks like for the first image:
For sending data to firebase analytics we just did what was outlined in the docs like:
Bundle params = new Bundle();
params.putString("image_name", name);
params.putString("full_text", text);
mFirebaseAnalytics.logEvent("share_image", params);
I know this questions is opened 2,5 years ago, but still if someone else needs info about this issue...
According to other people experiencing the same issue, including myself. It's most likely the value for a custom dimension you set, is not in use anymore (a previously event parameter). Although, there are multiple reasons this could happen.
Take a look at this case, likely the cause is listed somewhere here.
I'm new to Appmaker & for the most part, advanced web development. In 2016 I created a very rudimentary AMP stack page to be used in my employers office to take leads by phone and email, then afterward the estimators log in and claim them (place their name in a field) to remove them from available leads. I used Adobe CS5 Dreamweaver, which I'm sure you all know, no longer receives support for their PHP backend since PHP has had so much change. By the way, I know very little about PHP or Mysql, that's why I used Dreamweaver and I now move toward Appmaker. I also have no scripting background which is where I'm stuck at now, I think.
It took me awhile but I figured out how to setup Appmaker (We have no sysadmin, so I dug around until I got it working). I now know the basics of Appmaker, I even paid to take the Appmaker University Bootcamp course which did open my eyes to the correct way to build pages. Onto my issue...
Lead comes in and shows in main list, estimator views details and clicks one of two checkboxes. 1.) Pass (Not interested, do not list anymore in my view)
2.) Claim (Move into claimed status, now owns this lead).
I have not started using database relations and I am unsure if this should be an instance where I should use them, but for now I just have Claim and Pass as Boolean table entries. I also have for each of these, accompanying table fields of Claim Date, Claim Estimator & Pass Date, Pass Estimator (Multiple Estimators can pass but only one can Claim).
I cannot figure out how to have the backend enter the date and user email upon clicking the Pass or Claim checkboxes.. I have tried adding stuff to onCLick and onValidate and nothing seems to work. Im confident I am looking in the wrong direction, please help.
One way to solve this would be to use an onBeforeSave event at the model level.
if(record.Claim){
record.ClaimEstimator = app.a.a.a[38].authority.getUsername();
record.ClaimDate = new Date();
}else if(record.Pass){
record.PassEstimator = app.a.a.a[38].authority.getUsername();
record.PassDate = new Date();
}
I know this has been discussed a lot on SO, but even based on the previous questions and answers I still can't quite understand the details of how event logging is really supposed to work in Firebase.
Let's say somewhere in my code I have this:
FirebaseAnalytics mFirebaseAnalytics = FirebaseAnalytics.getInstance(this);
Bundle bundle = new Bundle();
bundle.putInt("card_id", 912);
mFirebaseAnalytics.logEvent("card_open", bundle);
Do I understand correctly that the "card open" even should now appear in Firebase Console with the "card_id" parameter?
Then I click More > Edit parameter reporting, enter the name of the parameter I added in my code, and it should appear on the list.
I have read the docs several times, but I still can't get it. Can I not even use any of the events and parameters provided by FirebaseAnalytics.Param and FirebaseAnalytics.Event and just send custom events/parameters (within the known limits, of course).
Another question is whether the limit on the number of global parameters force you to use Big Query?
Thank you!
You're correct. You should see the card_open event with card_id parameter in the analytics console.
Note that there's a delay in the analytics reporting, about 4 to 6 hours after it was logged and uploaded by the device.
Just to ensure that your implementation is correct. I mean, to verify that the events, parameters and user properties are logged in the right time and the right place correctly, use the DebugView console.
I also believe that you should be able see the card_id parameter in the custom reporting for card_open event, considering the delay in the reporting.
For your last question, the parameter limit is on a project level perspective now, compared before that it was per app. Parameters with the same name across different apps will be counted as 1. Not sure, maybe Firebase would like us (developers) to use the parameters accordingly.