Crash, Issue, Feedback reports

<< Click to Display Table of Contents >>

Navigation:  Miscellaneous >

Crash, Issue, Feedback reports

With this version we are introducing the possibility to send crash reports and give us general feedback or report an issue directly through the OPUS Projektor.

 

We want to ask you to send us reports, especially Crash Reports, but also your feedback, issues or feature requests.

We can guarantee you that your report will be looked at, carefully reviewed and treated seriously.

We are not a huge faceless company that doesn't care about its products' users, we want to know your problems and thoughts with our software, because we want to improve it.

 

Please note that only licensed Projektors can send reports.

 

The following types of reports can be sent:

Crash reports (those are opened automatically when an exception occurs)

Feedback (for general feedback about our program, positive or negative)

Feature request (for ideas about new features)

Issue/Bug (for problems that don't have to do with an exception directly

 

Crash report

If a crash, or more correctly, an exception occurs, a dialog is opened automatically.

 

clip0101

 

Good news first: if you want to send us that report, but you don't want to bother with all the things we ask, just click Send, the crash report will be accepted anonymously.

 

But it will be more helpful if you will out the fields in the report dialog.

 
Name - can be your personal name and/or company name (optional for crash reports). The name will be stored for future reports. You can delete the stored data in the Options dialog.

Email - if we have questions regarding your report, it would be good if we could reach out to you (optional for crash reports). The email address  will be stored for future reports. You can delete the stored data in the Options dialog.

Subject - is automatically filled with the exception name

Description - Anything you can tell us about what lead to the exception will be helpful (optional for crash reports)

 

You can attach files to the report.

 

Attach current project as zip-file to the report - You can choose to attach the current project to the report. Regardless of existing NDAs with your company we can assure you that we will use your project only to try to replicate the issue. We will never give customer projects to any third party. (optional)

 

Attach interaction-work flow - You can choose to attach the interaction-work flow that lead to the crash. You can click "interaction-work flow" to see this work flow before sending it to us. This is a snapshot of the last mouse / keyboard actions you did before the exception. This can help us pinpoint what exactly happens.

A work flow looks e.g. like this:

 

Mouse: Button 1, count 1, point [X:68, Y:8], component NamelessComponentWithoutText

Mouse: Button 1, count 1, point [X:19, Y:15], component SaveProjectsDlg_discardButton

Mouse: Button 1, count 1, point [X:16, Y:9], component Help

Mouse: Button 1, count 1, point [X:466, Y:38], component NbMainWindow

Mouse: Button 1, count 1, point [X:14, Y:8], component Help

Mouse: Button 1, count 1, point [X:79, Y:3], component cmbConcern

Mouse: Button 1, count 1, point [X:130, Y:12], component Tab Displayer

Mouse: Button 1, count 1, point [X:480, Y:7], component Tab Displayer

Mouse: Button 1, count 1, point [X:478, Y:10], component Tab Displayer

Mouse: Button 1, count 1, point [X:117, Y:332], component NamelessComponentWithoutText

Mouse: Button 1, count 2, point [X:117, Y:332], component NamelessComponentWithoutText

Mouse: Button 1, count 1, point [X:254, Y:252], component NamelessComponentWithoutText

Mouse: Button 1, count 1, point [X:265, Y:219], component NamelessComponentWithoutText

Mouse: Button 1, count 1, point [X:133, Y:5], component Tab Displayer

Mouse: Button 1, count 1, point [X:83, Y:10], component cmbConcern

Mouse: Button 1, count 1, point [X:90, Y:13], component cmbConcern

Mouse: Button 1, count 1, point [X:148, Y:16], component cmbConcern

Mouse: Button 1, count 1, point [X:163, Y:485], component NamelessComponentWithoutText

Mouse: Button 1, count 1, point [X:452, Y:480], component NamelessComponentWithoutText

Mouse: Button 1, count 1, point [X:140, Y:10], component Tab Displayer

 

Attach system-information to help us understand the surroundings - You can choose to send us your system information. These will be all technical details of your hard- and software, as far as we can get this information. You can click the "system information" to see this information before sending it to us. The information looks e.g. like this:

 

OS info:

Name: Windows 10

Version: 10.0

Architecture amd64

Available processors (cores): 4

 

Memory info:

Free heap memory: 1.040.218

Allocated heap memory: 2.656.256

Max heap memory: 4.194.304

Total free heap memory: 2.578.266

Total physical memory: 8.006.560

 

Disk info:

File system root: C:\

Total space (bytes): 252974198784

Free space (bytes): 31004663808

Usable space (bytes): 31004663808

 

 

Attach the latest error-information - For the crash report this will be the most important option, which is why it cannot be de-selected. It is a stack trace of the internal exception. This will be the most valuable information to try to understand what just happened, and how we can prevent it from happening again. A stack trace looks e.g. like this:

 

Lastly occurred error [2020-02-20 13:02:03.1671769 (+01:00 Europe/Berlin)]:

 

java.util.ConcurrentModificationException

       at java.base/java.util.HashMap$HashIterator.nextNode(Unknown Source)

       at java.base/java.util.HashMap$KeyIterator.next(Unknown Source)

       at org.netbeans.api.visual.model.ObjectScene.setSelectedObjects(ObjectScene.java:217)

       at org.projektor.core.gui.sceneDesigner.PageTopComponent$3.resultChanged(PageTopComponent.java:328)

       at org.openide.util.lookup.SimpleProxyLookup.checkLookup(SimpleProxyLookup.java:89)

       at org.openide.util.lookup.SimpleProxyLookup.lookup(SimpleProxyLookup.java:134)

       at org.netbeans.modules.openide.windows.GlobalActionContextImpl.blickActionMapImpl(GlobalActionContextImpl.java:107)

       at org.netbeans.modules.openide.windows.GlobalActionContextImpl.blickActionMap(GlobalActionContextImpl.java:81)

       at org.netbeans.modules.openide.windows.GlobalActionContextImpl.propertyChange(GlobalActionContextImpl.java:180)

       at java.desktop/java.beans.PropertyChangeSupport.fire(Unknown Source)

       at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)

       at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)

       at java.desktop/java.awt.KeyboardFocusManager.firePropertyChange(Unknown Source)

       at java.desktop/java.awt.KeyboardFocusManager.setGlobalPermanentFocusOwner(Unknown Source)

       at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(Unknown Source)

       at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)

       at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)

       at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)

       at java.desktop/sun.awt.SunToolkit$1.run(Unknown Source)

       at java.desktop/java.awt.event.InvocationEvent.dispatch(Unknown Source)

       at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)

       at java.desktop/java.awt.EventQueue$4.run(Unknown Source)

       at java.desktop/java.awt.EventQueue$4.run(Unknown Source)

       at java.base/java.security.AccessController.doPrivileged(Native Method)

       at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)

       at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)

       at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:136)

       at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)

       at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)

       at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)

       at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)

       at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)

       at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)

 

