# 🔧 Troubleshooting Dashboard

Login Timeout Error Resolution Guide

## Error Detected

Error Message:

`Gagal terhubung ke database. SQL Server tidak berjalan atau tidak dapat diakses.
Error: [Microsoft][ODBC Driver 17 for SQL Server]Login timeout expired`

Meaning: Aplikasi tidak dapat terhubung ke SQL Server dalam waktu yang ditentukan (timeout).

## 🛠️ Diagnostic Tools

Gunakan tools berikut untuk mengidentifikasi dan memperbaiki masalah:

### ⚡ Quick Test

Test koneksi database dengan cepat

Run Quick Test

### 🔍 Advanced Diagnostic

Diagnostic lengkap dengan detail error

Run Diagnostic

### 🔐 Back to Login

Kembali ke halaman login

Go to Login

## 📋 Langkah-langkah Troubleshooting

1

### Run Diagnostic Tool

Jalankan Quick Connection Test untuk mengidentifikasi masalah spesifik

Quick Test
2

### Check SQLSRV Extension

Pastikan Microsoft Drivers for PHP for SQL Server terinstall dengan benar

3

### Test Network Connectivity

Buka Command Prompt dan test:

`ping 103.133.223.211 (Pengapon)
ping 103.133.223.212 (Rewulu)`
4

### Check SQL Server Service

Pastikan SQL Server service berjalan di server target

5

### Review Results & Apply Fixes

Ikuti solusi spesifik berdasarkan hasil diagnostic tool

## 💡 Common Solutions

### 🔌 Connection Timeout

- SQL Server tidak berjalan
- Firewall memblokir port 1433
- Server tidak dapat dijangkau
- Network latency tinggi

### 🔐 Authentication Failed

- Username/password salah
- User tidak ada di database
- Mixed Mode tidak aktif
- Permission ditolak

### ⚙️ Configuration Issues

- TCP/IP protocol disabled
- Named Pipes tidak aktif
- Wrong server address
- Database tidak ditemukan

### 🛡️ Firewall & Network

- Windows Firewall blocking
- Network firewall rules
- VPN diperlukan tapi tidak aktif
- DNS resolution issue

## ✅ Perbaikan yang Telah Diterapkan

### 1. Increased Connection Timeout

Connection timeout ditingkatkan dari default (15s) menjadi 30 detik dengan auto-retry mechanism (3x retry dengan interval 10 detik)

### 2. Enhanced Error Handling

Error messages sekarang lebih spesifik dan memberikan petunjuk solusi berdasarkan tipe error yang terjadi

### 3. Diagnostic Tools Created

Dua diagnostic tools telah dibuat untuk membantu troubleshooting: Quick Test dan Advanced Diagnostic

### 4. Documentation & Guide

Panduan lengkap troubleshooting tersedia di `TROUBLESHOOTING_LOGIN_TIMEOUT.md`

## 🚀 Ready to Test?

Mulai dengan menjalankan Quick Connection Test

🔍 Run Quick Connection Test