Add JVM log analyzer tool
This commit is contained in:
@@ -0,0 +1,215 @@
|
||||
# JVM Log Analyzer
|
||||
|
||||
- Overall status: CRITICAL
|
||||
- Finding language is a triage summary; logs alone do not prove root cause.
|
||||
|
||||
## CRITICAL: CertificateExpiredException
|
||||
|
||||
- Occurrences: 1
|
||||
- Symptom: tls_certificate
|
||||
- First seen: 2026-05-11 10:16:40
|
||||
- Last seen: 2026-05-11 10:16:40
|
||||
- Stack traces linked: 0
|
||||
|
||||
Sample log lines:
|
||||
|
||||
```text
|
||||
Caused by: java.security.cert.CertificateExpiredException: NotAfter: Mon May 11 10:00:00 UTC 2026
|
||||
```
|
||||
|
||||
## CRITICAL: CommunicationsException
|
||||
|
||||
- Occurrences: 1
|
||||
- Symptom: database
|
||||
- First seen: 2026-05-11 10:13:02
|
||||
- Last seen: 2026-05-11 10:13:02
|
||||
- Stack traces linked: 0
|
||||
|
||||
Sample log lines:
|
||||
|
||||
```text
|
||||
Caused by: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
|
||||
```
|
||||
|
||||
## CRITICAL: connection pool exhausted
|
||||
|
||||
- Occurrences: 1
|
||||
- Symptom: database
|
||||
- First seen: 2026-05-11 10:12:55
|
||||
- Last seen: 2026-05-11 10:12:55
|
||||
- Stack traces linked: 0
|
||||
|
||||
Sample log lines:
|
||||
|
||||
```text
|
||||
2026-05-11 10:12:55 ERROR inventory-api[2214] --- [HikariPool-1 housekeeper] com.zaxxer.hikari.pool.HikariPool : connection pool exhausted waiting for database connection
|
||||
```
|
||||
|
||||
## CRITICAL: database unavailable
|
||||
|
||||
- Occurrences: 1
|
||||
- Symptom: database
|
||||
- First seen: 2026-05-11 10:13:02
|
||||
- Last seen: 2026-05-11 10:13:02
|
||||
- Stack traces linked: 0
|
||||
|
||||
Sample log lines:
|
||||
|
||||
```text
|
||||
2026-05-11 10:13:02 ERROR inventory-api[2214] --- [http-nio-8080-exec-4] com.example.db.InventoryRepository : database unavailable during checkout commit
|
||||
```
|
||||
|
||||
## CRITICAL: FATAL
|
||||
|
||||
- Occurrences: 1
|
||||
- Symptom: fatal
|
||||
- First seen: 2026-05-11 10:21:27
|
||||
- Last seen: 2026-05-11 10:21:27
|
||||
- Stack traces linked: 0
|
||||
|
||||
Sample log lines:
|
||||
|
||||
```text
|
||||
2026-05-11 10:21:27 FATAL inventory-api[2214] --- [main] org.apache.catalina.core.StandardService : JVM failure detected, stopping service
|
||||
```
|
||||
|
||||
## CRITICAL: Java heap space
|
||||
|
||||
- Occurrences: 1
|
||||
- Symptom: jvm_memory
|
||||
- First seen: 2026-05-11 10:21:27
|
||||
- Last seen: 2026-05-11 10:21:27
|
||||
- Stack traces linked: 0
|
||||
|
||||
Sample log lines:
|
||||
|
||||
```text
|
||||
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
|
||||
```
|
||||
|
||||
## CRITICAL: OutOfMemoryError
|
||||
|
||||
- Occurrences: 1
|
||||
- Symptom: jvm_memory
|
||||
- First seen: 2026-05-11 10:21:27
|
||||
- Last seen: 2026-05-11 10:21:27
|
||||
- Stack traces linked: 1
|
||||
|
||||
Sample log lines:
|
||||
|
||||
```text
|
||||
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
|
||||
```
|
||||
|
||||
Stack trace samples:
|
||||
|
||||
```text
|
||||
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
|
||||
at java.base/java.util.Arrays.copyOf(Arrays.java:3537)
|
||||
at java.base/java.lang.AbstractStringBuilder.ensureCapacityInternal(AbstractStringBuilder.java:228)
|
||||
at com.example.cache.ReportCache.loadAll(ReportCache.java:87)
|
||||
```
|
||||
|
||||
## CRITICAL: SQLRecoverableException
|
||||
|
||||
- Occurrences: 1
|
||||
- Symptom: database
|
||||
- First seen: 2026-05-11 10:13:02
|
||||
- Last seen: 2026-05-11 10:13:02
|
||||
- Stack traces linked: 1
|
||||
|
||||
Sample log lines:
|
||||
|
||||
```text
|
||||
java.sql.SQLRecoverableException: IO Error: The Network Adapter could not establish the connection
|
||||
```
|
||||
|
||||
Stack trace samples:
|
||||
|
||||
```text
|
||||
java.sql.SQLRecoverableException: IO Error: The Network Adapter could not establish the connection
|
||||
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:743)
|
||||
at oracle.jdbc.driver.PhysicalConnection.connect(PhysicalConnection.java:666)
|
||||
Caused by: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
|
||||
at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:836)
|
||||
... 2 more
|
||||
```
|
||||
|
||||
## CRITICAL: SSLHandshakeException
|
||||
|
||||
- Occurrences: 1
|
||||
- Symptom: tls_certificate
|
||||
- First seen: 2026-05-11 10:16:40
|
||||
- Last seen: 2026-05-11 10:16:40
|
||||
- Stack traces linked: 1
|
||||
|
||||
Sample log lines:
|
||||
|
||||
```text
|
||||
2026-05-11 10:16:40 ERROR inventory-api[2214] --- [cert-refresh] com.example.security.TrustStoreLoader : javax.net.ssl.SSLHandshakeException: PKIX path validation failed
|
||||
```
|
||||
|
||||
Stack trace samples:
|
||||
|
||||
```text
|
||||
2026-05-11 10:16:40 ERROR inventory-api[2214] --- [cert-refresh] com.example.security.TrustStoreLoader : javax.net.ssl.SSLHandshakeException: PKIX path validation failed
|
||||
Caused by: java.security.cert.CertificateExpiredException: NotAfter: Mon May 11 10:00:00 UTC 2026
|
||||
at sun.security.provider.certpath.BasicChecker.verifyTimestamp(BasicChecker.java:194)
|
||||
```
|
||||
|
||||
## WARNING: ERROR
|
||||
|
||||
- Occurrences: 8
|
||||
- Symptom: log_level
|
||||
- First seen: 2026-05-11 10:05:31
|
||||
- Last seen: 2026-05-11 10:18:06
|
||||
- Stack traces linked: 0
|
||||
|
||||
Sample log lines:
|
||||
|
||||
```text
|
||||
2026-05-11 10:05:31 ERROR inventory-api[2214] --- [http-nio-8080-exec-7] com.example.orders.OrderController : request failed while loading order id=4812
|
||||
2026-05-11 10:09:13 ERROR inventory-api[2214] --- [pool-4-thread-1] com.example.integration.TaxClient : java.net.ConnectException: connection refused connecting to tax-service:8443
|
||||
2026-05-11 10:12:55 ERROR inventory-api[2214] --- [HikariPool-1 housekeeper] com.zaxxer.hikari.pool.HikariPool : connection pool exhausted waiting for database connection
|
||||
```
|
||||
|
||||
## Top Exception Types
|
||||
|
||||
| Value | Count |
|
||||
| --- | ---: |
|
||||
| NullPointerException | 1 |
|
||||
| IllegalStateException | 1 |
|
||||
| SocketTimeoutException | 1 |
|
||||
| ConnectException | 1 |
|
||||
| SQLRecoverableException | 1 |
|
||||
| CommunicationsException | 1 |
|
||||
| SSLHandshakeException | 1 |
|
||||
| CertificateExpiredException | 1 |
|
||||
| OutOfMemoryError | 1 |
|
||||
|
||||
## Top Operational Symptoms
|
||||
|
||||
| Value | Count |
|
||||
| --- | ---: |
|
||||
| log_level | 10 |
|
||||
| database | 4 |
|
||||
| http_5xx | 3 |
|
||||
| application_exception | 2 |
|
||||
| network_timeout | 2 |
|
||||
| network_connectivity | 2 |
|
||||
| tls_certificate | 2 |
|
||||
| jvm_memory | 2 |
|
||||
| retry | 1 |
|
||||
| fatal | 1 |
|
||||
|
||||
## Operational Summary
|
||||
|
||||
- Overall status: CRITICAL
|
||||
- Total lines scanned: 32
|
||||
- Total findings: 29
|
||||
- Total stack traces detected: 4
|
||||
- Critical finding groups: 9
|
||||
- Warning finding groups: 11
|
||||
- HTTP 5xx count: 3
|
||||
- Parsed timestamps count: 13
|
||||
- Unknown timestamps count: 19
|
||||
Reference in New Issue
Block a user