I have setup the application insights for my app, I can see all the data when I am running my app from the PC, when I am debugging the app running on device, I still see the data in the VS output window and can see "Data from Debug session telemetry" option in Visual studio, but the data from the device is not showing up at app insight portal. Any idea, what might be wrong?
Things to check:
does your UWP app allow outbound network calls? depending on the template/version you started with, the UWP app might not be allowed to send outbound data at all, preventing data from being sent to appinsights.
is it going out at all? use fiddler or something similar (including the extra work to enable it to see traffic from UWP apps, and allow it to decode https) look for outbound calls to dc.services.visualstudio.com
if it is going out, is it being accepted/succeeding? or are the calls failing?
if it is going out, is it using the ikey you expect? so that the data is actually going to the same app you're looking at on the portal
As others have commented, if you want a newer SDK, the hockeyapp.uwp nuget package also allows you to send data to application insights.
Related
I am building a tool in which I am using windows device portal wrapper in order to connect and access hololen's device portal.
I would like to be able to get/set kiosk mode from my tool so I dont need to go to device portal and do it manually.
Windows device portal wrapper doesnt give any functionality to access kiosk mode though.
Does anyone know the web api path for this?
Thanks in advance
So since it looks like you're building a tool for converting HoloLens into Kiosks, you need to do this at scale. If you are looking to create a different method of converting your HoloLens into Kiosks, I think you should go provisiong packages.
Provisioning packages will let you make a package you can keep applying to multiple HoloLens. Also some companies don't like enabling developer mode, and this is a method that doesn't have a security risk. Also device portal only allows a single app Kiosk, where as you could create a Multi app Kiosk if you wanted using other methods.
https://learn.microsoft.com/en-us/hololens/hololens-kiosk#set-up-kiosk-mode-using-a-provisioning-package-windows-10-version-1803
Do this help things? I know it's not actually what you were looking for, but hopefully it helps. It it doesn't let me know, I might have a different potential solution.
Kiosk Mode can be set via Device Portal’s REST API by doing a POST to /api/holographic/kioskmode/settings with one required query string parameter (“kioskModeEnabled” with a value of “true” or “false”) and one optional parameter (“startupApp” with a value of a package name). Please keep in mind that Device Portal is intended for developers only and should not be enabled on non-developer devices. The REST API is subject to change in future updates/releases.
I'd like to use Google Analytics to track usage of a command line Node app. Tracking will be strictly opt-in. I'd like to track basic usage, plus which operating system and version of Node was used.
I've found the Measurement Protocol, but I'm wondering whats the best way to set up Google Analytics.
You can choose from Web or App - App seems the best fit, but then I'm sent to Firebase to set up an iOS, Android or Web app. None of these are correct. So is 'Web' the best way to track my app usage? Or is Google Analytics not the right approach?
Seems like the best approach is Google Measurement Protocol. There's a Node library for it.
Really Google Analytics is completely designed around web apps and more recently mobile apps, it has concepts like "page views" which don't make sense for CLIs, and Firebase Analytics is only for Android and iOS.
You might be able to shoehorn he CLI use case for some purposes. Alternatively, you could consider using a cloud database like Firebase real-time DB to capture your own events.
Google analytics really isnt designed for something like this. You have only two options web app where everything is page based. http://example.com/hello.php vs using a mobile app where everything is screen based. Home, about, help.
I have done this before with several console applications, a custom SSIS task (dll) and an arduino project. I chose mobile application mainly because i thought it was closer. I know of someone who did the same with an actions on google project.
In the end what you use will be up to you. Just consider what it is you want to track exactly and lay it out before you start.
If you choose mobile make sure you send Screen views and not page views. The Google analytics website is split you cant mix and match the hit type.
Workaround for createing moble account without firebase.
create a new web property on Google analytics type Web
create a new view under that web property type mobile.
We made Console Cat for this exact purpose! It's built from the ground up to track telemetry / analytics for CLIs including things like flags, command duration, version, etc.
I am an WPF developer with little knowledge for the way "mobile" apps work but in general I believe that they work in some sort of sandbox way (meaning they should not be able to access each others process, info etc., I might be totally incorrect on this one). So I am wondering if such "limitations" are applied to the Universal Windows Platform (UWP) apps?
The reasoning for my question is that I would like to write and app that checks if another Universal App is in process and use some of its information. In WPF there are ways of doing just that but in UWP apps I am not sure if it is/should/will be possible.
Thanks.
There are a couple of solutions in Windows 10. Firstly, if you are building an enterprise app and can also side-load normal Desktop apps, you can use this technique to build your UI as a UWP but also be able to break out of the sandbox and do other things on the desktop.
Secondly, if the app you want to read from is cooperative (ie, is designed to provide information; you're not just grabbing it without permission) then you can use App to App services to send and receive information between two consenting applications.
Both links are to //build videos but you can download the slides too that should contain code samples.
I have a problem with Application Insights that is really similar to this.
Application Insights - Getting only client side data, no server data.
For me however it works fine when i just hit F5 and run the application, i get performance metrics for both client and server side.
However when i deploy the application i dont not get any server side data as far as i can tell. The site runs as a Azure Web App (Web Site). I do get client side data thou.
Anyone have any tips?
Ok, i'm officially an idiot.
I had a Web.Config transformation that was supposed to only replace an attribute in the part of Webconfig but it replaced the entire section. And yeah, now it works hehe. Sorry.
Feel free to remove this post since it was clearly just my code / debugging skill that was lacking.
So assuming you've already launched media on the receiver from an iOS/Android/Web app, how can another web app join this activity and control the media? I noticed that the cast API has a 'JOIN_ACTIVITY' in it, but there's nothing that currently uses it. Nor do you know the activity's ID to join it..
This is similar to How to check if a ChromeCast Session is already in progress however, this answer does not help to connect to an existing application
However, using the javascript API, even if you know your app is running I can't find a way to connect to it without re-launching
I managed to get some answers from the Google engineering team:
We allow clients to reconnect to the same session if they are launched
from the same origin (i.e. http://www.somedomain.com:80/). We don't
have the support in the V1 protocol stack to implement this across
multiple browsers. We can hard code something for V1 like mapping
origins to app ids, but it will still be some eng effort to add the
API support as well.
In short, the functionality from Android and iOS is currently missing from the Chrome SDK... hope it comes out soon.
EDIT: To update this, now that the official public SDK has been released, this is now supported!