No logging at all
Що стається:
не зрозуміло, що відбувається
Причина:
відсутність логів
🛠 Rescue:
Start-Transcript
Stop-Transcript
Ідея:
лог = історія скрипта
Ignoring error output
Що стається:
помилки “проходять повз”
Причина:
не аналізується stderr
🛠 Rescue:
$Error[0]
$ErrorActionPreference = "Stop"
Ідея:
помилка — це підказка
No Try/Catch
Що стається:
скрипт падає без контролю
Причина:
нема обробки помилок
🛠 Rescue:
Try { } Catch { }
Ідея:
контроль над падінням
Silent failures
Що стається:
команда не працює, але мовчить
Причина:
ErrorAction SilentlyContinue
🛠 Rescue:
не приховувати помилки
Ідея:
тиша — найгірший ворог
No step-by-step tracing
Що стається:
не видно, де зламалось
Причина:
нема логування кроків
🛠 Rescue:
Write-Host "Step X"
Ідея:
розбий процес на етапи
Debugging entire script at once
Що стається:
важко знайти проблему
Причина:
великий обсяг
🛠 Rescue:
тестувати частинами
Ідея:
divide and conquer
No timing analysis
Що стається:
не видно, де затримка
Причина:
нема вимірювання
🛠 Rescue:
Measure-Command
Ідея:
час = підказка
Overwriting logs
Що стається:
втрата історії
Причина:
лог перезаписується
🛠 Rescue:
додавання timestamp
Ідея:
лог має жити довше за проблему
No verbose/debug output
Що стається:
нема деталей
Причина:
скрипт “тихий”
🛠 Rescue:
-Verbose / Write-Verbose
Ідея:
деталі = розуміння
Trusting success message blindly
Що стається:
“Success” ≠ реально success
Причина:
нема перевірки результату
🛠 Rescue:
перевірка результатів явно
Ідея:
довіряй, але перевіряй
☕ Золоте правило дебагу
Якщо ти не бачиш, що відбувається —
ти не контролюєш процес.😄