Now supports Create RND logging.

This commit is contained in:
James Quinley
2022-12-25 20:46:02 -08:00
parent 8179c3e0ef
commit b43a7996aa

View File

@ -1632,7 +1632,7 @@ public class delegationServices {
if (requesttype == 72) {
BasicDBObject searchQuery = new BasicDBObject();
searchQuery.append("_id", ClientID);
System.out.println("Collecting Error Data");
System.out.println("Collecting Telemetry Data");
File homedir = new File(System.getProperty("user.home"));
String applicationName = Lrequest.get("applicationName").toString();
String telemetryType = Lrequest.get("telemetryType").toString();
@ -1816,7 +1816,7 @@ public class delegationServices {
} else
{
System.out.println("Running in limited mode (Web Request)");
if (requesttype == 73 || requesttype == 74 || requesttype == 75) {
if (requesttype == 73 || requesttype == 74 || requesttype == 75 || requesttype ==78) {
if (requesttype == 73) {
System.out.println("Login Request (USR&PASS)");
String username = (String) Lrequest.get("user");
@ -2264,6 +2264,46 @@ public class delegationServices {
//delegationTimer.trigger();
}
}
if (requesttype == 78) {
BasicDBObject searchQuery = new BasicDBObject();
searchQuery.append("_id", ClientID);
System.out.println("Collecting Telemetry Data");
File homedir = new File(System.getProperty("user.home"));
String applicationName = Lrequest.get("useragent").toString();
// String telemetryType = Lrequest.get("telemetryType").toString();
String mclog = Lrequest.get("log").toString();
String IGN = Lrequest.get("ign").toString();
String timeCurrent = LocalDateTime.now().toString(); //ISO-8601: yyyy-MM-ddTHH:mm:ss.S
try {
File myObj = new File(homedir + "/crad/telemetry/" + IGN + "/" + timeCurrent + ".txt");
File myFold = new File(homedir + "/crad/telemetry/" + IGN);
myFold.mkdir();
if (myObj.createNewFile()) {
System.out.println("Log File created: " + myObj.getName());
FileWriter writer = new FileWriter(homedir + "/crad/telemetry/" + IGN + "/" + timeCurrent + ".txt", true);
writer.write("This telemetry report is for: " + applicationName);
writer.write("\r\n");
writer.write("\r\n");
writer.write("This is auto generated by the Obsidian Core backend services (For Create Research & Development.");
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(mclog);
writer.close();
} else {
System.out.println("telemetry already exists. (wow that's rare)");
}
} catch (IOException e) {
System.out.println("An error occurred while attempting to save telemetry.");
}
BasicDBObject updateQuery = new BasicDBObject();
updateQuery.append("$set",
new BasicDBObject().append("status", true));
dCollection.updateOne(searchQuery, updateQuery);
delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id"));
}
} else {
System.out.println("Type does not exist (ERR4)");
BasicDBObject searchQuery = new BasicDBObject();