1
1
package net .olympiccode .vhackos .bot .core ;
2
2
3
- import ch .qos .logback .classic .Level ;
3
+ import io .sentry .Sentry ;
4
+ import io .sentry .SentryClientFactory ;
5
+ import io .sentry .event .BreadcrumbBuilder ;
6
+ import io .sentry .event .Event ;
7
+ import io .sentry .event .EventBuilder ;
8
+ import io .sentry .event .UserBuilder ;
4
9
import net .olympiccode .vhackos .api .vHackOSAPI ;
5
10
import net .olympiccode .vhackos .api .vHackOSAPIBuilder ;
11
+ import net .olympiccode .vhackos .api .vHackOSInfo ;
6
12
import net .olympiccode .vhackos .bot .core .config .AdvancedConfigFile ;
7
- import net .olympiccode .vhackos .bot .core .config .AdvancedConfigValues ;
8
13
import net .olympiccode .vhackos .bot .core .config .ConfigFile ;
9
14
import net .olympiccode .vhackos .bot .core .config .ConfigValues ;
10
15
import net .olympiccode .vhackos .bot .core .misc .MiscConfigValues ;
13
18
import net .olympiccode .vhackos .bot .core .networking .NetworkingService ;
14
19
import net .olympiccode .vhackos .bot .core .updating .UpdateConfigValues ;
15
20
import net .olympiccode .vhackos .bot .core .updating .UpdateService ;
16
- import okhttp3 .OkHttpClient ;
17
21
import org .slf4j .Logger ;
18
22
import org .slf4j .LoggerFactory ;
19
23
@@ -38,17 +42,35 @@ public static void main(String[] args) {
38
42
}
39
43
40
44
public void run () {
41
-
45
+ Sentry .
init (
"https://36b5e13fe253466f8b98b5adacb2aa32:[email protected] /303008" );
46
+ Sentry .getContext ().addExtra ("version" , vHackOSInfo .API_PREFIX );
47
+ Sentry .getContext ().recordBreadcrumb (
48
+ new BreadcrumbBuilder ().setMessage ("Starting..." ).build ()
49
+ );
42
50
Runtime .getRuntime ().addShutdownHook (new Thread (() -> {
43
51
LOG .info ("Shutting down..." );
44
52
config .save ();
45
53
advConfig .save ();
46
54
}));
47
-
48
- advConfig .setupConfig ();
49
- config .setupConfig ();
55
+ Sentry .getContext ().recordBreadcrumb (
56
+ new BreadcrumbBuilder ().setMessage ("Configs" ).build ()
57
+ );
58
+ try {
59
+ advConfig .setupConfig ();
60
+ config .setupConfig ();
61
+ } catch (Exception e ) {
62
+ Sentry .capture (e );
63
+ e .printStackTrace ();
64
+ }
65
+ Sentry .getContext ().recordBreadcrumb (
66
+ new BreadcrumbBuilder ().setMessage ("Configs done" ).build ()
67
+ );
50
68
// ch.qos.logback.classic.Logger root = (ch.qos.logback.classic.Logger) org.slf4j.LoggerFactory.getLogger(ch.qos.logback.classic.Logger.ROOT_LOGGER_NAME);
51
- // root.setLevel(Level.valueOf(AdvancedConfigValues.logLevel));
69
+ // root.setLevel(Level.valueOf(AdvancedConfigValues.logLevel));
70
+ Sentry .getContext ().recordBreadcrumb (
71
+ new BreadcrumbBuilder ().setMessage ("API setup" ).build ()
72
+ );
73
+
52
74
if (ConfigValues .username .equals ("***" ) || ConfigValues .password .equals ("***" )) {
53
75
LOG .error ("Please set your login data in the config file" );
54
76
System .exit (0 );
@@ -59,13 +81,27 @@ public void run() {
59
81
LOG .error ("vHack returned invalid username/password." );
60
82
} catch (InterruptedException e ) {
61
83
LOG .error ("There was a problem initializing the vHackOSBot." );
84
+ } catch (Exception e ) {
85
+ Sentry .capture (e );
86
+ e .printStackTrace ();
62
87
}
63
-
64
-
65
- if (UpdateConfigValues .enabled ) updateService .setup ();
66
- if (MiscConfigValues .enabled ) miscService .setup ();
67
- if (NetworkingConfigValues .enabled ) networkingService .setup ();
68
-
88
+ Sentry .getContext ().setUser (
89
+ new UserBuilder ().setUsername (ConfigValues .username ).build ()
90
+ );
91
+ Sentry .getContext ().recordBreadcrumb (
92
+ new BreadcrumbBuilder ().setMessage ("Service setup" ).build ()
93
+ );
94
+ try {
95
+ if (UpdateConfigValues .enabled ) updateService .setup ();
96
+ if (MiscConfigValues .enabled ) miscService .setup ();
97
+ if (NetworkingConfigValues .enabled ) networkingService .setup ();
98
+ } catch (Exception e ) {
99
+ Sentry .capture (e );
100
+ e .printStackTrace ();
101
+ }
102
+ Sentry .getContext ().recordBreadcrumb (
103
+ new BreadcrumbBuilder ().setMessage ("Done" ).build ()
104
+ );
69
105
BufferedReader in = new BufferedReader (new InputStreamReader (System .in ));
70
106
String line = "" ;
71
107
while (true ) {
@@ -84,7 +120,7 @@ public void run() {
84
120
"Level: " + api .getStats ().getLevel () + getProgressBar ());
85
121
break ;
86
122
case "tasks" :
87
- System .out .println ("-------------------\n " + "Boosters: " + api .getTaskManager ().getBoosters () + "-------------------\n " + api .getTaskManager ().getActiveTasks ().stream ().map (task -> task .getType () + ": " + task .getLevel () + " " + ((task .getEndTimestamp () - System .currentTimeMillis ()) / 1000 ) + "sec left." ).collect (Collectors .joining ("\n " )) + "\n -------------------" );
123
+ System .out .println ("-------------------\n " + "Boosters: " + api .getTaskManager ().getBoosters () + "-------------------\n " + api .getTaskManager ().getActiveTasks ().stream ().map (task -> task .getType () + ": " + task .getLevel () + " " + ((task .getEndTimestamp () - System .currentTimeMillis ()) / 1000 ) + "sec left." ).collect (Collectors .joining ("\n " )) + "\n -------------------" );
88
124
break ;
89
125
case "brutes" :
90
126
System .out .println ("-------------------\n " + api .getTaskManager ().getActiveBrutes ().stream ().map (bruteForce -> bruteForce .getUsername () + ": " + bruteForce .getState ()).collect (Collectors .joining ("\n " )) + "\n -------------------" );
0 commit comments