What is Application Insight in Visual Studio - visual-studio-2017

I can see number in thousand as Application Insights in Visual Studio 2017. I read about the Application Insights but does not exactly understood what is use of it.
As shown in below screenshot, its showing 25K in Application Insights and continuously increasing. Messaging_TestApp is SQL Database name used for NService bus.
Can anyone explain what is Application Insights and why number increasing ?

First, let me answer the basic "What is App Insights?":
Application insights is essentially an activity monitoring tool from Microsoft for any type of application.
From Microsoft's documentation on What is Application Insights?
Application Insights is an extensible Application Performance Management (APM) service for web developers on multiple platforms. Use it to monitor your live web application. It will automatically detect performance anomalies. It includes powerful analytics tools to help you diagnose issues and to understand what users actually do with your app. It's designed to help you continuously improve performance and usability. It works for apps on a wide variety of platforms including .NET, Node.js and J2EE, hosted on-premises or in the cloud. It integrates with your DevOps process, and has connection points to a variety of development tools. It can monitor and analyze telemetry from mobile apps by integrating with Visual Studio App Center.
Now, the more specific parts of your question:
What you are seeing in Visual Studio?
Application insights is normally run on a server sitting somewhere or purchased as a service from Azure, but it was recently also built into Visual Studio for monitoring apps running out of the IDE. The VS IDE is essentially running a sort of minified version of Application Insights that has then hooked into the SQL Database project you are currently debugging.
What is the Banner number?
From my own testing this number appears to be the total number of telemetry logs Application Insights has recorded since I started the application. Perhaps most of them are being filtered out by your 30m time range.

Related

Performance logging

I have an MFC application and the application interact with the database(SQL) heavily.
We also have the functionality of exporting SSRS reports.
I am working on improving the logs, what information can I put to see if the windows server/ database server/ report server was functioning at their desired performance level.
We often get the complaint from the client regarding the slow application but having so many entities involved I find it hard to pinpoint the problem area

What is the difference between 'SAS' and 'Salesforce'

I would be starting ft in one company, where i was been told that the application is developed using 'Sas' and 'salesforce'. What is the difference between two?
And which are recommended online resource which I can use to learn more about it.
SAS is software for statistical analysis. If your company/job description doesn't look like working with large sets of data & complex reporting that's probably not it.
They probably mean SaaS (Software as a Service) model, also known as "the cloud", cloud computing etc. You write the program (or use / modify existing one) but you don't buy servers, worry about network connection, electricity costs, load balancing (spikes in traffic will not cause your website to go down). Many apps operate in this model. Microsoft's Azure cloud (or even online wersions of MS Office). There's Siebel Oracle on Demand CRM, Microsoft Dynamics, SAP I think also has SaaS offering...
It's a big topic, I'm simplifying a lot here. And then there are Platform as a Service things too (PaaS) where they give you "just" the hosting etc but no base application to build on top of. You write everything you need from scratch and upload it. Think Heroku or Amazon Web Services (AWS).
Salesforce is "just" one more SaaS application. You start with base application & database, similar to all other clients in the world. You can install plugins to it (some free, some paid), configure it yourself, write custom code if your functionality is too complex... You can do a lot with just clicks & drag & drop but if you need to code stuff then JavaScript (for client-side) and Apex (for server-side) will be your friend. Apex is bit similar to Java.
Where to start... Trailhead is good source of self-paced trainings. You can sign up for a free Salesforce Developer Edition (has almost all features as the paid one but limited storage space), try to pass some courses... Or in SF help&training there should be tons of videos (actually in that link whole left menu "getting started with salesforce" might be good).

Is there an easy way to supply data to Application Insights from normal win32 C++ code?

