{"level":"info","embedded":true,"time":"2025-12-02T16:22:39+07:00","caller":"C:/WebApps/Dev/STS/backend/cmd/server/main.go:27","message":"Starting Spektrasoft Trucking System"} {"level":"info","time":"2025-12-02T16:22:39+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/services/database.go:40","message":"Database connection established"} {"level":"info","port":"8101","time":"2025-12-02T16:22:40+07:00","caller":"C:/WebApps/Dev/STS/backend/cmd/server/main.go:59","message":"Server starting"} {"level":"info","client_ip":"::1","method":"GET","path":"/","protocol":"HTTP/1.1","status_code":200,"body_size":761,"user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36","latency":26.3706,"timestamp":"2025-12-02T16:23:03+07:00","time":"2025-12-02T16:23:03+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/middleware/logger.go:22","message":"HTTP Request"} {"level":"info","client_ip":"::1","method":"GET","path":"/static/index-0b142fe4.css","protocol":"HTTP/1.1","status_code":200,"body_size":148943,"user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36","latency":367.7735,"timestamp":"2025-12-02T16:23:04+07:00","time":"2025-12-02T16:23:04+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/middleware/logger.go:22","message":"HTTP Request"} {"level":"info","client_ip":"::1","method":"GET","path":"/static/index-d3dd2c1f.js","protocol":"HTTP/1.1","status_code":200,"body_size":1470098,"user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36","latency":494.5051,"timestamp":"2025-12-02T16:23:04+07:00","time":"2025-12-02T16:23:04+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/middleware/logger.go:22","message":"HTTP Request"} {"level":"info","client_ip":"::1","method":"GET","path":"/static/logos-fb810bcb.png","protocol":"HTTP/1.1","status_code":200,"body_size":5523,"user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36","latency":0,"timestamp":"2025-12-02T16:23:05+07:00","time":"2025-12-02T16:23:05+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/middleware/logger.go:22","message":"HTTP Request"} {"level":"info","client_ip":"::1","method":"GET","path":"/favicon.ico","protocol":"HTTP/1.1","status_code":404,"body_size":-1,"user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36","latency":0,"timestamp":"2025-12-02T16:23:05+07:00","time":"2025-12-02T16:23:05+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/middleware/logger.go:22","message":"HTTP Request"} {"level":"info","username":"violendy","device_fingerprint":"707571573","time":"2025-12-02T16:23:13+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/services/auth.go:118","message":"Device-aware login attempt"} {"level":"warn","username":"violendy","time":"2025-12-02T16:23:13+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/services/auth.go:123","message":"User not found or inactive"} {"level":"error","error":"invalid credentials","username":"violendy","time":"2025-12-02T16:23:13+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/handlers/auth_handlers.go:116","message":"Device login failed"} {"level":"info","client_ip":"::1","method":"POST","path":"/api/v1/device-login","protocol":"HTTP/1.1","status_code":401,"body_size":50,"user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36","latency":72.8633,"timestamp":"2025-12-02T16:23:13+07:00","time":"2025-12-02T16:23:13+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/middleware/logger.go:22","message":"HTTP Request"} {"level":"info","username":"vio","device_fingerprint":"707571573","time":"2025-12-02T16:23:18+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/services/auth.go:118","message":"Device-aware login attempt"} {"level":"info","username":"vio","time":"2025-12-02T16:23:18+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/services/auth.go:141","message":"Admin user - skipping device approval"} {"level":"info","username":"vio","user_id":15,"time":"2025-12-02T16:23:18+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/services/auth.go:172","message":"Admin login successful"} {"level":"info","client_ip":"::1","method":"POST","path":"/api/v1/device-login","protocol":"HTTP/1.1","status_code":200,"body_size":417,"user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36","latency":295.431,"timestamp":"2025-12-02T16:23:18+07:00","time":"2025-12-02T16:23:18+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/middleware/logger.go:22","message":"HTTP Request"} {"level":"info","days_threshold":30,"time":"2025-12-02T16:23:18+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/handlers/report_handlers.go:20","message":"Fetching due date report"} {"level":"info","days_threshold":7,"jenis_invoice":"","kode_cust":"","time":"2025-12-02T16:23:18+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/handlers/report_handlers.go:57","message":"Fetching invoice due date report"} {"level":"info","client_ip":"::1","method":"GET","path":"/api/v1/master/setting","protocol":"HTTP/1.1","status_code":200,"body_size":9954,"user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36","latency":95.3447,"timestamp":"2025-12-02T16:23:18+07:00","time":"2025-12-02T16:23:18+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/middleware/logger.go:22","message":"HTTP Request"} {"level":"info","client_ip":"::1","method":"GET","path":"/api/v1/user/profile","protocol":"HTTP/1.1","status_code":200,"body_size":258,"user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36","latency":93.4969,"timestamp":"2025-12-02T16:23:18+07:00","time":"2025-12-02T16:23:18+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/middleware/logger.go:22","message":"HTTP Request"} {"level":"info","client_ip":"::1","method":"GET","path":"/health","protocol":"HTTP/1.1","status_code":200,"body_size":131,"user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36","latency":111.4894,"timestamp":"2025-12-02T16:23:18+07:00","time":"2025-12-02T16:23:18+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/middleware/logger.go:22","message":"HTTP Request"} {"level":"info","client_ip":"::1","method":"GET","path":"/api/v1/reports/due-dates?days_threshold=30","protocol":"HTTP/1.1","status_code":200,"body_size":500,"user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36","latency":126.4511,"timestamp":"2025-12-02T16:23:18+07:00","time":"2025-12-02T16:23:18+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/middleware/logger.go:22","message":"HTTP Request"} {"level":"info","client_ip":"::1","method":"GET","path":"/api/v1/dashboard/stats","protocol":"HTTP/1.1","status_code":200,"body_size":177,"user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36","latency":133.4175,"timestamp":"2025-12-02T16:23:18+07:00","time":"2025-12-02T16:23:18+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/middleware/logger.go:22","message":"HTTP Request"} {"level":"info","client_ip":"::1","method":"GET","path":"/api/v1/reports/invoice-due-dates?days_threshold=7","protocol":"HTTP/1.1","status_code":200,"body_size":17674,"user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36","latency":126.6397,"timestamp":"2025-12-02T16:23:18+07:00","time":"2025-12-02T16:23:18+07:00","caller":"C:/WebApps/Dev/STS/backend/internal/middleware/logger.go:22","message":"HTTP Request"} {"level":"info","time":"2025-12-02T16:23:41+07:00","caller":"C:/WebApps/Dev/STS/backend/cmd/server/main.go:69","message":"Shutting down server..."} {"level":"info","time":"2025-12-02T16:23:41+07:00","caller":"C:/WebApps/Dev/STS/backend/cmd/server/main.go:79","message":"Server exited"}