Debug Info Obfuscation
Debug Info Obfuscation
According to configuration settings Allatori is able to do the following things:
1. Leave debug information without modifications.
This kind of option can be helpful for internal testing of your application. In other cases it's better to choose other options.
Stack trace will be reported like the following:
java.lang.NullPointerException
at com.company.c.a(Util.java:38)
at com.company.b.b(TraceTest.java:53)
at com.company.b.a(TraceTest.java:14)
at com.company.a.a(Main.java:27)
2. Remove debug information.
This option can be used, when the size of your application matters really much, and in this case you can save much space by dint of removing debug information.
Stack trace will be reported like the following:
java.lang.NullPointerException
at com.company.c.a(Unknown Source)
at com.company.b.b(Unknown Source)
at com.company.b.a(Unknown Source)
at com.company.a.a(Unknown Source)
3. Substitute (obfuscate) debug information.
Probably, that's the most curious option. Debug information remains, but it's modified, and so the use of it without transforming simply stupefies the hacker. In this case it is absolutely impossible to understand where exactly the exception has taken place. But Allatori has a special utility, which allows reconstructing the original stack trace with the help of a substituted one. Debug information's substituting doesn't influence productivity at all and dwindles the code's size. It is desirable to use this option in the majority of cases.
Stack trace will be reported like the following:
java.lang.NullPointerException
at com.company.c.a(m:61)
at com.company.b.b(w:94)
at com.company.b.a(w:83)
at com.company.a.a(n:75)



















