Hi,
I am using a number of gauges in a dashboard set up (asp.net 2.0, IGv8.1) and occasionally a gauge will not show up when the page loads. If I refresh the page the gauge then shows. My deployment scenario is as follows:
UltraGauge1.DeploymentScenario.ImageType = GaugeImageType.Png; UltraGauge1.DeploymentScenario.DeleteOldImages = true; UltraGauge1.DeploymentScenario.Mode = ImageDeploymentMode.FileSystem; UltraGauge1.DeploymentScenario.ImageURL = "~/images/SalesForce/Gauges/TargetKpi/Gauge_#CLIENT_#SESSION.#EXT"; UltraGauge1.DeploymentScenario.FilePath = "~/images/SalesForce/Gauges/TargetKpi";
The image url on the initial page load is:
http://localhost:4004/BlueCow/images/SalesForce/Gauges/TargetPax/Gauge_ctl00_cphMaster_tpgNational_UltraGauge1_nfctuj45qfghidy0xik0ds55.png?t=128709199775304415
And then when I refresh the page it is:
http://localhost:4004/BlueCow/images/SalesForce/Gauges/TargetPax/Gauge_ctl00_cphMaster_tpgNational_UltraGauge1_nfctuj45qfghidy0xik0ds55.png?t=128709201323972827
You can see how the timestamp (I'm guessing that's what "t" is) has changed slightly. This behaviour happens both locally, and when my site is deployed on a server. I'd say about 95% of the time the gauge image appears correctly, and the other 5% I need to refresh the page. I don't think an image has ever failed to load for me on refreshing.
Any help on this would be greatly appreciated.
Cheers,
James.
first of all, to the OP, i'm sorry that your message was somehow overlooked, and I hope you got an answer to your question back in 2008.
now, as to why the images are not getting generated - do you see anything in the Event Log on your web server? do you notice that the ASP.NET worker process gets restarted at the same time that this happens? Does it still happen if you set DeploymentScenario.DeleteOldImages = False? And are you using single web servers, or a web farm?
There isn't a single known cause for this problem, but the above questions could provide us with some clues to diagnose what is happening.
We are NOT currently setting DeleteOldImages to False or True. Does it have a default? Perhaps it is set to True by default?
I notice this DeleteOldImages is only on the Gauge and not the Chart. We never seem to have this image probelm on the Charts.
We index our file names with 0 to 999 and then rollover. We never delete any files. We are just overwritting the files.
We are running on a single web server. I do not see any errors in the Windows Event logs. I am also not sure if the ASP.NET worker process is restarting or not. What would cause this to restart and how can I tell?
Thanks for your help.
DeleteOldImages is set to True by default. Based on your other answers, I suspect that setting it to False will resolve the problem.
As for the ASP.NET worker process, it sometimes restarts itself if the memory usage gets too high, or crashes unexpectedly. In XP, this happens under the aspnet_wp.exe process. In Windows Server, Vista, and Win7, this happens under the W3WP.exe process. you can monitor the number of ASP.NET application restarts using the system performance monitor (Start > Run > perfmon).
Worker process can also shutdown after an amount of idle time has passed. All of these values are configurable in the IIS settings. In general, don't count on the process remaining alive between requests.
We have this same issue with UltraWebGauge.v10.3 with ASP.NET 4.0. We have a aspx page with many usercontrols. Each contains either a chart, grid, gauge, chart with a grid, or gauge with a grid. We allow for several different types of charts or gauges per usercontrol. The gauges are built with presets. On this aspx page each usercontrol is wrapped with an asp.net updatepanel.
We use the default DeploymentScenario for filesystem. We only supply a path, type, and URL.
We use viewstate on the page and usercontrols.
One thing to mention is that the image for the gauge that follows the failed gauge is showing in the failed ones place along with where it should.
The charts seem to display consistantly.
As this can happen on back to back postbacks within seconds apart on my local development machine, I would not suspect the cycling of ASP.NET.
While stepping through with a debugger, no exceptions were thrown.
NOTE: We had also attempted without the updatepanel wrapping of each usercontrol with a gauge, but with the same results
jschuebel said:We have this same issue with UltraWebGauge.v10.3 with ASP.NET 4.0
are you using the latest service release? a fix was applied in February which might be related to this problem.
It sounds like there's an issue with timing, where the file has been written to the server's file system, but the client request fails to download the image.
What if you set the RefreshInterval property of the gauge? Would that remedy the problem?
Yes its occuring after removing the session, and i just also saw the case where the gauge image was not created(this is rare case).
How this can happen, is something i need to change in code?
does this still happen when you remove the session ID from the FileName under the DeploymentScenario properties?
this seems like it's a timing issue, and that might be related to ASP.NET having to create the Session for the first time, so maybe that would help. or, perhaps initializing the session in global.asax, something like this:
void Session_Start(object sender, EventArgs e)
{
Session["nothing"] = new object();
}
And What about below issue
I am getting missing images, these are copied into the filesystem when browse form direct URL then these images displays,
Below is the grid where dymanically createg gauge control displays
Yes, you could safely remove the Session ID from the filename.