Skip to content

omarmahamid/heap-dump-analyzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

heap-dump-analyzer

Analyzing Heap Dump In high performance way

Usage

Usage: java <jvmOptions> -jar heap-dump-analyzer.jar <inputFile> <limit> <outputFile>


<inputFile>: is the heapdump file (MUST)
<limit>: limit how much number of classes to display (MUST)
<outputFile>: is the analysis report (MUST)
<jvmOptions>: if hprof is BIG use -Xmx25g (Optional)

Example

Top 80 allocated classes:

+------------+-----------+-------------+-----------------------------------------------------------+
| Total size | Instances | Class name                                                |
+------------+-----------+-------------+-----------------------------------------------------------+
|          298.69 MB |   5482827 | byte[]                                                      |
|          247.04 MB |   1425421 | java.lang.String[]                                          |
|          156.52 MB |   5470664 | java.lang.String                                            |
|          111.17 MB |   2649209 | java.util.HashMap$Node                                      |
|          107.39 MB |    479757 | java.util.HashMap$Node[]                                    |
|           42.71 MB |   1399648 | java.util.Collections$UnmodifiableRandomAccessList          |
|           37.74 MB |   1413493 | java.util.Arrays$ArrayList                                  |
|           27.32 MB |    447554 | java.util.HashMap                                           |
|           26.97 MB |   1414011 | java.lang.Integer                                           |
|           24.99 MB |    436789 | java.util.LinkedHashMap$Entry                               |
|           11.00 MB |    221903 | org.ahocorasick.trie.PayloadState                           |
|            9.32 MB |    120640 | java.util.LinkedHashMap                                     |
|            9.05 MB |     64981 | java.lang.reflect.Method                                    |
|            8.22 MB |    359108 | java.util.HashMap$KeySet                                    |
|            8.14 MB |      2657 | short[]                                                     |
|            7.95 MB |     86807 | org.apache.commons.vfs2.provider.local.LocalFileName        |
|            6.76 MB |    161185 | java.util.concurrent.ConcurrentHashMap$Node                 |
|            4.85 MB |     48015 | java.lang.Object[]                                          |
|            4.13 MB |    135265 | java.util.Collections$SynchronizedSet                       |
|            4.05 MB |    177027 | java.util.HashSet                                           |
|            3.92 MB |     42403 | org.apache.commons.vfs2.provider.local.LocalFile            |
|            3.36 MB |     44048 | java.util.TreeMap                                           |
|            3.10 MB |      3271 | java.util.concurrent.ConcurrentHashMap$Node[]               |
|            2.99 MB |     27542 | java.lang.reflect.Field                                     |
|            2.81 MB |     51642 | java.util.TreeMap$Entry                                     |
|            2.80 MB |     45822 | java.lang.ref.Finalizer                                     |
|            2.74 MB |     51384 | java.lang.ref.SoftReference                                 |
|            2.28 MB |     34681 | org.apache.commons.vfs2.provider.DefaultFileContent         |
|            2.19 MB |     95847 | java.util.LinkedHashSet                                     |
|            2.17 MB |     29921 | com.google.gson.internal.LinkedTreeMap$Node                 |
|            2.16 MB |     24844 | int[]                                                       |
|            1.83 MB |     43719 | java.io.File                                                |
|            1.74 MB |     57080 | java.time.LocalDateTime                                     |
|            1.55 MB |     49552 | java.lang.Class[]                                           |
|            1.46 MB |     42403 | org.apache.commons.vfs2.cache.FileSystemAndNameKey          |
|            1.29 MB |     42276 | org.ahocorasick.trie.Payload                                |
|            1.03 MB |      8890 | java.lang.reflect.Constructor                               |
|            1.03 MB |      4114 | long[]                                                      |
|            1.00 MB |     43850 | java.util.TreeSet                                           |
|            1.00 MB |     32858 | java.util.ArrayList                                         |
|            0.93 MB |     34695 | java.lang.ThreadLocal$SuppliedThreadLocal                   |
|            0.92 MB |     60153 | java.lang.Object                                            |
|            0.83 MB |      8746 | java.util.concurrent.ConcurrentHashMap                      |
|            0.77 MB |      7450 | java.lang.Class$ReflectionData                              |
|            0.74 MB |     32223 | java.time.LocalDate                                         |
|            0.64 MB |     28129 | com.google.gson.JsonPrimitive                               |
|            0.56 MB |      4929 | java.lang.reflect.Method[]                                  |
|            0.51 MB |      6648 | com.google.gson.internal.LinkedTreeMap                      |
|            0.48 MB |      7200 | org.apache.commons.vfs2.FileName[]                          |
|            0.45 MB |       555 | java.time.LocalDateTime[]                                   |
|            0.41 MB |      4476 | org.springframework.core.ResolvableType                     |
|            0.40 MB |     17390 | java.lang.Double                                            |
|            0.38 MB |      2374 | char[]                                                      |
|            0.35 MB |      3875 | org.apache.commons.vfs2.provider.LayeredFileName            |
|            0.33 MB |      5792 | java.lang.invoke.MemberName                                 |
|            0.30 MB |      2114 | java.util.jar.JarFile$JarFileEntry                          |
|            0.30 MB |      7087 | java.util.Hashtable$Entry                                   |
|            0.30 MB |      9679 | java.util.regex.Pattern$CharPredicate$$Lambda$856+0x00000070011f92f0 |
|            0.27 MB |      1145 | java.time.ZoneOffset[]                                      |
|            0.26 MB |       875 | org.springframework.beans.factory.support.RootBeanDefinition |
|            0.26 MB |      4267 | java.lang.invoke.MethodType                                 |
|            0.25 MB |      8326 | org.joda.time.DateTime                                      |
|            0.25 MB |     12899 | java.util.regex.CharPredicates$$Lambda$874+0x00000070011ffa48 |
|            0.24 MB |      4178 | org.springframework.boot.context.properties.source.ConfigurationPropertyName$Elements |
|            0.23 MB |      3349 | org.springframework.boot.context.properties.source.ConfigurationPropertyName$ElementType[] |
|            0.22 MB |      1470 | java.util.WeakHashMap$Entry[]                               |
|            0.21 MB |      1617 | org.drools.mvel.MVELConstraint                              |
|            0.21 MB |      4286 | java.lang.invoke.MethodType$ConcurrentWeakInternSet$WeakEntry |
|            0.21 MB |      5141 | java.lang.CharSequence[]                                    |
|            0.20 MB |      4265 | java.lang.invoke.LambdaForm$Name                            |
|            0.20 MB |      8813 | java.util.jar.Attributes                                    |
|            0.20 MB |      5189 | sun.reflect.annotation.AnnotationInvocationHandler          |
|            0.19 MB |      2549 | org.drools.core.io.impl.ByteArrayResource                   |
|            0.19 MB |      4970 | jdk.internal.reflect.NativeConstructorAccessorImpl          |
|            0.19 MB |      3296 | org.antlr.runtime.CommonToken                               |
|            0.19 MB |      1623 | org.apache.commons.vfs2.provider.jar.JarFileObject          |
|            0.19 MB |      3269 | org.springframework.core.type.classreading.SimpleMethodMetadata |
|            0.18 MB |      4025 | java.lang.ref.WeakReference                                 |
|            0.18 MB |      7996 | java.util.LinkedHashMap$LinkedEntrySet                      |
|            0.18 MB |      4178 | org.springframework.boot.context.properties.source.ConfigurationPropertyName |
+------------+-----------+-------------+-----------------------------------------------------------+

Future Plan:

Enahnce the perfomrance of the analyzer.

About

Analyzing Heap Dump In high performance way

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages