This guide explains how to interpret the results when running LogPulse, using the included test_logs.log as an example.
To analyze the sample logs on Windows:
# Make sure your virtual environment is active
venv\Scripts\activate
# Run LogPulse
python main.py test_logs.logThe LogPulse interface is split into two panels:
This shows the Raw Logs exactly as they appear in the file. Example:
2023-10-28 14:00:02 ERROR [PaymentGateway] Transaction 0xA1B2 failed: Timeout receiving response from bank
2023-10-28 14:00:06 ERROR [PaymentGateway] Transaction 0xC3D4 failed: Timeout receiving response from bank
This is where the magic happens. LogPulse groups similar logs together.
| Count | Template Pattern |
|---|---|
| 5 | <*>:<*>:<*> ERROR [PaymentGateway] Transaction <*> failed... |
In the test_logs.log file, we have randomized transaction IDs:
0xA1B20xC3D40xE5F6
A standard grep or search tool would see these as 3 different errors. You might miss the fact that your Payment Gateway is consistently failing because the errors look "unique".
LogPulse identifies that 0xA1B2 looks like a Hexadecimal ID (Variable). It replaces it with <*>.
The Result: Instead of seeing 3 unique lines, you see 1 Cluster with a count of 3.
Insight: "My Payment Gateway failed 3 times today." (Actionable!) vs "I have 3 random errors." (Noise)
| Cluster Pattern | Meaning |
|---|---|
INFO [AuthService] User <*> logged in... |
Tracks user login volume. The <*> masks the User ID and IP. |
WARN [DiskMonitor] Disk usage... is at <*> |
Tracks disk warnings. The <*> masks the percentage. |
- Count: How many times this pattern occurred.
- <*>: A variable part of the log (ID, Number, IP) that was masked to find the pattern.