Extend Synology Active Backup for Business parser for skipped tasks
Extended the parser to recognize backup tasks that were skipped/ignored because a previous backup was still running. These are treated as Warning status for monitoring purposes. Changes: - Extended _ABB_COMPLETED_RE regex to match "genegeerd" (NL) and "skipped"/"ignored" (EN) - Added "van deze taak" pattern for Dutch phrasing variations - Added status detection for skipped tasks (Warning with "Skipped" message) - All existing patterns remain functional (backward compatible) - Updated changelog Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
b4aa7ef2f6
commit
5549323ff2
@ -185,12 +185,14 @@ _ABB_SUBJECT_RE = re.compile(r"\bactive\s+backup\s+for\s+business\b", re.I)
|
|||||||
# Examples (NL):
|
# Examples (NL):
|
||||||
# "De back-uptaak vSphere-Task-1 op KANTOOR-NEW is voltooid."
|
# "De back-uptaak vSphere-Task-1 op KANTOOR-NEW is voltooid."
|
||||||
# "Virtuele machine back-uptaak vSphere-Task-1 op KANTOOR-NEW is gedeeltelijk voltooid."
|
# "Virtuele machine back-uptaak vSphere-Task-1 op KANTOOR-NEW is gedeeltelijk voltooid."
|
||||||
|
# "back-uptaak vSphere-Task-1 op KANTOOR-NEW is genegeerd"
|
||||||
# Examples (EN):
|
# Examples (EN):
|
||||||
# "The backup task vSphere-Task-1 on KANTOOR-NEW has completed."
|
# "The backup task vSphere-Task-1 on KANTOOR-NEW has completed."
|
||||||
# "Virtual machine backup task vSphere-Task-1 on KANTOOR-NEW partially completed."
|
# "Virtual machine backup task vSphere-Task-1 on KANTOOR-NEW partially completed."
|
||||||
|
# "backup task vSphere-Task-1 on KANTOOR-NEW was skipped"
|
||||||
_ABB_COMPLETED_RE = re.compile(
|
_ABB_COMPLETED_RE = re.compile(
|
||||||
r"\b(?:virtuele\s+machine\s+)?(?:de\s+)?back-?up\s*taak\s+(?P<job>.+?)\s+op\s+(?P<host>[A-Za-z0-9._-]+)\s+is\s+(?P<status>voltooid|gedeeltelijk\s+voltooid)\b"
|
r"\b(?:virtuele\s+machine\s+)?(?:de\s+)?back-?up\s*(?:taak|job)\s+(?:van\s+deze\s+taak\s+)?(?P<job>.+?)\s+op\s+(?P<host>[A-Za-z0-9._-]+)\s+is\s+(?P<status>voltooid|gedeeltelijk\s+voltooid|genegeerd)\b"
|
||||||
r"|\b(?:virtual\s+machine\s+)?(?:the\s+)?back-?up\s+task\s+(?P<job_en>.+?)\s+on\s+(?P<host_en>[A-Za-z0-9._-]+)\s+(?:is\s+)?(?P<status_en>completed|finished|has\s+completed|partially\s+completed)\b",
|
r"|\b(?:virtual\s+machine\s+)?(?:the\s+)?back-?up\s+(?:task|job)\s+(?P<job_en>.+?)\s+on\s+(?P<host_en>[A-Za-z0-9._-]+)\s+(?:is\s+|was\s+)?(?P<status_en>completed|finished|has\s+completed|partially\s+completed|skipped|ignored)\b",
|
||||||
re.I,
|
re.I,
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -242,6 +244,11 @@ def _parse_active_backup_for_business(subject: str, text: str) -> Tuple[bool, Di
|
|||||||
overall_status = "Warning"
|
overall_status = "Warning"
|
||||||
overall_message = "Partially completed"
|
overall_message = "Partially completed"
|
||||||
|
|
||||||
|
# "genegeerd" / "skipped" / "ignored" should be treated as Warning
|
||||||
|
if "genegeerd" in status_raw or "skipped" in status_raw or "ignored" in status_raw:
|
||||||
|
overall_status = "Warning"
|
||||||
|
overall_message = "Skipped"
|
||||||
|
|
||||||
# Explicit failure wording overrides everything
|
# Explicit failure wording overrides everything
|
||||||
if _ABB_FAILED_RE.search(haystack):
|
if _ABB_FAILED_RE.search(haystack):
|
||||||
overall_status = "Error"
|
overall_status = "Error"
|
||||||
|
|||||||
@ -10,6 +10,7 @@ This file documents all changes made to this project via Claude Code.
|
|||||||
- Added "Generate test emails" feature in Settings → Maintenance with three separate buttons to create fixed test email sets (success/warning/error) in inbox for testing parsers and maintenance operations (each set contains exactly 3 Veeam Backup Job emails with the same job name "Test-Backup-Job" and different dates/objects/statuses for reproducible testing and proper status flow testing)
|
- Added "Generate test emails" feature in Settings → Maintenance with three separate buttons to create fixed test email sets (success/warning/error) in inbox for testing parsers and maintenance operations (each set contains exactly 3 Veeam Backup Job emails with the same job name "Test-Backup-Job" and different dates/objects/statuses for reproducible testing and proper status flow testing)
|
||||||
- Added parser registry entry for Synology DSM automatic update cancelled notifications (backup software: Synology, backup type: Updates, informational only, no schedule learning)
|
- Added parser registry entry for Synology DSM automatic update cancelled notifications (backup software: Synology, backup type: Updates, informational only, no schedule learning)
|
||||||
- Extended Synology DSM update parser with additional detection patterns ("Automatische DSM-update", "DSM-update op", "Packages on", "out-of-date", "Package Center", "new DSM update", "Auto Update has detected", "Update & Restore") and hostname extraction regex to recognize DSM update cancelled, out-of-date packages, and new update available notifications under same Updates job type while maintaining backward compatibility with existing patterns
|
- Extended Synology DSM update parser with additional detection patterns ("Automatische DSM-update", "DSM-update op", "Packages on", "out-of-date", "Package Center", "new DSM update", "Auto Update has detected", "Update & Restore") and hostname extraction regex to recognize DSM update cancelled, out-of-date packages, and new update available notifications under same Updates job type while maintaining backward compatibility with existing patterns
|
||||||
|
- Extended Synology Active Backup for Business parser to recognize skipped/ignored backup tasks ("genegeerd", "skipped", "ignored") as Warning status when backup was skipped due to previous backup still running
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
- Removed customer name from Autotask ticket title to keep titles concise (format changed from "[Backupchecks] Customer - Job Name - Status" to "[Backupchecks] Job Name - Status")
|
- Removed customer name from Autotask ticket title to keep titles concise (format changed from "[Backupchecks] Customer - Job Name - Status" to "[Backupchecks] Job Name - Status")
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user