Skip to content

feat: add share button to export and enhance logs export with timestamps and smart filtering#59

Merged
Nyasami merged 5 commits into
Nyasami:mainfrom
Am1nCmd:feat/logs-export-enhanced
Oct 14, 2025
Merged

feat: add share button to export and enhance logs export with timestamps and smart filtering#59
Nyasami merged 5 commits into
Nyasami:mainfrom
Am1nCmd:feat/logs-export-enhanced

Conversation

@Am1nCmd

@Am1nCmd Am1nCmd commented Oct 12, 2025

Copy link
Copy Markdown
Contributor
image

Improved logs export feature with significant enhancements:

  • Added timestamp to each log entry (format: [HH:mm:ss.SSS])
  • Implemented smart progress filtering (shows only 0%, 25%, 50%, 75%, 100%)
  • Reduced export file size by ~97% (from ~1200 to ~12 entries)
  • Format progress as percentages instead of decimals (25% vs 0.25)
  • Multi-session aware filtering with UUID tracking
  • Added share button in logs toolbar for easy export

Example output logs transformation:
BEFORE: 1197 entries, ~89KB
Unzip progress: 0.0007548635306994808
Unzip progress: 0.0007573571074668932
... (1190+ similar lines)
Unzip progress: 1.0

AFTER: ~12 entries, ~3KB
[04:15:31.012] Unzip progress: 0% (started)
[04:15:33.234] Unzip progress: 25%
[04:15:36.567] Unzip progress: 50%
[04:15:39.890] Unzip progress: 75%
[04:15:42.567] Unzip progress: 100% (completed)

This makes it much easier for developers to gather feedback from users
without dealing with massive log files, while maintaining all important
information for debugging.

Added share button in Logs view toolbar that allows users to export
all log entries to a timestamped .txt file. This makes it easier for
developers to gather feedback and debug issues reported by users.

The exported file includes a header with export timestamp and total
entry count, followed by all log messages in a clean format.
Improved logs export feature with significant enhancements:
- Added timestamp to each log entry for accurate timing analysis
- Implemented smart progress filtering (shows only 0%, 25%, 50%, 75%, 100%)
- Reduced export file size by ~97% (1197 entries → ~12 entries)
- Format progress as percentages instead of decimals for better readability
- Multi-session aware filtering with UUID tracking
- Included example files showing before/after comparison

This makes it much easier for developers to gather feedback from users
without dealing with massive log files, while maintaining all important
information for debugging.
Improved logs export feature with significant enhancements:
- Added timestamp to each log entry (format: [HH:mm:ss.SSS])
- Implemented smart progress filtering (shows only 0%, 25%, 50%, 75%, 100%)
- Reduced export file size by ~97% (from ~1200 to ~12 entries)
- Format progress as percentages instead of decimals (25% vs 0.25)
- Multi-session aware filtering with UUID tracking
- Added share button in logs toolbar for easy export

Example output transformation:
BEFORE: 1197 entries, ~150KB
  Unzip progress: 0.0007548635306994808
  Unzip progress: 0.0007573571074668932
  ... (1190+ similar lines)
  Unzip progress: 1.0

AFTER: ~12 entries, ~3KB
  [04:15:31.012] Unzip progress: 0% (started)
  [04:15:33.234] Unzip progress: 25%
  [04:15:36.567] Unzip progress: 50%
  [04:15:39.890] Unzip progress: 75%
  [04:15:42.567] Unzip progress: 100% (completed)

This makes it much easier for developers to gather feedback from users
without dealing with massive log files, while maintaining all important
information for debugging.
Comment thread Ksign/Backend/Observable/LogsManager.swift Outdated
Comment thread Ksign/Backend/Observable/LogsManager.swift Outdated
Comment thread Ksign/Backend/Observable/LogsManager.swift Outdated
Comment thread Ksign/Backend/Observable/LogsManager.swift Outdated
Comment thread Ksign/Backend/Observable/LogsModel.swift Outdated
Comment thread Ksign/Views/Settings/Logs/LogsView.swift Outdated
- Remove client-side progress log filtering logic
- Export full log entries without filtering
- Remove timestamps from export to reduce file size
- Remove unused shareItems variable in LogsView
- Use entries.count instead of filteredEntries.count

This simplification allows progress filtering to be handled
at the source level (extraction logging or progress callback)
rather than post-processing during export.
@Am1nCmd

Am1nCmd commented Oct 14, 2025

Copy link
Copy Markdown
Contributor Author

All review comments have been addressed. Ready for re-review.

@Nyasami Nyasami merged commit 12f7c96 into Nyasami:main Oct 14, 2025
@Am1nCmd Am1nCmd deleted the feat/logs-export-enhanced branch October 14, 2025 11:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants