mirror of
https://github.com/borgbase/vorta
synced 2024-12-21 23:33:13 +00:00
Add link to the logs folder in borg warnings (#1609)
In case a borg job finishes with warning, vorta will display it and tell the user to have a look in the logs. This adds a clickable link to the log message that opens the default file explorer at the log location. * src/vorta/application.py (VortaApp.check_failed_response): Improve wording of warning message and link logs. * src/vorta/borg/create.py (BorgCreateJob.process_result): Link logs. * src/vorta/borg/compact.py (BorgCompactJob.finished_event): ^^ * src/vorta/borg/check.py (BorgCheckJob.finished_event): ^^ * src/vorta/assets/UI/mainwindow.ui : Enable `openExternalLinks` for `progressText` label.
This commit is contained in:
parent
961e0b5057
commit
6bc532187b
5 changed files with 29 additions and 7 deletions
|
@ -9,7 +9,7 @@
|
|||
from vorta.borg.create import BorgCreateJob
|
||||
from vorta.borg.jobs_manager import JobsManager
|
||||
from vorta.borg.version import BorgVersionJob
|
||||
from vorta.config import PROFILE_BOOTSTRAP_FILE, TEMP_DIR
|
||||
from vorta.config import LOG_DIR, PROFILE_BOOTSTRAP_FILE, TEMP_DIR
|
||||
from vorta.i18n import init_translations, translate
|
||||
from vorta.notifications import VortaNotifications
|
||||
from vorta.profile_export import ProfileExport
|
||||
|
@ -326,7 +326,9 @@ def check_failed_response(self, result: Dict[str, Any]):
|
|||
if returncode == 1:
|
||||
# warning
|
||||
msg.setIcon(QMessageBox.Icon.Warning)
|
||||
text = self.tr('Borg exited with a warning message. See logs for details.')
|
||||
text = translate(
|
||||
'VortaApp', 'Borg exited with warning status (rc 1). See the <a href="{0}">logs</a> for details.'
|
||||
).format(LOG_DIR.as_uri())
|
||||
infotext = error_message
|
||||
elif returncode > 128:
|
||||
# 128+N - killed by signal N (e.g. 137 == kill -9)
|
||||
|
|
|
@ -208,6 +208,9 @@
|
|||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="openExternalLinks">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1" alignment="Qt::AlignTop">
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
from typing import Any, Dict
|
||||
from vorta.config import LOG_DIR
|
||||
from vorta.i18n import translate
|
||||
from vorta.utils import borg_compat
|
||||
from .borg_job import BorgJob
|
||||
|
||||
|
@ -20,7 +22,11 @@ def finished_event(self, result: Dict[str, Any]):
|
|||
self.app.backup_finished_event.emit(result)
|
||||
self.result.emit(result)
|
||||
if result['returncode'] != 0:
|
||||
self.app.backup_progress_event.emit(self.tr('Repo check failed. See logs for details.'))
|
||||
self.app.backup_progress_event.emit(
|
||||
translate('RepoCheckJob', 'Repo check failed. See the <a href="{0}">logs</a> for details.').format(
|
||||
LOG_DIR.as_uri()
|
||||
)
|
||||
)
|
||||
self.app.check_failed_event.emit(result)
|
||||
else:
|
||||
self.app.backup_progress_event.emit(self.tr('Check completed.'))
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
from typing import Any, Dict
|
||||
from vorta.i18n import trans_late
|
||||
from vorta.config import LOG_DIR
|
||||
from vorta.i18n import trans_late, translate
|
||||
from vorta.utils import borg_compat
|
||||
from .borg_job import BorgJob
|
||||
|
||||
|
@ -21,7 +22,11 @@ def finished_event(self, result: Dict[str, Any]):
|
|||
self.app.backup_finished_event.emit(result)
|
||||
self.result.emit(result)
|
||||
if result['returncode'] != 0:
|
||||
self.app.backup_progress_event.emit(self.tr('Errors during compaction. See logs for details.'))
|
||||
self.app.backup_progress_event.emit(
|
||||
translate(
|
||||
'BorgCompactJob', 'Errors during compaction. See the <a href="{0}">logs</a> for details.'
|
||||
).format(LOG_DIR.as_uri())
|
||||
)
|
||||
else:
|
||||
self.app.backup_progress_event.emit(self.tr('Compaction completed.'))
|
||||
|
||||
|
|
|
@ -2,7 +2,8 @@
|
|||
import subprocess
|
||||
import tempfile
|
||||
from datetime import datetime as dt
|
||||
from vorta.i18n import trans_late
|
||||
from vorta.config import LOG_DIR
|
||||
from vorta.i18n import trans_late, translate
|
||||
from vorta.store.models import ArchiveModel, RepoModel, SourceFileModel, WifiSettingModel
|
||||
from vorta.utils import borg_compat, format_archive_name, get_network_status_monitor
|
||||
from .borg_job import BorgJob
|
||||
|
@ -33,7 +34,12 @@ def process_result(self, result):
|
|||
repo.save()
|
||||
|
||||
if result['returncode'] == 1:
|
||||
self.app.backup_progress_event.emit(self.tr('Backup finished with warnings. See logs for details.'))
|
||||
self.app.backup_progress_event.emit(
|
||||
translate(
|
||||
'BorgCreateJob',
|
||||
'Backup finished with warnings. See the <a href="{0}">logs</a> for details.',
|
||||
).format(LOG_DIR.as_uri())
|
||||
)
|
||||
else:
|
||||
self.app.backup_progress_event.emit(self.tr('Backup finished.'))
|
||||
|
||||
|
|
Loading…
Reference in a new issue