This is a read only copy without any forum functionality of the old Modcraft forum.
If there is anything that you would like to have removed, message me on Discord via Kaev#5208.
Big thanks to Alastor for making this copy!

Menu

Author Topic: [TOOL] Valkryst's Bug Report Manager  (Read 3382 times)

Valkryst

  • Moderators
  • Model Change Addict
  • *****
  • Posts: 224
    • View Profile
    • http://valkryst.com/blog/
[TOOL] Valkryst's Bug Report Manager
« on: July 11, 2015, 10:32:07 pm »
Hey,

After a few days spent working on this hopefully useful program, I've got it to the point where I'm ready to release it as a working beta. All of the features that I've planned to add to the program are currently working, as far as I've tested, and anything else that's left to be done is mostly behind the scenes other than getting translations for the program done-up.

If you have any problems during the setup, have suggestions for the program, find a bug, etc... then just comment below.

Rough Description



This tool allows for easy management and sorting of any and all bug reports for the server it's used with. Not only does this program deal with bug reports, as the name states, but it deals with any and all feedback given by your players as they play through the content on your server and submit either bug reports or feedback on their play experience.

The addon is quick to install, database easy to prepare, and program simple to use.


The following video is from an early stage of development, but it demonstrates how the reports/feedback are sent in and pulled into the tool.

[media:2juu4cm7]https://www.youtube.com/watch?v=K0sVIW1166w[/media:2juu4cm7]

How to Setup



To set up the bug reporting and tracking system, there are three requirements and three steps. These are all very simple and can be done for any server/account that meets the requirements.

Requirements



  • Your server must be running on TrinityCore.
  • You must have access to an account with permission to use stored procedures on the characters database.
  • Your players must be given a small patch file containing the Blizzard Feedback addon. You can download it here.

Step #1



Execute the following SQL on the characters database. This will create the stored procedures used by the program and add another field to the bugreports table that allows for the unread, read, etc... statuses to be tracked.

Code: [Select]
USE `characters`;

DELIMITER //

DROP PROCEDURE IF EXISTS getAllRawBugReports;

CREATE PROCEDURE getAllRawBugReports()
BEGIN
SELECT * FROM `bugreport`;
END//

DROP PROCEDURE IF EXISTS setButReportStatus;

CREATE PROCEDURE setButReportStatus(`varBugReportId` INT, `varBugReportStatus` INT)
BEGIN
UPDATE `bugreport` SET `status` = `varBugReportStatus` WHERE `id` = `varBugReportId`;
END//

DROP PROCEDURE IF EXISTS deleteBugReport;

CREATE PROCEDURE deleteBugReport(`varBugReportId` INT)
BEGIN
DELETE FROM `bugreport` WHERE id = `varBugReportId`;
END//

DELIMITER ;

Code: [Select]
USE `characters`;

ALTER TABLE `bugreport` ADD COLUMN `status` TINYINT NOT NULL DEFAULT 0 AFTER `id`;

Step #2



Download the bug tracker from here and ensure that you have the latest version of Java.

Step #3



Log into World of Warcraft, submit a random report using the addon, then launch the Bug Tracker and see if the report shows up. If the report does show up, then everything should be working as intended.

If you ever see a file named ]error_log.txt[/i], I would appreciate it if you could describe what you did to bug our or crash the program and if you could paste the error log in the comments below for me to take a look at.

The Interface



Because the program is still being worked on and fixed up here-and-there, the interface may undergo some changes as development progresses. At the moment it contains all initially conceived features.

The images below may appear quite small. If you wish to view them in their full resolution, then simply right-click on the image and select Open image in new tab. This may only apply to users with the Chrome browser.

In the image below you can see the initial interface.



The combobox in the top-left of the screen allows you to select a bug report by its ID number as retrieved from the database.



The radio buttons along the center of the menu bar allow you to sort the reports in the previously mentioned combobox by a number of different categories.



At the end of the menu bar you'll find a second combo box with a selection for each of the different sorting categories. When you have a report open, select a sorting category, and then submit your change, both the database and the program will be updated to reflect the change.



In the main section of the screen you'll find the bug report.




The Settings File



Within the settings file you'll find the saved server address, MySQL port, characters database name, MySQL username, and the interface language. All of these values can be manually edited and it's perfectly fine to just delete the settings file and select everything again through the interface when you launch the program.

The only value in the settings which cannot be changed through the GUI after selecting it is the language. If you wish to change the GUI language, then you'll need to either delete the settings file and launch the program to select it again or change it in the settings file.

Supported Languages



If you wish to contribute a translation in your native language, then please contact me on Skype for the latest files to be translated. It will take at-least an hour of your time to translate everything required.

  • English
  • French
  • German
  • Spanish
  • Russian

Examples of  Three Settings Files



Code: [Select]
serverAddress=example.com
port=3306
databaseName=characters
username=root
language=English

Code: [Select]
serverAddress=127.0.0.1
port=3306
databaseName=serverA_characters
username=root
language=French

Code: [Select]
serverAddress=123.456.78.9
port=1704
databaseName=characters
username=trinity
language=Spanish

Misc Information



