AvoidUsingEmptyCatchBlock

Tingkat Keparahan : Peringatan

Status default: Selalu diaktifkan

Description

Aturan ini mendeteksi blok kosong catch . Blok tangkapan kosong bermasalah karena secara diam-diam menekan pengecualian tanpa tindakan penanganan, pengelogan, atau pemulihan kesalahan. Ini dapat menutupi bug dan membuat pemecahan masalah menjadi sulit. Selalu tangani pengecualian secara eksplisit dengan menggunakan Write-Error untuk mencatat kesalahan, menyebarkannya, throw atau memberikan logika pemulihan yang sesuai dalam blok tangkapan.

Example

Tidak sesuai

try
{
    1/0
}
catch [DivideByZeroException]
{
}

Sesuai

try
{
    1/0
}
catch [DivideByZeroException]
{
    Write-Error 'DivideByZeroException'
}

try
{
    1/0
}
catch [DivideByZeroException]
{
    throw 'DivideByZeroException'
}

Mengonfigurasi aturan

Aturan ini selalu diaktifkan dan tidak dapat dikonfigurasi. Gunakan salah satu metode berikut untuk menghindari penggunaan aturan ini:

  • Buat file konfigurasi aturan kustom untuk hanya menyertakan aturan yang Anda inginkan atau kecualikan aturan yang tidak Anda inginkan.
  • Tambahkan atribut penekanan aturan yang sesuai ke kode Anda untuk menekan aturan untuk blok kode tertentu. Untuk informasi selengkapnya, lihat bagian Menekan aturanMenggunakan PSScriptAnalyzer.