I am having the same issues with powerBI ,seems the automatic refresh its failing ,i currently have to click refresh to see new data coming in ,i have configure the the tumblingwindow part e.g tumblingwindow(second,3),done the live to dashboard are the any other settings/factors i have to set for the automatic refresh to work.(its a console app that selects data from database and sends each row to event hubs from event hubs to stream analytics then output is powerBi ).i am assuming the is time restrictions depending on throughput but how do i really calculate the time for tumblingwindow i should set ,i have tried the equation entitycount*60*60/throughput = seconds still no success.
below is a code but still the events take time to reach powerBi even after tumblingwindow(second,3) ,i could stop my application running then delete the dataset from powerbi ,but then the dataset will reappear
EventData data = new EventData(Encoding.UTF8.GetBytes(serializedobjects));
eventHubClient.SendAsync(data);
Overall workflow you describe seems fine and tumbling window size should not cause the data to never show up. You will have to debug this issue, with following steps
Goto Azure portal, inputs page for the stream analytics job and get a "sample". Does it return you any samples?
Goto Monitoring page in azure portal and check if input events and output events are greater than zero. If you see input events but don't see output events, you are likely hitting an error writing to output.
Also check if operation logs has any errors for this job.
Above steps should tell you if something is wrong with event format or the output.
Are you pinning the individual live tile to the dashboard or the entire report? Pinning the entire report does not appear to work.
If you pin the single tile containing the data you want, does that refresh in real time?
Related
We are using Application Insights by Azure. At the moment I have to manually check the exceptions after each deployment to see if a new one appeared. Has anyone figured out a way to get notified (via Azure alert) once a new exception appears? For example, other error trackers like Sentry support this.
Example:
We did a deployment at 15:15
A previously unknown exception appears at 15:17
An email is sent to me with content "New exception X appeared in project Y"
Here is a screenshot demonstrating this a bit more clearly:
Smart detections are being replaced by alets. The only way to get notifications is to write a query that will see your new exceptions. Configure the period to let alerts activate.
Navigate to the Application insights resource on Azure Portal.
Select Logs under the Monitoring blade.
Construct your log query and check the results.
Click on + New alert rule.
Configure your alert as follows:
The above alert fires whenever the count of results in Custom log search log query for the last 1 day is greater than 0, and is evaluated every 6 hours. You can customize the Period and frequency as needed.
You can also run through this detailed guide for troubleshooting problems with Azure Monitor alerts. Please check if this helps.
You can try Smart Detection, specifically the alert for abnormal rise in exception volume.
When would I get this type of smart detection notification?
You get this type of notification if your app is showing an abnormal rise in the number of exceptions of a specific type, during a day. This number is compared to a baseline calculated over the previous seven days. Machine learning algorithms are used for detecting the rise in exception count, while taking into account a natural growth in your application usage.
If you never got a specificy exception before a release, I would consider that a rise in exceptions for that type and you should get an alert. Though the alert won't happen if there are very few exceptions occuring, and it won't be as detailed as you described in your question.
I tried to use the PowerShell sample https://learn.microsoft.com/en-us/azure/azure-monitor/platform/data-collector-api#powershell-sample without any changes.
It completes with status 200 (OK) and correctly creates a new table with LogType (MyRecordType) within the Custom Logs in the portal (Log Analytics Workspace->Logs).
However, the events that are submitted don't turn up there - there are always "No results from the last 24 hours". Also, within the new table, none of the custom properties are created.
Has anybody observed a similar problem? (Some people seem to be using the C# code successfully.) Thanks!
Crazy... on the next day, all the events had turned up in the Log Analytics workspace. Even new events that I generated turned up immediately.
It seems this was a glitch just on that day. Well, the API is in "preview"...
Trying to create custom event in Application Insights but it doesn't show up on Azure Portal. All other events like requests, dependencies, exception are visible.
I have tried in dotnet core and can see following in debug log, but still no event in portal, even custom event table is empty:
Application Insights Telemetry: {"name":"Microsoft.ApplicationInsights.Dev.<instrumentkey>.Event","time":"2019-12-05T19:16:34.1373921Z","iKey":"<instrument key>","tags":{"ai.application.ver":"1.0.0.0","ai.cloud.roleInstance":"<role>","ai.session.id":"<session>","ai.user.id":"<user>","ai.operation.id":"<operation>","ai.operation.parentId":"|<some ids>","ai.operation.name":"GET /auth/login","ai.location.ip":"::1","ai.internal.sdkVersion":"dotnetc:2.11.0-21474","ai.internal.nodeName":"<subscription>"},"data":{"baseType":"EventData","baseData":{"ver":2,"name":"SAML_Authentication_Initiated","properties":{"DeveloperMode":"true","AspNetCoreEnvironment":"Local"}}}}
Tried from javascript as well, can see following successful post request in browser console:
POST https://dc.services.visualstudio.com/v2/track
[{"time":"2019-12-05T19:00:21.781Z","iKey":"<instrumentkey>","name":"Microsoft.ApplicationInsights.<instrumentkey>.Event","tags":{"ai.user.id":"<user>","ai.session.id":"<session>","ai.device.id":"browser","ai.device.type":"Browser","ai.operation.name":"/public","ai.operation.id":"<operationid>","ai.internal.sdkVersion":"javascript:2.3.1"},"data":{"baseType":"EventData","baseData":{"ver":2,"name":"CustomEvent","properties":{},"measurements":{}}}}]
Response
{"itemsReceived":1,"itemsAccepted":1,"errors":[],"appId":"<application id>"}
Not sure how much time Azure needs to process custom event or should I create support ticket or something is wrong at my end.
Application insights usually takes 3-5 minutes before data begins appearing in the portal, see the Note section of this official doc.
If you worry about the data is missing, you can use Flush() method.
And if it always takes more than 5 minutes before data appearing in portal, you should consider opening a support ticket to get professional help.
I've created a simple query using Kusto language in Application Insights. This query has been pinned to Azure Dashboard.
I've noticed that there is no any automatic update applied for the table, moreover refresh button on the tile work only first time when you click on it.
Here is the query pinned to Azure Dashboard:
traces
| order by timestamp desc nulls last
| take 10
Based on information specified here I expected that table should be refreshed every 5 minutes. But seems that the table is never refreshed.
Is there are automatic refresh exist for AI queries on Azure Dashboard? Actually I didn't find any mentioning about automatic refresh apart provided above link.
Metrics refresh depends on time range with minimum of five minutes. Logs refresh at one minute.
Related documentation reference
Regarding the refresh button on the tile, thanks for sharing the feedback on that. We have reached out to concerned team to look further into it. Will keep you updated on it.
If you're up for it, you can create a Chrome Extension which hunts the Dashboard DOM and selectively clicks each refresh DIV. Here's the pertinent jquery code:
function doRefresh(){
$( "div.azc-toolbarButton-container" ).each(
function() {
if ($( this ).attr( "title" ).indexOf("Refresh") >= 0)
$( this ).trigger('click');
});
}
I was able to do this. Added a 1 minute setInterval() and it appears to work well.
Those are AnalyticsPart tiles,
they refresh automatically every hour.
Of course, you can initiate a refresh by clicking the refresh button.
Azure dashboard is planning to expose an automatic refresh pile that will enable the user to customize the refresh rate of the dashboard parts. One could then chose to customize the rate to 1 hour, 30 min, etc. AnalyticsPart may onboard to this new pile.
It's still in the designing stages of the azure team.
I have deployed a new Azure Functions based on the template - HttpTrigger-CSharp.
It works fine whenever i invoke it from the webUI or from Postman.
However, the live event stream is not working as expected. I don't see any statistics being populated in the live event stream - everything is zero.
Is there anything which need to be done / configuration / etc?
Thanks,
Aries
According to this, "there is a known issue that may cause your data to fail to be populated. If you experience this, you may need to close the browser tab containing the live event stream and then click live event stream again to allow it to properly populate your event stream data".
As for the question, no this works out of the box, if it doesn't try closing the browser, opening Azure Portal, then navigating to the Function blade, click Monitor, wait for it to fully load, and then click Live event stream.
Also, this may not work, if you've created your function recently, just try to wait 5 minutes and try again.