Don't show this error again - You can choose to not send this error again. If there happens to be an exception that occurs rather often in your work flow, it will be annoying for you to have the dialog pop up all the time, and receiving the same report over and over again will not be increasingly helpful for us, either. For that case you can disable to show the error that just occurred, again. You can reset this setting in the Options dialog.

 

Don't show any errors - Please don't enable that. Normally it will not be helpful if you check that option. It will not be of direct harm to you, but if you don't send error reports, we have no chance of recognizing the underlying problem and no chance to repair it. You can reset this setting in the Options dialog.

 

Send - This will send the report, close the dialog, and, when the transmission is finished, show a feedback dialog with the ticket number your report has created.

 

clip0094

 

You can use this ID as a reference to contact us with more information, questions, etc.

 

Don't send - This will close the report dialog without sending the report. We hope that you will rarely choose that option. Once again, we are neither Microsoft nor Apple, we want to work with you on creating the best OPUS Projektor possible and your report will not end up unread in the trash bin.

 

Feedback / Feature Request

The feedback dialog can be opened through the menu Help -> Report an issue or give feedback.

 

clip0102

 

Choose Feedback in the Your concern drop down list  to send a general feedback report.

Choose Feature Request in the Your concern drop down list  to send a feature request report.

 

The dialog for feedback and feature request are both very similar to the crash report with the following differences:

 

Name, Email, Subject - These fields are necessary fields now because the probability that we will want to discuss your report with you are much higher. The name and email will be stored for future reports.

 

Report Issue / Bug

The Report Issue / Bug dialog can be opened through the menu Help -> Report an issue or give feedback.

 

2020-02-21_13h24_31

 

Choose Issue/Bug in the Your concern drop down list to send an issue / bug report.

 

The dialog for Issue/Bug is similar to the crash report, with the following differences:

 

Interaction work flow is not available.

Name, Email, Subject - These fields are necessary fields now because the probability that we will want to discuss your report with you are much higher.

 

FAQ

 

Why shouldn't I just click "Don't send" mindlessly if a report pops up? Why should I care?

If you use the OPUS Projektor regularly, you surely want the best experience possible when using it. We know that the program is not perfect (yet), but we want to make it as good as we can, and you can help make it a little better with your error reports and your feedback and ideas.

 

Will I get a feedback from you if I send reports?

Not always. Anonymous crash reports we can't give feedback, naturally. For any other report, it depends. If your statement is clear and no further communication is necessary, we will not disturb you. If it makes sense to contact you for more information, we will do so.

 

Will you do everything I suggest?

Probably not, except if you only have so very excellent ideas that we just need to implement them all. We will consider every suggestion though, and if we deem it a good idea for lots of customers, you may see your suggestion become reality in the next version.

 

What will you do with my data and my project?

We will not use your email address for anything other than contacting you in case it is necessary to solve the issue at hand. We will only use your project to replicate the problem that you have. Neither will ever go to a third party.

 

How is my report sent to you?

We use a JIRA server to process reports. Every report creates a ticket in JIRA, which will then be looked at and processed by us. The ticket number will be displayed in a dialog after you have sent the report.

 

The interaction work flow looks like you are recording all my activities - are you spying on me?

No. Yes, we are recording your mouse clicks, but only for the purpose of being able to understand what you did before an exception occured. Only the last 20 events before an exception will be sent with the report (and of course you can see the workflow that will be sent, and you can always opt to not attach them to the report).

 

My report wasn't sent - why?

We see the following possible reasons why a report couldn't be sent:

You don't have an Internet connection - nothing we can do about that, but when you reconnect you can send your reports again, see below.

Our server is down - nothing you can do about that. Hopefully it will be back up quite soon. If in doubt, contact opus-support@topcon.com to find out what happened

Computer says no - I hope you laughed now. This is a little easter egg, and by the way, thank you for reading our manual so deeply! Let's stay serious now and continue.

The report is too big - There may only be short of 30.000 characters in a report. If you wrote a LOT in the description, maybe shorten it a bit and send the rest via email, referencing the JIRA ticket ID. If it happens that the exception stack trace is too large, please send it via email instead.

 

My report wasn't sent because I don't have Internet connection. Is it lost now?

No, we buffer unsent reports until our JIRA server can be reached again. They will be sent the next time a report is successfully sent. We buffer up to 10 MB of report data (excluding attachments and project data).