11package net .olympiccode .vhackos .bot .core ;
22
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 ;
49import net .olympiccode .vhackos .api .vHackOSAPI ;
510import net .olympiccode .vhackos .api .vHackOSAPIBuilder ;
11+ import net .olympiccode .vhackos .api .vHackOSInfo ;
612import net .olympiccode .vhackos .bot .core .config .AdvancedConfigFile ;
7- import net .olympiccode .vhackos .bot .core .config .AdvancedConfigValues ;
813import net .olympiccode .vhackos .bot .core .config .ConfigFile ;
914import net .olympiccode .vhackos .bot .core .config .ConfigValues ;
1015import net .olympiccode .vhackos .bot .core .misc .MiscConfigValues ;
1318import net .olympiccode .vhackos .bot .core .networking .NetworkingService ;
1419import net .olympiccode .vhackos .bot .core .updating .UpdateConfigValues ;
1520import net .olympiccode .vhackos .bot .core .updating .UpdateService ;
16- import okhttp3 .OkHttpClient ;
1721import org .slf4j .Logger ;
1822import org .slf4j .LoggerFactory ;
1923
@@ -38,17 +42,35 @@ public static void main(String[] args) {
3842 }
3943
4044 public void run () {
41-
45+ Sentry .init ("https://36b5e13fe253466f8b98b5adacb2aa32:cf886218c21b4ba7ad4692f303020f7a@sentry.io/303008" );
46+ Sentry .getContext ().addExtra ("version" , vHackOSInfo .API_PREFIX );
47+ Sentry .getContext ().recordBreadcrumb (
48+ new BreadcrumbBuilder ().setMessage ("Starting..." ).build ()
49+ );
4250 Runtime .getRuntime ().addShutdownHook (new Thread (() -> {
4351 LOG .info ("Shutting down..." );
4452 config .save ();
4553 advConfig .save ();
4654 }));
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+ );
5068// 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+
5274 if (ConfigValues .username .equals ("***" ) || ConfigValues .password .equals ("***" )) {
5375 LOG .error ("Please set your login data in the config file" );
5476 System .exit (0 );
@@ -59,13 +81,27 @@ public void run() {
5981 LOG .error ("vHack returned invalid username/password." );
6082 } catch (InterruptedException e ) {
6183 LOG .error ("There was a problem initializing the vHackOSBot." );
84+ } catch (Exception e ) {
85+ Sentry .capture (e );
86+ e .printStackTrace ();
6287 }
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+ );
69105 BufferedReader in = new BufferedReader (new InputStreamReader (System .in ));
70106 String line = "" ;
71107 while (true ) {
@@ -84,7 +120,7 @@ public void run() {
84120 "Level: " + api .getStats ().getLevel () + getProgressBar ());
85121 break ;
86122 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 -------------------" );
88124 break ;
89125 case "brutes" :
90126 System .out .println ("-------------------\n " + api .getTaskManager ().getActiveBrutes ().stream ().map (bruteForce -> bruteForce .getUsername () + ": " + bruteForce .getState ()).collect (Collectors .joining ("\n " )) + "\n -------------------" );
0 commit comments