Skrip Batch - Penggunaan Log

Hai, para pemrogram yang sedang belajar! Hari ini, kita akan melihat dunia penggunaan log dalam Skrip Batch. Seperti teman komputer yang ramah di lingkungan sekitar Anda, saya sangat gembira untuk mengajak Anda melalui topik penting ini. Percayalah, setelah Anda menguasai penggunaan log, Anda akan merasa seperti seorang detektif pemrograman yang sebenarnya, selalu satu langkah di depan dari para bug yang merusak!

Batch Script - Logging

Apa Itu Log?

Sebelum kita masuk ke dalam hal yang teknis, mari kita pahami apa itu log. Bayangkan Anda sedang membuat kue ( ikuti saya disini, saya berjanji ini berhubungan dengan pemrograman! ). Anda mungkin akan menuliskan setiap langkah yang Anda lakukan, kan? Itu sebenarnya apa arti log dalam pemrograman. Ini adalah cara untuk mencatat apa yang sedang terjadi dalam skrip Anda saat itu berjalan.

Log membantu Anda:

  1. Mendebbug kode Anda
  2. Melacak aliran skrip Anda
  3. Memantau kinerja
  4. Menyimpan catatan peristiwa penting

Sekarang, mari kita mulai dan mulai mengoding!

Sintaks

Dalam pemrograman Batch, penggunaan log biasanya dilakukan menggunakan perintah echo dan pengalihan output. Ini adalah sintaks dasar:

echo [pesan] >> [file_log]

mari kitauraikan ini:

  • echo: Perintah ini menampilkan pesan.
  • [pesan]: Ini adalah apa yang Anda ingin catat.
  • >>: Simbol ini mengalihkan output ke sebuah file, menambahkan kepadanya jika file itu sudah ada.
  • [file_log]: Ini adalah nama file log Anda.

Cukup mudah, kan? Tetapi tunggu, ada lebih lagi!

Metode Log

Berikut adalah tabel metode log yang berbeda yang Anda dapat gunakan dalam Skrip Batch:

Metode Sintaks Deskripsi
Menambahkan ke log echo [pesan] >> [file_log] Menambahkan pesan ke akhir file log
Menimpa log echo [pesan] > [file_log] Menimpa file log dengan pesan baru
Cap Tanggal dan Waktu echo %date% %time% [pesan] >> [file_log] Catat dengan tanggal dan waktu
Log Error command 2>> [error_log] Mengalihkan output kesalahan ke file log terpisah
Log Detil echo [pesan_detil] >> [verbose_log] Catat informasi lebih detil

Contoh

Sekarang, mari kita lihat beberapa contoh untuk melihat metode ini dalam tindakan!

Contoh 1: Log Dasar

@echo off
echo Memulai skrip... >> log.txt
echo Melakukan Tugas 1... >> log.txt
echo Tugas 1 selesai. >> log.txt
echo Skrip selesai. >> log.txt

Dalam contoh ini, kita menciptakan log sederhana dari kemajuan skrip kita. Setiap perintah echo menambahkan baris baru ke file log.txt.

Contoh 2: Log Dengan Tanggal dan Waktu

@echo off
echo %date% %time% - Skrip dimulai >> log.txt
echo %date% %time% - Melakukan tugas penting >> log.txt
ping localhost -n 5 > nul
echo %date% %time% - Tugas selesai >> log.txt

Di sini, kita menambahkan cap tanggal dan waktu ke entri log kita. Perintah ping hanya disana untuk mensimulasikan pekerjaan yang dilakukan.

Contoh 3: Log Kesalahan

@echo off
echo Memulai skrip... >> log.txt
dir C:\NonExistentFolder 2>> error.log
echo Skrip selesai. >> log.txt

Dalam contoh ini, kita mengalihkan semua pesan kesalahan ke file error.log terpisah. Sintaks 2>> secara khusus mengalihkan output kesalahan.

Contoh 4: Log Detil

@echo off
setlocal enabledelayedexpansion

set "verbose_mode=true"

:log
if "%verbose_mode%"=="true" (
echo %date% %time% - %* >> verbose.log
)
goto :eof

call :log Skrip dimulai
call :log Melakukan Tugas 1
ping localhost -n 3 > nul
call :log Tugas 1 selesai
call :log Skrip selesai

Contoh ini memperkenalkan fungsi log khusus yang hanya log saat mode detil diaktifkan. Ini lebih advanced, tetapi sangat berguna untuk debugging detil!

Output

Sekarang, mari kita lihat seperti apa file log kita mungkin terlihat setelah menjalankan script ini.

log.txt (dari Contoh 1):

Memulai skrip...
Melakukan Tugas 1...
Tugas 1 selesai.
Skrip selesai.

log.txt (dari Contoh 2):

Rab 06/07/2023 15:30:45.32 - Skrip dimulai
Rab 06/07/2023 15:30:45.32 - Melakukan tugas penting
Rab 06/07/2023 15:30:50.48 - Tugas selesai

error.log (dari Contoh 3):

File Not Found

verbose.log (dari Contoh 4):

Rab 06/07/2023 15:35:12.18 - Skrip dimulai
Rab 06/07/2023 15:35:12.18 - Melakukan Tugas 1
Rab 06/07/2023 15:35:15.33 - Tugas 1 selesai
Rab 06/07/2023 15:35:15.33 - Skrip selesai

Dan itu dia, teman-teman! Anda baru saja menjadi ahli log dalam skrip Batch. Ingat, log yang bagus adalah seperti meninggalkan jejakpiring dalam kode Anda - itu membantu Anda menemukan jalan kembali saat sesuatu menyimpang.

Sebagai penutup, mari kita bermain sedikit humor pemrograman: Mengapa pemrogram memilih mode gelap? Karena cahaya menarik perhatian bug!

Teruslatih, tetap curiga, dan selamat coding!

Credits: Image by storyset