I'd like to know if there's something like a dll or lib (with headers, and possibly documentation) that can be linked into a normal* win32 C++ solution so it can (by function call) notify Application Insights of page views and send metric values.
This seems like it should exist and be simple to find, but I'm just going round in circles on Google, finding documentation for reading values back out via a web API, or using C#, or projects that other people tried in the past but now have no source available.
This is for updating a diagnostic tool which I'm trying to avoid having to completely re-architect because the logging now needs to go to a slightly different service.
*ie. not Winforms, C++/CX, Xamarin or UWP. Straight, command-line c++.
Currently there is no Application Insights client library for native applications (c/c++). Though it's in backlog I don't think it will be prioritized higher than java/node.js. So, I would not rely on its release anytime soon.
Customers who wanted to send telemetry from native applications usually picked one of the following options:
Using REST API directly. If application is going to use only couple of telemetry documents then it should be straightforward. With the most complexity coming from own requirements such as persistent channel.
Host CLR + use .NET Application Insights SDK
Have .NET service running on a box and implement communication channel between native app and this service.
Depending on environment (for instance, #2 makes sense if app already hosts .NET; #3 makes sense if there is already installed .NET service in addition to native app) you can check whether on of these options will work for you.

AVIcode versus AppFabric

I just learned today about the System Center AVIcode product, which is a .net application monitoring tool. I don't know much about it and I was wondering how it would compare to AppFabric. The latter also has monitoring features as well as other useful features. How much do these two product overlap and for which scenario is each one better suited?
Thanks for any insights!
AVIcode (now simply called "APM" feature in System Center 2012 - Operations Manager) and AppDynamics are monitoring products playing in the same space/market.
They both provide visibility into code-level performance issues with your application. If you are interested in AVIcode technology you can watch my talk at TechEd 2012 to see APM in Operations Manager in action http://channel9.msdn.com/Events/TechEd/NorthAmerica/2012/MGT302
AppFabric provides hosting and activation services, so it is orthogonal to the above - while it provides some "infrastructure" monitoring capability (i.e. the host running your code being up or down) it doesn't go to the code level showing "what was slow" or "what threw exceptions" in your code.
App Sight is applicable only to .NET framework 4.0 in terms on monitoring WCF transactions and Workflows. It's integrated into IIS Mgr thru extensions.
AVICode monitors a more broader range of .NET frameworks and protocols and is available as standalone or through integration with SCOM.
So the overlap would be the visibility they both provide for apps that leverage WCF and Workflows.
If you're interested in .NET application monitoring you might want to checkout http://www.appdynamics.com/. We're currently in the middle of our .NET beta program and have had a great response so far from users. I can sign you up for a no hassle free trial if you want to have a play and see what visibility we can provide . Drop me a line at appman#appdynamics.com if your keen.

Any tools to monitor IIS and application performance

I have a web-service application that exposes lot of web-methods ( internally calling internal APIs or external web-services). I would like to have a tool to monitor this whole application running under IIS. To be clear I just don't want to inspect the requests that are failing, I also would like to see things like how long different calls are taking . I guess it has to be something like SQL Profiler tool
where you can look at all types of queries ( those that run successfully and those that fail too) and then apply all sorts of filter in focusing on the areas that interests you more.
Is there anything built in IIS that could be used for this purpose?
What you are looking for is a runtime profiler for the CLR. The answer is ETW tracing. The tool that can help is PerfMonitor.
IIS 7 has failed request tracing which can help in diagnosing the cause for the
failure.
Also IIS logs have lot of information on request, response,duration and few more
which can be helpful in getting metrics. I usually use Log Parser for getting
metrics from IIS logs
And if you are in IIS7+ then you could use built-in ETW tracing for webservices.
Here is the ETW provider for webservice
e04fe2e0-c6cf-4273-b59d-5c97c9c374a4: Microsoft-Windows-WebServices Microsoft-Windows-WebServices
For any application running under ASP.NET, you can use perfmon to look at different performance numbers.
If you're using ASP.NET 4, there are even better tools available to you
Also if your web services are WCF based, it gets even better Not only do you have very rich tracing, there's also a gui that displays the logs very nicely.
You can try get official IIS Extensions with the Microsoft Web Platform Installer called Web Performance Monitor
Microsoft sells System Center Operation Manager, which has been used by many big firms. But that's too expensive if you cannot afford it.
Web Performance Monitor of course worth a try, and Perfmon is already an option.