From 9e9d9a02eeb8612a28131242300e63dc4b75254f Mon Sep 17 00:00:00 2001 From: James Quinley Date: Wed, 28 Sep 2022 21:00:52 -0700 Subject: [PATCH] Adds full logging for certain requests. --- .../delegationServices.java | 48 ++++++++++++++++++- 1 file changed, 47 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/jamesquinley/DelegationServices/delegationServices.java b/src/main/java/com/jamesquinley/DelegationServices/delegationServices.java index fbf82ff..4e09288 100644 --- a/src/main/java/com/jamesquinley/DelegationServices/delegationServices.java +++ b/src/main/java/com/jamesquinley/DelegationServices/delegationServices.java @@ -191,7 +191,7 @@ public class delegationServices { System.out.println("Delegation Has Started"); - if (requesttype == 0 || requesttype == 1 || requesttype == 2 || requesttype == 3 || requesttype == 4 || requesttype == 5 || requesttype == 6 || requesttype == 7 || requesttype == 8 || requesttype == 9 || requesttype == 10 || requesttype == 11 || requesttype == 12 || requesttype == 14 || requesttype == 20 || requesttype == 21 || requesttype == 41 || requesttype == 18 || requesttype == 47 || requesttype == 48 || requesttype == 54 || requesttype == 57 || requesttype == 61 || requesttype == 63 || requesttype == 65) { + if (requesttype == 0 || requesttype == 1 || requesttype == 2 || requesttype == 3 || requesttype == 4 || requesttype == 5 || requesttype == 6 || requesttype == 7 || requesttype == 8 || requesttype == 9 || requesttype == 10 || requesttype == 11 || requesttype == 12 || requesttype == 14 || requesttype == 20 || requesttype == 21 || requesttype == 41 || requesttype == 18 || requesttype == 47 || requesttype == 48 || requesttype == 54 || requesttype == 57 || requesttype == 61 || requesttype == 63 || requesttype == 65 || requesttype == 66) { if (requesttype == 47) { System.out.println("Self Updater download Request"); BasicDBObject searchQuery = new BasicDBObject(); @@ -1526,6 +1526,52 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); delegationServices.TargetDelete(ClientID); } + if (requesttype == 66) + { + BasicDBObject searchQuery = new BasicDBObject(); + searchQuery.append("clientid", ClientID); + System.out.println("Collecting Error Data"); + File homedir = new File(System.getProperty("user.home")); + String applicationName = Lrequest.get("applicationName").toString(); + String bugType = Lrequest.get("bugType").toString(); + String bugDetails = Lrequest.get("bugDetails").toString(); + String bugSeverity = Lrequest.get("bugSeverity").toString(); + String bugLog = Lrequest.get("bugLog").toString(); + String timeCurrent = LocalDateTime.now().toString(); //ISO-8601: yyyy-MM-ddTHH:mm:ss.S + try { + File myObj = new File(homedir + "/ocs/logs/" + applicationName + timeCurrent +".txt"); + if (myObj.createNewFile()) { + System.out.println("Log File created: " + myObj.getName()); + } else { + System.out.println("Log already exists."); + } + } catch (IOException e) { + System.out.println("An error occurred."); + e.printStackTrace(); + } + FileWriter writer = new FileWriter(homedir + "/ocs/logs/" + applicationName + timeCurrent +".txt", true); + writer.write("This bug report is for: " + applicationName); + writer.write("\r\n"); + writer.write("The bug severity is level: " + bugSeverity); + writer.write("\r\n"); + writer.write("The bug type is: " + bugType); + writer.write("\r\n"); + writer.write("More bug details: " + bugDetails); + writer.write("\r\n"); + writer.write("This is auto generated by the Obsidian Core backend services"); + writer.write("\r\n"); + writer.write("Submission Time (Local To Server): " + timeCurrent); + writer.write("\r\n"); + writer.write("Full log file:"); + writer.write("\r\n"); + writer.write(bugLog); + writer.close(); + BasicDBObject updateQuery = new BasicDBObject(); + updateQuery.append("$set", + new BasicDBObject().append("status", true)); + dCollection.updateOne(searchQuery, updateQuery); + delegationServices.TargetDelete(ClientID); + } } else { System.out.println("Malformed Request, Non Recoverable (Request Type Not Found)"); BasicDBObject searchQuery = new BasicDBObject();