🔹 1. Pengertian Log
Aktivitas
Log aktivitas adalah catatan semua aktivitas yang terjadi
di dalam sistem, seperti:
- Login
/ logout user
- Menambah
data
- Mengedit
data
- Menghapus
data
- Akses
halaman tertentu
🔹 2. Struktur Data
(Database)
Buat tabel khusus, misalnya: activity_log
CREATE TABLE activity_log (
id INT AUTO_INCREMENT PRIMARY KEY,
user_id INT,
aktivitas VARCHAR(255),
keterangan TEXT,
ip_address VARCHAR(50),
user_agent TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
Penjelasan:
- user_id
→ siapa yang melakukan
- aktivitas
→ jenis aktivitas (login, tambah data, dll)
- keterangan
→ detail aktivitas
- ip_address
→ alamat IP user
- user_agent
→ browser/device
- created_at
→ waktu kejadian
🔹 3. Contoh Implementasi
(PHP Native)
🔸 Fungsi untuk menyimpan
log
function simpanLog($user_id, $aktivitas, $keterangan) {
global $koneksi;
$ip = $_SERVER['REMOTE_ADDR'];
$user_agent =
$_SERVER['HTTP_USER_AGENT'];
$query = "INSERT INTO
activity_log
(user_id, aktivitas,
keterangan, ip_address, user_agent)
VALUES
('$user_id', '$aktivitas',
'$keterangan', '$ip', '$user_agent')";
mysqli_query($koneksi, $query);
}
🔸 Contoh penggunaan
Saat login berhasil:
simpanLog($user_id, "LOGIN", "User berhasil
login");
Saat tambah data:
simpanLog($user_id, "TAMBAH DATA",
"Menambahkan data siswa");
Saat hapus data:
simpanLog($user_id, "HAPUS DATA", "Menghapus
data produk ID: 10");
🔹 4. Menampilkan Log
Aktivitas
$query = mysqli_query($koneksi, "SELECT * FROM
activity_log ORDER BY created_at DESC");
while($data = mysqli_fetch_assoc($query)) {
echo $data['created_at']." -
".$data['aktivitas']." - ".$data['keterangan']."<br>";
}
🔹 5. Pengembangan Lebih
Lanjut 🚀
Agar lebih profesional, bisa ditambahkan:
✅ Filter log
- Berdasarkan
tanggal
- Berdasarkan
user
- Berdasarkan
aktivitas
✅ Pagination
Agar tidak berat saat data banyak
✅ Level log
- INFO
→ aktivitas biasa
- WARNING
→ aktivitas mencurigakan
- ERROR
→ kesalahan sistem
✅ Integrasi Framework
Jika pakai:
- Laravel
→ gunakan built-in logging (Log::info())
- CodeIgniter
→ gunakan log_message()
🔹 6. Tips Best Practice 🔐
- Jangan
simpan password di log
- Batasi
akses log (hanya admin)
- Backup
log secara berkala
- Gunakan
index pada kolom created_at untuk performa
🔹 7. Contoh Output Log
2026-04-07 08:00:01 - LOGIN - User berhasil login
2026-04-07 08:05:10 - TAMBAH DATA - Menambahkan data siswa
2026-04-07 08:10:22 - HAPUS DATA - Menghapus data ID 5
3. panggil fungsi log di semua aktivitas baik login , tambah data, edit dan hapus.
4. uji coba proses login berhasil dan gagal di browser ( crome )
Tidak ada komentar:
Posting Komentar