{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 09:53:16"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 09:54:00"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 09:54:00"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":1252,"timestamp":"2025-07-15 09:54:00"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 09:54:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 09:54:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 1230 ms.","timestamp":"2025-07-15 09:54:01"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 09:54:01"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 09:55:01"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 160 ms.","timestamp":"2025-07-15 09:55:01"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 09:55:07"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 09:55:52"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 09:55:56"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 09:56:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 57 ms.","timestamp":"2025-07-15 09:56:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 09:57:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 97 ms.","timestamp":"2025-07-15 09:57:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 09:58:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 103 ms.","timestamp":"2025-07-15 09:58:00"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 09:58:45"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 09:58:45"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 09:58:46"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 09:58:50"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 09:58:54"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 09:58:54"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":5604,"timestamp":"2025-07-15 09:58:54"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 09:58:54"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 09:59:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 736 ms.","timestamp":"2025-07-15 09:59:00"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 09:59:06"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:00:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 120 ms.","timestamp":"2025-07-15 10:00:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:01:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 72 ms.","timestamp":"2025-07-15 10:01:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:02:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 102 ms.","timestamp":"2025-07-15 10:02:01"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:02:57"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:02:57"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:02:59"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:03:06"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:03:11"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:03:11"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":14112,"timestamp":"2025-07-15 10:03:11"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:03:11"}
{"error":{},"level":"error","message":"[Function-LOG] GET :  Cannot read properties of undefined (reading 'query')","stack":"TypeError: Cannot read properties of undefined (reading 'query')\n    at exports.getLogData (F:\\dev\\nodejs\\invoiceGenerate\\controllers\\logController.js:33:17)\n    at generateSimulatedData (F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:38:35)\n    at F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:107:21\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:137:13)\n    at Route.dispatch (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:112:3)\n    at patched (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\@opentelemetry+instrumentat_2264e4d6cb3be9b70b2f9c2feec742f3\\node_modules\\@opentelemetry\\instrumentation-express\\build\\src\\instrumentation.js:209:37)\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:281:22\n    at Function.process_params (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:335:12)","timestamp":"2025-07-15 10:03:28"}
{"date":"Tue Jul 15 2025 10:03:28 GMT+0700 (Western Indonesia Time)","error":{},"level":"error","message":"unhandledRejection: Cannot read properties of undefined (reading 'json')\nTypeError: Cannot read properties of undefined (reading 'json')\n    at exports.getLogData (F:\\dev\\nodejs\\invoiceGenerate\\controllers\\logController.js:95:13)\n    at generateSimulatedData (F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:38:35)\n    at F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:107:21\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:137:13)\n    at Route.dispatch (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:112:3)\n    at patched (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\@opentelemetry+instrumentat_2264e4d6cb3be9b70b2f9c2feec742f3\\node_modules\\@opentelemetry\\instrumentation-express\\build\\src\\instrumentation.js:209:37)\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:281:22\n    at Function.process_params (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:335:12)","os":{"loadavg":[0,0,0],"uptime":6295.031},"process":{"argv":["C:\\nvm4w\\nodejs\\node.exe","F:\\dev\\nodejs\\invoiceGenerate\\bin\\www"],"cwd":"F:\\dev\\nodejs\\invoiceGenerate","execPath":"C:\\nvm4w\\nodejs\\node.exe","gid":null,"memoryUsage":{"arrayBuffers":175285,"external":3717183,"heapTotal":82018304,"heapUsed":43337696,"rss":124919808},"pid":14112,"uid":null,"version":"v20.19.3"},"rejection":true,"stack":"TypeError: Cannot read properties of undefined (reading 'json')\n    at exports.getLogData (F:\\dev\\nodejs\\invoiceGenerate\\controllers\\logController.js:95:13)\n    at generateSimulatedData (F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:38:35)\n    at F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:107:21\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:137:13)\n    at Route.dispatch (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:112:3)\n    at patched (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\@opentelemetry+instrumentat_2264e4d6cb3be9b70b2f9c2feec742f3\\node_modules\\@opentelemetry\\instrumentation-express\\build\\src\\instrumentation.js:209:37)\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:281:22\n    at Function.process_params (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:335:12)","timestamp":"2025-07-15 10:03:28","trace":[{"column":13,"file":"F:\\dev\\nodejs\\invoiceGenerate\\controllers\\logController.js","function":"exports.getLogData","line":95,"method":"getLogData","native":false},{"column":35,"file":"F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js","function":"generateSimulatedData","line":38,"method":null,"native":false},{"column":21,"file":"F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js","function":null,"line":107,"method":null,"native":false},{"column":5,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js","function":"Layer.handle [as handle_request]","line":95,"method":"handle [as handle_request]","native":false},{"column":13,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js","function":"next","line":137,"method":null,"native":false},{"column":3,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js","function":"Route.dispatch","line":112,"method":"dispatch","native":false},{"column":37,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\@opentelemetry+instrumentat_2264e4d6cb3be9b70b2f9c2feec742f3\\node_modules\\@opentelemetry\\instrumentation-express\\build\\src\\instrumentation.js","function":"patched","line":209,"method":null,"native":false},{"column":5,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js","function":"Layer.handle [as handle_request]","line":95,"method":"handle [as handle_request]","native":false},{"column":22,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js","function":null,"line":281,"method":null,"native":false},{"column":12,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js","function":"Function.process_params","line":335,"method":"process_params","native":false}]}
{"level":"error","message":"GLOBAL_UNHANDLED_REJECTION Cannot read properties of undefined (reading 'json')","pid":14112,"promise":"{}","stack":"TypeError: Cannot read properties of undefined (reading 'json')\n    at exports.getLogData (F:\\dev\\nodejs\\invoiceGenerate\\controllers\\logController.js:95:13)\n    at generateSimulatedData (F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:38:35)\n    at F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:107:21\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:137:13)\n    at Route.dispatch (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:112:3)\n    at patched (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\@opentelemetry+instrumentat_2264e4d6cb3be9b70b2f9c2feec742f3\\node_modules\\@opentelemetry\\instrumentation-express\\build\\src\\instrumentation.js:209:37)\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:281:22\n    at Function.process_params (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:335:12)","timestamp":"2025-07-15 10:03:28","type":"UnhandledRejection"}
{"date":"Tue Jul 15 2025 10:03:28 GMT+0700 (Western Indonesia Time)","error":{},"level":"error","message":"unhandledRejection: Assignment to constant variable.\nTypeError: Assignment to constant variable.\n    at generateSimulatedData (F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:38:19)\n    at F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:107:21\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:137:13)\n    at Route.dispatch (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:112:3)\n    at patched (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\@opentelemetry+instrumentat_2264e4d6cb3be9b70b2f9c2feec742f3\\node_modules\\@opentelemetry\\instrumentation-express\\build\\src\\instrumentation.js:209:37)\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:281:22\n    at Function.process_params (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:335:12)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:275:10)","os":{"loadavg":[0,0,0],"uptime":6295.125},"process":{"argv":["C:\\nvm4w\\nodejs\\node.exe","F:\\dev\\nodejs\\invoiceGenerate\\bin\\www"],"cwd":"F:\\dev\\nodejs\\invoiceGenerate","execPath":"C:\\nvm4w\\nodejs\\node.exe","gid":null,"memoryUsage":{"arrayBuffers":192097,"external":3734035,"heapTotal":82280448,"heapUsed":43924752,"rss":124993536},"pid":14112,"uid":null,"version":"v20.19.3"},"rejection":true,"stack":"TypeError: Assignment to constant variable.\n    at generateSimulatedData (F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:38:19)\n    at F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:107:21\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:137:13)\n    at Route.dispatch (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:112:3)\n    at patched (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\@opentelemetry+instrumentat_2264e4d6cb3be9b70b2f9c2feec742f3\\node_modules\\@opentelemetry\\instrumentation-express\\build\\src\\instrumentation.js:209:37)\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:281:22\n    at Function.process_params (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:335:12)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:275:10)","timestamp":"2025-07-15 10:03:28","trace":[{"column":19,"file":"F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js","function":"generateSimulatedData","line":38,"method":null,"native":false},{"column":21,"file":"F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js","function":null,"line":107,"method":null,"native":false},{"column":5,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js","function":"Layer.handle [as handle_request]","line":95,"method":"handle [as handle_request]","native":false},{"column":13,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js","function":"next","line":137,"method":null,"native":false},{"column":3,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js","function":"Route.dispatch","line":112,"method":"dispatch","native":false},{"column":37,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\@opentelemetry+instrumentat_2264e4d6cb3be9b70b2f9c2feec742f3\\node_modules\\@opentelemetry\\instrumentation-express\\build\\src\\instrumentation.js","function":"patched","line":209,"method":null,"native":false},{"column":5,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js","function":"Layer.handle [as handle_request]","line":95,"method":"handle [as handle_request]","native":false},{"column":22,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js","function":null,"line":281,"method":null,"native":false},{"column":12,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js","function":"Function.process_params","line":335,"method":"process_params","native":false},{"column":10,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js","function":"next","line":275,"method":null,"native":false}]}
{"level":"error","message":"GLOBAL_UNHANDLED_REJECTION Assignment to constant variable.","pid":14112,"promise":"{}","stack":"TypeError: Assignment to constant variable.\n    at generateSimulatedData (F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:38:19)\n    at F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:107:21\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:137:13)\n    at Route.dispatch (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:112:3)\n    at patched (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\@opentelemetry+instrumentat_2264e4d6cb3be9b70b2f9c2feec742f3\\node_modules\\@opentelemetry\\instrumentation-express\\build\\src\\instrumentation.js:209:37)\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:281:22\n    at Function.process_params (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:335:12)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:275:10)","timestamp":"2025-07-15 10:03:28","type":"UnhandledRejection"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:06:43"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:07:21"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:07:25"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:07:25"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":4108,"timestamp":"2025-07-15 10:07:25"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:07:25"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:08:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 360 ms.","timestamp":"2025-07-15 10:08:01"}
{"date":"Tue Jul 15 2025 10:08:51 GMT+0700 (Western Indonesia Time)","error":{},"level":"error","message":"unhandledRejection: Assignment to constant variable.\nTypeError: Assignment to constant variable.\n    at generateSimulatedData (F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:100:19)\n    at F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:169:21\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:137:13)\n    at Route.dispatch (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:112:3)\n    at patched (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\@opentelemetry+instrumentat_2264e4d6cb3be9b70b2f9c2feec742f3\\node_modules\\@opentelemetry\\instrumentation-express\\build\\src\\instrumentation.js:209:37)\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:281:22\n    at Function.process_params (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:335:12)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:275:10)","os":{"loadavg":[0,0,0],"uptime":6617.703},"process":{"argv":["C:\\nvm4w\\nodejs\\node.exe","F:\\dev\\nodejs\\invoiceGenerate\\bin\\www"],"cwd":"F:\\dev\\nodejs\\invoiceGenerate","execPath":"C:\\nvm4w\\nodejs\\node.exe","gid":null,"memoryUsage":{"arrayBuffers":169103,"external":3711234,"heapTotal":45473792,"heapUsed":43246160,"rss":97107968},"pid":4108,"uid":null,"version":"v20.19.3"},"rejection":true,"stack":"TypeError: Assignment to constant variable.\n    at generateSimulatedData (F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:100:19)\n    at F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:169:21\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:137:13)\n    at Route.dispatch (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:112:3)\n    at patched (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\@opentelemetry+instrumentat_2264e4d6cb3be9b70b2f9c2feec742f3\\node_modules\\@opentelemetry\\instrumentation-express\\build\\src\\instrumentation.js:209:37)\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:281:22\n    at Function.process_params (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:335:12)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:275:10)","timestamp":"2025-07-15 10:08:51","trace":[{"column":19,"file":"F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js","function":"generateSimulatedData","line":100,"method":null,"native":false},{"column":21,"file":"F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js","function":null,"line":169,"method":null,"native":false},{"column":5,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js","function":"Layer.handle [as handle_request]","line":95,"method":"handle [as handle_request]","native":false},{"column":13,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js","function":"next","line":137,"method":null,"native":false},{"column":3,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js","function":"Route.dispatch","line":112,"method":"dispatch","native":false},{"column":37,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\@opentelemetry+instrumentat_2264e4d6cb3be9b70b2f9c2feec742f3\\node_modules\\@opentelemetry\\instrumentation-express\\build\\src\\instrumentation.js","function":"patched","line":209,"method":null,"native":false},{"column":5,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js","function":"Layer.handle [as handle_request]","line":95,"method":"handle [as handle_request]","native":false},{"column":22,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js","function":null,"line":281,"method":null,"native":false},{"column":12,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js","function":"Function.process_params","line":335,"method":"process_params","native":false},{"column":10,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js","function":"next","line":275,"method":null,"native":false}]}
{"level":"error","message":"GLOBAL_UNHANDLED_REJECTION Assignment to constant variable.","pid":4108,"promise":"{}","stack":"TypeError: Assignment to constant variable.\n    at generateSimulatedData (F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:100:19)\n    at F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:169:21\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:137:13)\n    at Route.dispatch (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:112:3)\n    at patched (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\@opentelemetry+instrumentat_2264e4d6cb3be9b70b2f9c2feec742f3\\node_modules\\@opentelemetry\\instrumentation-express\\build\\src\\instrumentation.js:209:37)\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:281:22\n    at Function.process_params (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:335:12)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:275:10)","timestamp":"2025-07-15 10:08:51","type":"UnhandledRejection"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:09:39"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:09:43"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:09:43"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":16724,"timestamp":"2025-07-15 10:09:43"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:09:43"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:09:47"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:10:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 49 ms.","timestamp":"2025-07-15 10:10:00"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:10:11"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:10:11"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:10:12"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:10:16"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:10:20"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:10:20"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":16856,"timestamp":"2025-07-15 10:10:20"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:10:20"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:10:22"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:11:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 81 ms.","timestamp":"2025-07-15 10:11:00"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:11:31"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:11:31"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:11:33"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:11:37"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:11:41"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:11:41"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":15376,"timestamp":"2025-07-15 10:11:41"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:11:41"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:11:45"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:12:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 64 ms.","timestamp":"2025-07-15 10:12:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:13:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 221 ms.","timestamp":"2025-07-15 10:13:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:14:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 70 ms.","timestamp":"2025-07-15 10:14:00"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:15:00"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:15:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:15:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 80 ms.","timestamp":"2025-07-15 10:15:00"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:15:02"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:15:07"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:15:13"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:15:13"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":12988,"timestamp":"2025-07-15 10:15:13"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:15:13"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:16:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 76 ms.","timestamp":"2025-07-15 10:16:00"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:16:47"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:16:47"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:16:49"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:16:52"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:16:56"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:16:56"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":2540,"timestamp":"2025-07-15 10:16:56"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:16:56"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:17:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:17:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 72 ms.","timestamp":"2025-07-15 10:17:00"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:17:54"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:17:54"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:17:55"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:17:59"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:18:03"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:18:03"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":16788,"timestamp":"2025-07-15 10:18:03"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:18:03"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:18:04"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:18:05"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:18:26"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:18:26"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:18:28"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:18:31"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:18:36"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:18:36"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":15800,"timestamp":"2025-07-15 10:18:36"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:18:36"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:18:36"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:19:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 73 ms.","timestamp":"2025-07-15 10:19:00"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:19:36"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:19:36"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:19:37"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:19:41"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:19:45"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:19:45"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":9548,"timestamp":"2025-07-15 10:19:45"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:19:45"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:19:46"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:20:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 65 ms.","timestamp":"2025-07-15 10:20:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:21:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 96 ms.","timestamp":"2025-07-15 10:21:00"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:21:04"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:21:04"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:21:06"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:21:09"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:21:15"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:21:15"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":17116,"timestamp":"2025-07-15 10:21:15"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:21:15"}
{"date":"Tue Jul 15 2025 10:21:16 GMT+0700 (Western Indonesia Time)","error":{},"level":"error","message":"unhandledRejection: currentDate is not defined\nReferenceError: currentDate is not defined\n    at generateSimulatedData (F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:18:21)\n    at F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:91:27\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:137:13)\n    at Route.dispatch (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:112:3)\n    at patched (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\@opentelemetry+instrumentat_2264e4d6cb3be9b70b2f9c2feec742f3\\node_modules\\@opentelemetry\\instrumentation-express\\build\\src\\instrumentation.js:209:37)\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:281:22\n    at Function.process_params (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:335:12)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:275:10)","os":{"loadavg":[0,0,0],"uptime":7362.64},"process":{"argv":["C:\\nvm4w\\nodejs\\node.exe","F:\\dev\\nodejs\\invoiceGenerate\\bin\\www"],"cwd":"F:\\dev\\nodejs\\invoiceGenerate","execPath":"C:\\nvm4w\\nodejs\\node.exe","gid":null,"memoryUsage":{"arrayBuffers":167093,"external":3708991,"heapTotal":82280448,"heapUsed":43289328,"rss":125513728},"pid":17116,"uid":null,"version":"v20.19.3"},"rejection":true,"stack":"ReferenceError: currentDate is not defined\n    at generateSimulatedData (F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:18:21)\n    at F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:91:27\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:137:13)\n    at Route.dispatch (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:112:3)\n    at patched (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\@opentelemetry+instrumentat_2264e4d6cb3be9b70b2f9c2feec742f3\\node_modules\\@opentelemetry\\instrumentation-express\\build\\src\\instrumentation.js:209:37)\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:281:22\n    at Function.process_params (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:335:12)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:275:10)","timestamp":"2025-07-15 10:21:16","trace":[{"column":21,"file":"F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js","function":"generateSimulatedData","line":18,"method":null,"native":false},{"column":27,"file":"F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js","function":null,"line":91,"method":null,"native":false},{"column":5,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js","function":"Layer.handle [as handle_request]","line":95,"method":"handle [as handle_request]","native":false},{"column":13,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js","function":"next","line":137,"method":null,"native":false},{"column":3,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js","function":"Route.dispatch","line":112,"method":"dispatch","native":false},{"column":37,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\@opentelemetry+instrumentat_2264e4d6cb3be9b70b2f9c2feec742f3\\node_modules\\@opentelemetry\\instrumentation-express\\build\\src\\instrumentation.js","function":"patched","line":209,"method":null,"native":false},{"column":5,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js","function":"Layer.handle [as handle_request]","line":95,"method":"handle [as handle_request]","native":false},{"column":22,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js","function":null,"line":281,"method":null,"native":false},{"column":12,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js","function":"Function.process_params","line":335,"method":"process_params","native":false},{"column":10,"file":"F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js","function":"next","line":275,"method":null,"native":false}]}
{"level":"error","message":"GLOBAL_UNHANDLED_REJECTION currentDate is not defined","pid":17116,"promise":"{}","stack":"ReferenceError: currentDate is not defined\n    at generateSimulatedData (F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:18:21)\n    at F:\\dev\\nodejs\\invoiceGenerate\\routes\\index.js:91:27\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:137:13)\n    at Route.dispatch (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\route.js:112:3)\n    at patched (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\@opentelemetry+instrumentat_2264e4d6cb3be9b70b2f9c2feec742f3\\node_modules\\@opentelemetry\\instrumentation-express\\build\\src\\instrumentation.js:209:37)\n    at Layer.handle [as handle_request] (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\layer.js:95:5)\n    at F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:281:22\n    at Function.process_params (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:335:12)\n    at next (F:\\dev\\nodejs\\invoiceGenerate\\node_modules\\.pnpm\\express@4.16.4\\node_modules\\express\\lib\\router\\index.js:275:10)","timestamp":"2025-07-15 10:21:16","type":"UnhandledRejection"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:21:54"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:21:59"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:21:59"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":17208,"timestamp":"2025-07-15 10:21:59"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:21:59"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:22:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 362 ms.","timestamp":"2025-07-15 10:22:00"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:22:02"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:23:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 66 ms.","timestamp":"2025-07-15 10:23:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:24:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 221 ms.","timestamp":"2025-07-15 10:24:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:25:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 92 ms.","timestamp":"2025-07-15 10:25:00"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:25:54"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:25:54"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:25:55"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:26:02"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:26:06"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:26:06"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":3216,"timestamp":"2025-07-15 10:26:06"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:26:06"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:26:09"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:27:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 80 ms.","timestamp":"2025-07-15 10:27:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:28:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 73 ms.","timestamp":"2025-07-15 10:28:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:29:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 50 ms.","timestamp":"2025-07-15 10:29:01"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:30:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 87 ms.","timestamp":"2025-07-15 10:30:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:31:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 136 ms.","timestamp":"2025-07-15 10:31:00"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:31:24"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:31:24"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:31:25"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:31:29"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:31:33"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:31:33"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":6572,"timestamp":"2025-07-15 10:31:33"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:31:33"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:31:34"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:32:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 71 ms.","timestamp":"2025-07-15 10:32:00"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:32:44"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:32:44"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:32:45"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:32:49"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:32:54"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:32:54"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":5768,"timestamp":"2025-07-15 10:32:54"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:32:54"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:32:54"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:33:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 34 ms.","timestamp":"2025-07-15 10:33:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:34:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 54 ms.","timestamp":"2025-07-15 10:34:00"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:34:45"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:34:45"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:34:46"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:34:50"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:34:54"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:34:54"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":3608,"timestamp":"2025-07-15 10:34:54"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:34:54"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:34:56"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:35:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 54 ms.","timestamp":"2025-07-15 10:35:00"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:35:01"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:35:31"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:35:32"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:35:33"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:36:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 36 ms.","timestamp":"2025-07-15 10:36:00"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:36:09"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:36:12"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:36:12"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:36:12"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:36:13"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:36:18"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:36:21"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:36:21"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":15540,"timestamp":"2025-07-15 10:36:21"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:36:21"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:36:24"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:36:25"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:36:26"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:36:50"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:36:50"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:36:51"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:36:56"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:37:01"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:37:01"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":17060,"timestamp":"2025-07-15 10:37:01"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:37:01"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:37:01"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:37:02"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:37:03"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:37:04"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:37:04"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:37:05"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:37:46"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:37:46"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:37:48"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:37:51"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:37:55"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:37:55"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":5440,"timestamp":"2025-07-15 10:37:55"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:37:55"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:37:58"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:38:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 27 ms.","timestamp":"2025-07-15 10:38:00"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:38:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:39:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 56 ms.","timestamp":"2025-07-15 10:39:00"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:39:29"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:39:29"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:39:31"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:39:34"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:39:39"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:39:39"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":10316,"timestamp":"2025-07-15 10:39:39"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:39:39"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:39:41"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:40:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 63 ms.","timestamp":"2025-07-15 10:40:01"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:41:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 160 ms.","timestamp":"2025-07-15 10:41:00"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:41:11"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:41:11"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:41:13"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:41:17"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:41:21"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:41:21"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":9272,"timestamp":"2025-07-15 10:41:21"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:41:21"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:41:23"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:42:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 72 ms.","timestamp":"2025-07-15 10:42:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:43:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 42 ms.","timestamp":"2025-07-15 10:43:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:44:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 49 ms.","timestamp":"2025-07-15 10:44:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:45:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 66 ms.","timestamp":"2025-07-15 10:45:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:46:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 43 ms.","timestamp":"2025-07-15 10:46:00"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:46:27"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:46:27"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:46:28"}
{"level":"info","message":"LOGGER_INITIALIZED Winston logger berhasil diinisialisasi.","timestamp":"2025-07-15 10:46:32"}
{"level":"info","message":"PROCESS_HANDLERS_INITIALIZED Global process handlers telah diinisialisasi.","timestamp":"2025-07-15 10:46:36"}
{"level":"info","message":"APPLICATION_LISTENING Backend server berjalan di port 3000","timestamp":"2025-07-15 10:46:36"}
{"appId":"Wabill","level":"info","message":"BACKEND_HEARTBEAT Backend service is alive and well.","pid":4208,"timestamp":"2025-07-15 10:46:36"}
{"level":"info","message":"HEARTBEAT_SERVICE_STARTED Heartbeat service telah dimulai.","timestamp":"2025-07-15 10:46:36"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:46:39"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:47:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 85 ms.","timestamp":"2025-07-15 10:47:00"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:48:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 71 ms.","timestamp":"2025-07-15 10:48:00"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:48:13"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:48:58"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:49:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 63 ms.","timestamp":"2025-07-15 10:49:00"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:49:52"}
{"level":"info","message":"[Cron Job] Memulai pengiriman invoice yang belum terkirim.","timestamp":"2025-07-15 10:50:00"}
{"level":"info","message":"[Cron Job] Pengiriman invoice selesai. Durasi: 20 ms.","timestamp":"2025-07-15 10:50:00"}
{"level":"info","message":"Index Page Index Page di akses oleh ::1","timestamp":"2025-07-15 10:50:16"}
{"level":"info","message":"SHUTDOWN_SIGNAL_RECEIVED Menerima sinyal SIGINT (Ctrl+C). Melakukan graceful shutdown.","timestamp":"2025-07-15 10:50:40"}
{"level":"info","message":"HEARTBEAT_SERVICE_STOPPED Heartbeat service telah dihentikan.","timestamp":"2025-07-15 10:50:40"}
{"level":"info","message":"APPLICATION_SHUTDOWN_COMPLETE Aplikasi berhasil dimatikan.","timestamp":"2025-07-15 10:50:42"}
