Crash Reports
Since v0.9.0.0, the SmartScope app detects when a crash is about to occur, and saves all details it has about the upcoming crash into a file on disk.
Please send in your CrashReports to bughunt@lab-nation.com
Before making a public release of a new software version, our app goes through a cycle of validation tests. We don't make public releases which contains known bugs. However, since we're targeting a very wide range of platforms, it is clear we cannot test on every device available. Therefore, IF you experience a crash, the information in the resulting CrashReport is very valuable to us. Please be so kind to send it to bughunt@lab-nation.com, so it enters our bugtracker which allows us to provide a fix as soon as possible in the beta channel.
(we do not want to transmit these crashreports automatically from your PC to our servers)
Location of the CrashReports
Here is the location where you can find the generated CrashReports:
Platform | CrashReport path |
---|---|
Mac | /Users/<username>/LabNation |
Linux | ~/LabNation |
Windows | <My Documents>/LabNation |
Android | <sd-card>/LabNation |
Contents of each CrashReport
Each CrashReport gives an accurate pointer to the location in our code where the crash originated from (the stacktrace).
Additionally, it gives us some information which helps us to reproduce the bug, like the version of the SmartScope software, and the operating system you're currently using.
Below you can see such a sample CrashReport:
<source lang="xml">
CRASH REPORT ------------------------------
Timestamp: 16/06/2016 21:44:26 SmartScopeApp version: 0.0.6011.37327 OS: Windows Microsoft Windows NT 6.2.9200.0 Error message: Destination array is not long enough to copy all the items in the collection. Check array index and length. Source: System.Core TargetSite: CopyTo StackTrace: at System.Collections.Generic.HashSet`1.CopyTo(T[] array, Int32 arrayIndex, Int32 count)
at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection) at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source) at LabNation.DeviceInterface.DataSources.ChannelDataSource.get_List() in c:\LabNation\SmartScopeApp\DeviceInterface\DataSources\DataPackageScope.cs:line 17 at ESuite.ScopeDataCollection..ctor(DataPackageScope scopeData) in c:\LabNation\SmartScopeApp\ESuite\ScopeDataCollection.cs:line 38 at ESuite.EMainEngine.UpdateNewestDataPointer(DataPackageScope scopeData, DataSource dataSource) in c:\LabNation\SmartScopeApp\ESuite\EMainEngine.cs:line 70 at LabNation.DeviceInterface.DataSources.NewDataAvailableHandler.Invoke(DataPackageScope dataPackage, DataSource dataSource) at LabNation.DeviceInterface.DataSources.DataSource.fireDataAvailableEvents() in c:\LabNation\SmartScopeApp\DeviceInterface\DataSources\DataSourceScope.cs:line 31 at LabNation.DeviceInterface.DataSources.DataSource.DataFetchThreadStart() in c:\LabNation\SmartScopeApp\DeviceInterface\DataSources\DataSourceScope.cs:line 114 at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.ThreadHelper.ThreadStart()
</source>