https://github.com/nstrings/system_log_analyze
Interactive log analyzer for macOS & Windows — Python + Streamlit tool to parse, visualize, and report on system/application logs (CLI & UI).
https://github.com/nstrings/system_log_analyze
it-support log-analysis macos monitoring portfolio-project python python3 security system-administration windows
Last synced: 3 months ago
JSON representation
Interactive log analyzer for macOS & Windows — Python + Streamlit tool to parse, visualize, and report on system/application logs (CLI & UI).
- Host: GitHub
- URL: https://github.com/nstrings/system_log_analyze
- Owner: nstrings
- License: mit
- Created: 2025-10-06T14:52:51.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2025-10-06T15:12:19.000Z (9 months ago)
- Last Synced: 2025-10-06T17:23:43.162Z (9 months ago)
- Topics: it-support, log-analysis, macos, monitoring, portfolio-project, python, python3, security, system-administration, windows
- Language: Python
- Homepage:
- Size: 2.25 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# System Log Analyzer (macOS + Windows)
Interactive **Streamlit** UI + CLI tool to analyze system/application logs.
## Screenshots
### Streamlit UI - Dashboard

### Streamlit UI - Presets Example

### CLI Example - Markdown Export

- macOS: analyze `log show` exports
- Windows: analyze `Get-WinEvent` exports
- Presets for Networking, Security, Windows (DNS/SCM/Schannel/GPO)
- Exports CSV and Markdown reports
## Quickstart (UI)
```bash
pip install -r requirements.txt
streamlit run analyzer.py
```
## Quickstart (CLI)
```bash
# macOS
log show --style syslog --last 30m > sample.log
python3 analyzer.py --file sample.log --msgs 20 --top 20 --top-procs 10 \
--export-md report.md --export-csv report
```
## Windows export (PowerShell)
```powershell
Get-WinEvent -LogName System -MaxEvents 5000 | ForEach-Object {
"$($_.TimeCreated.ToString('yyyy-MM-dd HH:mm:ss')) $($_.LevelDisplayName) $($_.ProviderName) $($_.Message -replace '\r?\n',' ')"
} | Out-File -Encoding utf8 C:\Temp\sample_windows.log
```
## Notes
- Do not upload real logs; sanitize if needed.
- Works with `.log`, `.txt`, and `.gz` files.