The program currently only supports 3.3.5a TrinityCore, but it can easily be made to support other versions and cores. If anyone possesses the Blizzard Feedback addon from the PTR for whichever version they're playing on, then please contact me and we can hopefully get other versions supported.

The current program version is 1.2.

Credits



  • StoneHarry ~ Supplied the feedback addon.
  • Barbz ~ Supplied the French translation for the program.
  • V. Castonguay ~ Reviewed the French translation and helped make a handful of edits.
  • MountianLion ~ Supplied the Spanish translation for the program.
  • Skarn ~ Supplied the Russian translation for the program.
  • Kaev ~ Supplied the German translation for the program.

--------------------------------------------------------

If you want to stay up-to-date with my latest tutorials or if you just want an easier way to view all of my tutorials and releases in one place then take a look at my blog.
« Last Edit: July 29, 2015, 08:35:17 pm by Admin »
MY BLOG IS NOW HERE.

Krang Stonehoof

  • Contributors
  • Wiki Incarnate
  • *****
  • Posts: 164
    • View Profile
Re: [TOOL] Valkryst's Bug Report Manager
« Reply #1 on: July 14, 2015, 08:24:53 am »
I'm glad to see people still have some neat ideas like you. It looks great.

Keep up the good work and thanks for sharing it.
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

Valkryst

  • Moderators
  • Model Change Addict
  • *****
  • Posts: 224
    • View Profile
    • http://valkryst.com/blog/
Re: [TOOL] Valkryst's Bug Report Manager
« Reply #2 on: July 14, 2015, 09:30:47 pm »
Quote from: "Krang Stonehoof"
I'm glad to see people still have some neat ideas like you. It looks great.

Keep up the good work and thanks for sharing it.
Thanks!


Version 1.1 has been released. You can redownload it from the link in the post above.

This version includes Russian as a supported language along with a handful of minor code tweaks.
« Last Edit: January 01, 1970, 01:00:00 am by Admin »
MY BLOG IS NOW HERE.

Kaev

  • Contributors
  • Creator of Worlds
  • *****
  • Posts: 308
    • View Profile
Re: [TOOL] Valkryst's Bug Report Manager
« Reply #3 on: July 27, 2015, 07:50:51 am »
Quote from: "Valkryst"
German (Needs review/rewrite from native speaker.)

I can translate it to german if you want. Send me a PM. :)
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

hyakkimaru

  • Registred Member
  • Wiki Incarnate
  • *****
  • Posts: 128
    • View Profile
    • http://mc-revolution.fr
Re: [TOOL] Valkryst's Bug Report Manager
« Reply #4 on: July 27, 2015, 03:11:31 pm »
Hello, I'm getting this error.

Code: [Select]
{2015/juil./27-15:06:31}--LogType|ERROR: Packet for query is too large (4739923 > 1048576). You can change this value on the server by setting the max_allowed_packet' variable.

com.mysql.jdbc.PacketTooBigException: Packet for query is too large (4739923 > 1048576). You can change this value on the server by setting the max_allowed_packet' variable.
at com.mysql.jdbc.MysqlIO.readPacket(MysqlIO.java:569)
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1013)
at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2239)
at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2270)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2069)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:794)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:44)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:389)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:399)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:325)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at services.DataManager.<init>(DataManager.java:38)
at services.DataManagerBugReport.<init>(DataManagerBugReport.java:28)
at gui.ConnectionScreen.lambda$new$8(ConnectionScreen.java:122)
at gui.ConnectionScreen$$Lambda$19/110718392.actionPerformed(Unknown Source)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)


I have already updated my my.cnf and restarted mysql but I still have this error :)
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

Valkryst

  • Moderators
  • Model Change Addict
  • *****
  • Posts: 224
    • View Profile
    • http://valkryst.com/blog/
Re: [TOOL] Valkryst's Bug Report Manager
« Reply #5 on: July 27, 2015, 10:52:49 pm »
So you've done exactly what this post on StackOverflow says when changing the my.cnf?

If that doesn't work, then try this other temporary solution and see if it works. You'll need to log into MySQL and execute the query mentioned there.

Past that there's not much I can say. You might have better luck posting on StackOverflow, /r/mysql, or /r/linux4noobs since someone on any of those may know more about resolving the issue then I do.
« Last Edit: January 01, 1970, 01:00:00 am by Admin »
MY BLOG IS NOW HERE.

Valkryst

  • Moderators
  • Model Change Addict
  • *****
  • Posts: 224
    • View Profile
    • http://valkryst.com/blog/
Re: [TOOL] Valkryst's Bug Report Manager
« Reply #6 on: July 29, 2015, 08:36:22 pm »
Version 1.2 has been released. You can redownload it from the link in the OP above.

This version includes German as a supported language along with a handful of minor code tweaks.
« Last Edit: January 01, 1970, 01:00:00 am by Admin »
MY BLOG IS NOW HERE.

Nupper

  • Registred Member
  • Creator of Worlds
  • *****
  • Posts: 339
    • View Profile
Re: [TOOL] Valkryst's Bug Report Manager
« Reply #7 on: March 19, 2016, 11:39:55 pm »
It dose not save anything in database...
« Last Edit: January 01, 1970, 01:00:00 am by Admin »