{"ts":"2026-09-15T05:20:41.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:20:41.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:20:41.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:20:41.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:20:41.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:21:14.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:21:14.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:21:14.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:21:14.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:21:15.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:24:01.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:24:01.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:24:01.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:24:01.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:24:02.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:31:28.000000Z","level":"warning","channel":"app","message":"CSRF token mismatch.","context":{"path":"/login","ip":"127.0.0.1"}}
{"ts":"2026-09-15T05:31:49.000000Z","level":"warning","channel":"app","message":"CSRF token mismatch.","context":{"path":"/login","ip":"127.0.0.1"}}
{"ts":"2026-09-15T05:31:59.000000Z","level":"warning","channel":"app","message":"CSRF token mismatch.","context":{"path":"/login","ip":"127.0.0.1"}}
{"ts":"2026-09-15T05:32:33.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:32:33.000000Z","level":"error","channel":"app","message":"Unhandled exception","context":{"message":"Class \"App\\Models\\SpreadsheetImporter\" not found","file":"C:\\xampp\\htdocs\\wedding\\app\\Controllers\\ExportController.php","line":356,"path":"/weddings/1/exports/pembayaran.csv"}}
{"ts":"2026-09-15T05:32:33.000000Z","level":"error","channel":"app","message":"Unhandled exception","context":{"message":"Class \"App\\Models\\SpreadsheetImporter\" not found","file":"C:\\xampp\\htdocs\\wedding\\app\\Controllers\\ExportController.php","line":387,"path":"/weddings/1/exports/pengeluaran.csv"}}
{"ts":"2026-09-15T05:32:55.000000Z","level":"warning","channel":"app","message":"CSRF token mismatch.","context":{"path":"/login","ip":"127.0.0.1"}}
{"ts":"2026-09-15T05:33:31.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:33:31.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:33:43.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:33:43.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:33:57.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:33:57.000000Z","level":"info","channel":"app","message":"audit.wedding.created.wedding","context":{"couple_name":"Smoke Couple TEST"}}
{"ts":"2026-09-15T05:33:57.000000Z","level":"info","channel":"app","message":"audit.wedding.updated.wedding","context":{"couple_name":"Smoke Couple TEST2"}}
{"ts":"2026-09-15T05:33:58.000000Z","level":"info","channel":"app","message":"audit.event.created.event","context":{"wedding_id":276,"name":"Smoke Akad"}}
{"ts":"2026-09-15T05:33:58.000000Z","level":"info","channel":"app","message":"audit.event.updated.event","context":{"wedding_id":276,"name":"Smoke Akad (Update)"}}
{"ts":"2026-09-15T05:33:58.000000Z","level":"info","channel":"app","message":"audit.member.added.wedding","context":{"user_id":3}}
{"ts":"2026-09-15T05:33:58.000000Z","level":"info","channel":"app","message":"audit.member.removed.wedding","context":{"user_id":3}}
{"ts":"2026-09-15T05:33:58.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"aira@example.test"}}
{"ts":"2026-09-15T05:33:58.000000Z","level":"warning","channel":"app","message":"403 Forbidden","context":{"path":"/weddings/276","ip":"127.0.0.1","user":3}}
{"ts":"2026-09-15T05:33:58.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"sari@example.test"}}
{"ts":"2026-09-15T05:33:58.000000Z","level":"warning","channel":"app","message":"403 Forbidden","context":{"path":"/weddings/2","ip":"127.0.0.1","user":11}}
{"ts":"2026-09-15T05:33:58.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"rangga@example.test"}}
{"ts":"2026-09-15T05:33:59.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:33:59.000000Z","level":"info","channel":"app","message":"audit.task_category.created.task_category","context":{"wedding_id":276,"name":"Smoke Catering"}}
{"ts":"2026-09-15T05:33:59.000000Z","level":"info","channel":"app","message":"audit.task_category.updated.task_category","context":{"wedding_id":276,"name":"Smoke Catering X"}}
{"ts":"2026-09-15T05:33:59.000000Z","level":"info","channel":"app","message":"audit.task.created.task","context":{"wedding_id":276,"title":"Smoke Task Pita"}}
{"ts":"2026-09-15T05:33:59.000000Z","level":"info","channel":"app","message":"audit.task.updated.task","context":{"wedding_id":276,"title":"Smoke Task Pita (Selesai)"}}
{"ts":"2026-09-15T05:33:59.000000Z","level":"info","channel":"app","message":"audit.timeline.created.timeline","context":{"wedding_id":276,"title":"Smoke Fitting Tgl"}}
{"ts":"2026-09-15T05:33:59.000000Z","level":"info","channel":"app","message":"audit.event.created.event","context":{"wedding_id":276,"name":"Smoke Resepsi RDN"}}
{"ts":"2026-09-15T05:33:59.000000Z","level":"info","channel":"app","message":"audit.rundown.created.rundown","context":{"wedding_id":276,"event_id":99,"activity":"Smoke Santap Malam"}}
{"ts":"2026-09-15T05:34:00.000000Z","level":"info","channel":"app","message":"audit.budget_category.created.budget_category","context":{"wedding_id":276,"name":"Smoke Catering anggaran"}}
{"ts":"2026-09-15T05:34:00.000000Z","level":"info","channel":"app","message":"audit.budget_category.updated.budget_category","context":{"wedding_id":276,"name":"Smoke Catering anggaran X"}}
{"ts":"2026-09-15T05:34:00.000000Z","level":"info","channel":"app","message":"audit.budget_item.created.budget_item","context":{"wedding_id":276,"name":"Smoke Paket Katering"}}
{"ts":"2026-09-15T05:34:00.000000Z","level":"info","channel":"app","message":"audit.budget_item.updated.budget_item","context":{"wedding_id":276,"name":"Smoke Paket Katering Premium"}}
{"ts":"2026-09-15T05:34:00.000000Z","level":"info","channel":"app","message":"audit.vendor.created.vendor","context":{"wedding_id":276,"name":"Smoke Katering Jaya"}}
{"ts":"2026-09-15T05:34:00.000000Z","level":"info","channel":"app","message":"audit.expense.created.expense","context":{"wedding_id":276,"name":"Smoke DP Katering","amount":4000000}}
{"ts":"2026-09-15T05:34:00.000000Z","level":"info","channel":"app","message":"audit.payment.created.payment","context":{"wedding_id":276,"name":"Smoke DP Katering Cash"}}
{"ts":"2026-09-15T05:34:00.000000Z","level":"info","channel":"app","message":"audit.guest_group.created.guest_group","context":{"wedding_id":276,"name":"Smoke Grup Keluarga"}}
{"ts":"2026-09-15T05:34:00.000000Z","level":"info","channel":"app","message":"audit.guest.created.guest","context":{"wedding_id":276,"name":"Smoke Tamu Satu"}}
{"ts":"2026-09-15T05:34:00.000000Z","level":"info","channel":"app","message":"audit.guest.imported.guest","context":{"wedding_id":276,"name":"Smoke Tamu CSV","method":"csv/xlsx"}}
{"ts":"2026-09-15T05:34:00.000000Z","level":"info","channel":"app","message":"audit.guest.imported.guest","context":{"wedding_id":276,"name":"Smoke Tamu Duplikat","method":"csv/xlsx"}}
{"ts":"2026-09-15T05:34:00.000000Z","level":"info","channel":"app","message":"audit.guest.imported.guest","context":{"wedding_id":276,"name":"Smoke Tamu Tanpa Grup","method":"csv/xlsx"}}
{"ts":"2026-09-15T05:34:00.000000Z","level":"info","channel":"app","message":"audit.guest.import.guest","context":{"wedding_id":276,"imported":3,"skipped":0,"errors":0}}
{"ts":"2026-09-15T05:34:01.000000Z","level":"info","channel":"app","message":"audit.guest.invited_bulk.guest","context":{"wedding_id":276,"count":1}}
{"ts":"2026-09-15T05:34:01.000000Z","level":"info","channel":"app","message":"audit.task.created.task","context":{"wedding_id":276,"title":"Smoke Due Tugas"}}
{"ts":"2026-09-15T05:34:01.000000Z","level":"info","channel":"app","message":"audit.payment.created.payment","context":{"wedding_id":276,"name":"Smoke DP Terdekat"}}
{"ts":"2026-09-15T05:34:02.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:34:02.000000Z","level":"info","channel":"app","message":"audit.event.deleted.event","context":{"wedding_id":276}}
{"ts":"2026-09-15T05:34:02.000000Z","level":"info","channel":"app","message":"audit.event.deleted.event","context":{"wedding_id":276}}
{"ts":"2026-09-15T05:34:02.000000Z","level":"info","channel":"app","message":"audit.wedding.deleted.wedding","context":{"couple_name":"Smoke Couple TEST2"}}
{"ts":"2026-09-15T05:34:44.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:34:44.000000Z","level":"info","channel":"app","message":"audit.wedding.created.wedding","context":{"couple_name":"Smoke Couple TEST"}}
{"ts":"2026-09-15T05:34:44.000000Z","level":"info","channel":"app","message":"audit.wedding.updated.wedding","context":{"couple_name":"Smoke Couple TEST2"}}
{"ts":"2026-09-15T05:34:44.000000Z","level":"info","channel":"app","message":"audit.event.created.event","context":{"wedding_id":277,"name":"Smoke Akad"}}
{"ts":"2026-09-15T05:34:45.000000Z","level":"info","channel":"app","message":"audit.event.updated.event","context":{"wedding_id":277,"name":"Smoke Akad (Update)"}}
{"ts":"2026-09-15T05:34:45.000000Z","level":"info","channel":"app","message":"audit.member.added.wedding","context":{"user_id":3}}
{"ts":"2026-09-15T05:34:45.000000Z","level":"info","channel":"app","message":"audit.member.removed.wedding","context":{"user_id":3}}
{"ts":"2026-09-15T05:34:45.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"aira@example.test"}}
{"ts":"2026-09-15T05:34:45.000000Z","level":"warning","channel":"app","message":"403 Forbidden","context":{"path":"/weddings/277","ip":"127.0.0.1","user":3}}
{"ts":"2026-09-15T05:34:45.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"sari@example.test"}}
{"ts":"2026-09-15T05:34:45.000000Z","level":"warning","channel":"app","message":"403 Forbidden","context":{"path":"/weddings/2","ip":"127.0.0.1","user":11}}
{"ts":"2026-09-15T05:34:45.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"rangga@example.test"}}
{"ts":"2026-09-15T05:34:46.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:34:46.000000Z","level":"info","channel":"app","message":"audit.task_category.created.task_category","context":{"wedding_id":277,"name":"Smoke Catering"}}
{"ts":"2026-09-15T05:34:46.000000Z","level":"info","channel":"app","message":"audit.task_category.updated.task_category","context":{"wedding_id":277,"name":"Smoke Catering X"}}
{"ts":"2026-09-15T05:34:46.000000Z","level":"info","channel":"app","message":"audit.task.created.task","context":{"wedding_id":277,"title":"Smoke Task Pita"}}
{"ts":"2026-09-15T05:34:46.000000Z","level":"info","channel":"app","message":"audit.task.updated.task","context":{"wedding_id":277,"title":"Smoke Task Pita (Selesai)"}}
{"ts":"2026-09-15T05:34:46.000000Z","level":"info","channel":"app","message":"audit.timeline.created.timeline","context":{"wedding_id":277,"title":"Smoke Fitting Tgl"}}
{"ts":"2026-09-15T05:34:46.000000Z","level":"info","channel":"app","message":"audit.event.created.event","context":{"wedding_id":277,"name":"Smoke Resepsi RDN"}}
{"ts":"2026-09-15T05:34:46.000000Z","level":"info","channel":"app","message":"audit.rundown.created.rundown","context":{"wedding_id":277,"event_id":101,"activity":"Smoke Santap Malam"}}
{"ts":"2026-09-15T05:34:47.000000Z","level":"info","channel":"app","message":"audit.budget_category.created.budget_category","context":{"wedding_id":277,"name":"Smoke Catering anggaran"}}
{"ts":"2026-09-15T05:34:47.000000Z","level":"info","channel":"app","message":"audit.budget_category.updated.budget_category","context":{"wedding_id":277,"name":"Smoke Catering anggaran X"}}
{"ts":"2026-09-15T05:34:47.000000Z","level":"info","channel":"app","message":"audit.budget_item.created.budget_item","context":{"wedding_id":277,"name":"Smoke Paket Katering"}}
{"ts":"2026-09-15T05:34:47.000000Z","level":"info","channel":"app","message":"audit.budget_item.updated.budget_item","context":{"wedding_id":277,"name":"Smoke Paket Katering Premium"}}
{"ts":"2026-09-15T05:34:47.000000Z","level":"info","channel":"app","message":"audit.vendor.created.vendor","context":{"wedding_id":277,"name":"Smoke Katering Jaya"}}
{"ts":"2026-09-15T05:34:47.000000Z","level":"info","channel":"app","message":"audit.expense.created.expense","context":{"wedding_id":277,"name":"Smoke DP Katering","amount":4000000}}
{"ts":"2026-09-15T05:34:47.000000Z","level":"info","channel":"app","message":"audit.payment.created.payment","context":{"wedding_id":277,"name":"Smoke DP Katering Cash"}}
{"ts":"2026-09-15T05:34:48.000000Z","level":"info","channel":"app","message":"audit.guest_group.created.guest_group","context":{"wedding_id":277,"name":"Smoke Grup Keluarga"}}
{"ts":"2026-09-15T05:34:48.000000Z","level":"info","channel":"app","message":"audit.guest.created.guest","context":{"wedding_id":277,"name":"Smoke Tamu Satu"}}
{"ts":"2026-09-15T05:34:48.000000Z","level":"info","channel":"app","message":"audit.guest.imported.guest","context":{"wedding_id":277,"name":"Smoke Tamu CSV","method":"csv/xlsx"}}
{"ts":"2026-09-15T05:34:48.000000Z","level":"info","channel":"app","message":"audit.guest.imported.guest","context":{"wedding_id":277,"name":"Smoke Tamu Duplikat","method":"csv/xlsx"}}
{"ts":"2026-09-15T05:34:48.000000Z","level":"info","channel":"app","message":"audit.guest.imported.guest","context":{"wedding_id":277,"name":"Smoke Tamu Tanpa Grup","method":"csv/xlsx"}}
{"ts":"2026-09-15T05:34:48.000000Z","level":"info","channel":"app","message":"audit.guest.import.guest","context":{"wedding_id":277,"imported":3,"skipped":0,"errors":0}}
{"ts":"2026-09-15T05:34:48.000000Z","level":"info","channel":"app","message":"audit.guest.invited_bulk.guest","context":{"wedding_id":277,"count":1}}
{"ts":"2026-09-15T05:34:49.000000Z","level":"info","channel":"app","message":"audit.task.created.task","context":{"wedding_id":277,"title":"Smoke Due Tugas"}}
{"ts":"2026-09-15T05:34:49.000000Z","level":"info","channel":"app","message":"audit.payment.created.payment","context":{"wedding_id":277,"name":"Smoke DP Terdekat"}}
{"ts":"2026-09-15T05:34:50.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:34:50.000000Z","level":"info","channel":"app","message":"audit.event.deleted.event","context":{"wedding_id":277}}
{"ts":"2026-09-15T05:34:50.000000Z","level":"info","channel":"app","message":"audit.event.deleted.event","context":{"wedding_id":277}}
{"ts":"2026-09-15T05:34:50.000000Z","level":"info","channel":"app","message":"audit.wedding.deleted.wedding","context":{"couple_name":"Smoke Couple TEST2"}}
{"ts":"2026-09-15T05:35:20.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:35:20.000000Z","level":"info","channel":"app","message":"audit.wedding.created.wedding","context":{"couple_name":"Smoke Couple TEST"}}
{"ts":"2026-09-15T05:35:20.000000Z","level":"info","channel":"app","message":"audit.wedding.updated.wedding","context":{"couple_name":"Smoke Couple TEST2"}}
{"ts":"2026-09-15T05:35:20.000000Z","level":"info","channel":"app","message":"audit.event.created.event","context":{"wedding_id":278,"name":"Smoke Akad"}}
{"ts":"2026-09-15T05:35:20.000000Z","level":"info","channel":"app","message":"audit.event.updated.event","context":{"wedding_id":278,"name":"Smoke Akad (Update)"}}
{"ts":"2026-09-15T05:35:20.000000Z","level":"info","channel":"app","message":"audit.member.added.wedding","context":{"user_id":3}}
{"ts":"2026-09-15T05:35:20.000000Z","level":"info","channel":"app","message":"audit.member.removed.wedding","context":{"user_id":3}}
{"ts":"2026-09-15T05:35:21.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"aira@example.test"}}
{"ts":"2026-09-15T05:35:21.000000Z","level":"warning","channel":"app","message":"403 Forbidden","context":{"path":"/weddings/278","ip":"127.0.0.1","user":3}}
{"ts":"2026-09-15T05:35:21.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"sari@example.test"}}
{"ts":"2026-09-15T05:35:21.000000Z","level":"warning","channel":"app","message":"403 Forbidden","context":{"path":"/weddings/2","ip":"127.0.0.1","user":11}}
{"ts":"2026-09-15T05:35:21.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"rangga@example.test"}}
{"ts":"2026-09-15T05:35:21.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:35:21.000000Z","level":"info","channel":"app","message":"audit.task_category.created.task_category","context":{"wedding_id":278,"name":"Smoke Catering"}}
{"ts":"2026-09-15T05:35:22.000000Z","level":"info","channel":"app","message":"audit.task_category.updated.task_category","context":{"wedding_id":278,"name":"Smoke Catering X"}}
{"ts":"2026-09-15T05:35:22.000000Z","level":"info","channel":"app","message":"audit.task.created.task","context":{"wedding_id":278,"title":"Smoke Task Pita"}}
{"ts":"2026-09-15T05:35:22.000000Z","level":"info","channel":"app","message":"audit.task.updated.task","context":{"wedding_id":278,"title":"Smoke Task Pita (Selesai)"}}
{"ts":"2026-09-15T05:35:22.000000Z","level":"info","channel":"app","message":"audit.timeline.created.timeline","context":{"wedding_id":278,"title":"Smoke Fitting Tgl"}}
{"ts":"2026-09-15T05:35:22.000000Z","level":"info","channel":"app","message":"audit.event.created.event","context":{"wedding_id":278,"name":"Smoke Resepsi RDN"}}
{"ts":"2026-09-15T05:35:22.000000Z","level":"info","channel":"app","message":"audit.rundown.created.rundown","context":{"wedding_id":278,"event_id":103,"activity":"Smoke Santap Malam"}}
{"ts":"2026-09-15T05:35:22.000000Z","level":"info","channel":"app","message":"audit.budget_category.created.budget_category","context":{"wedding_id":278,"name":"Smoke Catering anggaran"}}
{"ts":"2026-09-15T05:35:22.000000Z","level":"info","channel":"app","message":"audit.budget_category.updated.budget_category","context":{"wedding_id":278,"name":"Smoke Catering anggaran X"}}
{"ts":"2026-09-15T05:35:22.000000Z","level":"info","channel":"app","message":"audit.budget_item.created.budget_item","context":{"wedding_id":278,"name":"Smoke Paket Katering"}}
{"ts":"2026-09-15T05:35:22.000000Z","level":"info","channel":"app","message":"audit.budget_item.updated.budget_item","context":{"wedding_id":278,"name":"Smoke Paket Katering Premium"}}
{"ts":"2026-09-15T05:35:22.000000Z","level":"info","channel":"app","message":"audit.vendor.created.vendor","context":{"wedding_id":278,"name":"Smoke Katering Jaya"}}
{"ts":"2026-09-15T05:35:22.000000Z","level":"info","channel":"app","message":"audit.expense.created.expense","context":{"wedding_id":278,"name":"Smoke DP Katering","amount":4000000}}
{"ts":"2026-09-15T05:35:23.000000Z","level":"info","channel":"app","message":"audit.payment.created.payment","context":{"wedding_id":278,"name":"Smoke DP Katering Cash"}}
{"ts":"2026-09-15T05:35:23.000000Z","level":"info","channel":"app","message":"audit.guest_group.created.guest_group","context":{"wedding_id":278,"name":"Smoke Grup Keluarga"}}
{"ts":"2026-09-15T05:35:23.000000Z","level":"info","channel":"app","message":"audit.guest.created.guest","context":{"wedding_id":278,"name":"Smoke Tamu Satu"}}
{"ts":"2026-09-15T05:35:23.000000Z","level":"info","channel":"app","message":"audit.guest.imported.guest","context":{"wedding_id":278,"name":"Smoke Tamu CSV","method":"csv/xlsx"}}
{"ts":"2026-09-15T05:35:23.000000Z","level":"info","channel":"app","message":"audit.guest.imported.guest","context":{"wedding_id":278,"name":"Smoke Tamu Duplikat","method":"csv/xlsx"}}
{"ts":"2026-09-15T05:35:23.000000Z","level":"info","channel":"app","message":"audit.guest.imported.guest","context":{"wedding_id":278,"name":"Smoke Tamu Tanpa Grup","method":"csv/xlsx"}}
{"ts":"2026-09-15T05:35:23.000000Z","level":"info","channel":"app","message":"audit.guest.import.guest","context":{"wedding_id":278,"imported":3,"skipped":0,"errors":0}}
{"ts":"2026-09-15T05:35:23.000000Z","level":"info","channel":"app","message":"audit.guest.invited_bulk.guest","context":{"wedding_id":278,"count":1}}
{"ts":"2026-09-15T05:35:23.000000Z","level":"info","channel":"app","message":"audit.task.created.task","context":{"wedding_id":278,"title":"Smoke Due Tugas"}}
{"ts":"2026-09-15T05:35:23.000000Z","level":"info","channel":"app","message":"audit.payment.created.payment","context":{"wedding_id":278,"name":"Smoke DP Terdekat"}}
{"ts":"2026-09-15T05:35:24.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:35:24.000000Z","level":"info","channel":"app","message":"audit.event.deleted.event","context":{"wedding_id":278}}
{"ts":"2026-09-15T05:35:24.000000Z","level":"info","channel":"app","message":"audit.event.deleted.event","context":{"wedding_id":278}}
{"ts":"2026-09-15T05:35:24.000000Z","level":"info","channel":"app","message":"audit.wedding.deleted.wedding","context":{"couple_name":"Smoke Couple TEST2"}}
{"ts":"2026-09-15T05:35:41.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:35:41.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:35:41.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:35:41.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:35:42.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:35:50.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:35:50.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:35:50.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:35:50.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:35:50.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:36:37.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:36:38.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:36:38.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:36:38.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:36:38.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:36:59.000000Z","level":"warning","channel":"app","message":"CSRF token mismatch.","context":{"path":"/login","ip":"127.0.0.1"}}
{"ts":"2026-09-15T05:37:13.000000Z","level":"warning","channel":"app","message":"CSRF token mismatch.","context":{"path":"/login","ip":"127.0.0.1"}}
{"ts":"2026-09-15T05:37:39.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:37:39.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:37:40.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:37:40.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:40:14.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:40:14.000000Z","level":"info","channel":"app","message":"audit.wedding.created.wedding","context":{"couple_name":"Smoke Couple TEST"}}
{"ts":"2026-09-15T05:40:14.000000Z","level":"info","channel":"app","message":"audit.wedding.updated.wedding","context":{"couple_name":"Smoke Couple TEST2"}}
{"ts":"2026-09-15T05:40:14.000000Z","level":"info","channel":"app","message":"audit.event.created.event","context":{"wedding_id":321,"name":"Smoke Akad"}}
{"ts":"2026-09-15T05:40:14.000000Z","level":"info","channel":"app","message":"audit.event.updated.event","context":{"wedding_id":321,"name":"Smoke Akad (Update)"}}
{"ts":"2026-09-15T05:40:14.000000Z","level":"info","channel":"app","message":"audit.member.added.wedding","context":{"user_id":3}}
{"ts":"2026-09-15T05:40:14.000000Z","level":"info","channel":"app","message":"audit.member.removed.wedding","context":{"user_id":3}}
{"ts":"2026-09-15T05:40:14.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"aira@example.test"}}
{"ts":"2026-09-15T05:40:14.000000Z","level":"warning","channel":"app","message":"403 Forbidden","context":{"path":"/weddings/321","ip":"127.0.0.1","user":3}}
{"ts":"2026-09-15T05:40:14.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"sari@example.test"}}
{"ts":"2026-09-15T05:40:14.000000Z","level":"warning","channel":"app","message":"403 Forbidden","context":{"path":"/weddings/2","ip":"127.0.0.1","user":11}}
{"ts":"2026-09-15T05:40:14.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"rangga@example.test"}}
{"ts":"2026-09-15T05:40:15.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:40:15.000000Z","level":"info","channel":"app","message":"audit.task_category.created.task_category","context":{"wedding_id":321,"name":"Smoke Catering"}}
{"ts":"2026-09-15T05:40:15.000000Z","level":"info","channel":"app","message":"audit.task_category.updated.task_category","context":{"wedding_id":321,"name":"Smoke Catering X"}}
{"ts":"2026-09-15T05:40:15.000000Z","level":"info","channel":"app","message":"audit.task.created.task","context":{"wedding_id":321,"title":"Smoke Task Pita"}}
{"ts":"2026-09-15T05:40:15.000000Z","level":"info","channel":"app","message":"audit.task.updated.task","context":{"wedding_id":321,"title":"Smoke Task Pita (Selesai)"}}
{"ts":"2026-09-15T05:40:15.000000Z","level":"info","channel":"app","message":"audit.timeline.created.timeline","context":{"wedding_id":321,"title":"Smoke Fitting Tgl"}}
{"ts":"2026-09-15T05:40:15.000000Z","level":"info","channel":"app","message":"audit.event.created.event","context":{"wedding_id":321,"name":"Smoke Resepsi RDN"}}
{"ts":"2026-09-15T05:40:15.000000Z","level":"info","channel":"app","message":"audit.rundown.created.rundown","context":{"wedding_id":321,"event_id":114,"activity":"Smoke Santap Malam"}}
{"ts":"2026-09-15T05:40:15.000000Z","level":"info","channel":"app","message":"audit.budget_category.created.budget_category","context":{"wedding_id":321,"name":"Smoke Catering anggaran"}}
{"ts":"2026-09-15T05:40:15.000000Z","level":"info","channel":"app","message":"audit.budget_category.updated.budget_category","context":{"wedding_id":321,"name":"Smoke Catering anggaran X"}}
{"ts":"2026-09-15T05:40:15.000000Z","level":"info","channel":"app","message":"audit.budget_item.created.budget_item","context":{"wedding_id":321,"name":"Smoke Paket Katering"}}
{"ts":"2026-09-15T05:40:15.000000Z","level":"info","channel":"app","message":"audit.budget_item.updated.budget_item","context":{"wedding_id":321,"name":"Smoke Paket Katering Premium"}}
{"ts":"2026-09-15T05:40:15.000000Z","level":"info","channel":"app","message":"audit.vendor.created.vendor","context":{"wedding_id":321,"name":"Smoke Katering Jaya"}}
{"ts":"2026-09-15T05:40:16.000000Z","level":"info","channel":"app","message":"audit.expense.created.expense","context":{"wedding_id":321,"name":"Smoke DP Katering","amount":4000000}}
{"ts":"2026-09-15T05:40:16.000000Z","level":"info","channel":"app","message":"audit.payment.created.payment","context":{"wedding_id":321,"name":"Smoke DP Katering Cash"}}
{"ts":"2026-09-15T05:40:16.000000Z","level":"info","channel":"app","message":"audit.guest_group.created.guest_group","context":{"wedding_id":321,"name":"Smoke Grup Keluarga"}}
{"ts":"2026-09-15T05:40:16.000000Z","level":"info","channel":"app","message":"audit.guest.created.guest","context":{"wedding_id":321,"name":"Smoke Tamu Satu"}}
{"ts":"2026-09-15T05:40:16.000000Z","level":"info","channel":"app","message":"audit.guest.imported.guest","context":{"wedding_id":321,"name":"Smoke Tamu CSV","method":"csv/xlsx"}}
{"ts":"2026-09-15T05:40:16.000000Z","level":"info","channel":"app","message":"audit.guest.imported.guest","context":{"wedding_id":321,"name":"Smoke Tamu Duplikat","method":"csv/xlsx"}}
{"ts":"2026-09-15T05:40:16.000000Z","level":"info","channel":"app","message":"audit.guest.imported.guest","context":{"wedding_id":321,"name":"Smoke Tamu Tanpa Grup","method":"csv/xlsx"}}
{"ts":"2026-09-15T05:40:16.000000Z","level":"info","channel":"app","message":"audit.guest.import.guest","context":{"wedding_id":321,"imported":3,"skipped":0,"errors":0}}
{"ts":"2026-09-15T05:40:16.000000Z","level":"info","channel":"app","message":"audit.guest.invited_bulk.guest","context":{"wedding_id":321,"count":1}}
{"ts":"2026-09-15T05:40:17.000000Z","level":"info","channel":"app","message":"audit.task.created.task","context":{"wedding_id":321,"title":"Smoke Due Tugas"}}
{"ts":"2026-09-15T05:40:17.000000Z","level":"info","channel":"app","message":"audit.payment.created.payment","context":{"wedding_id":321,"name":"Smoke DP Terdekat"}}
{"ts":"2026-09-15T05:40:17.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:40:17.000000Z","level":"info","channel":"app","message":"audit.user.password_changed.user","context":[]}
{"ts":"2026-09-15T05:40:17.000000Z","level":"warning","channel":"app","message":"Route not found","context":{"path":"/logout","method":"GET"}}
{"ts":"2026-09-15T05:40:17.000000Z","level":"warning","channel":"app","message":"404 Not Found","context":{"path":"/logout","ip":"127.0.0.1"}}
{"ts":"2026-09-15T05:40:18.000000Z","level":"info","channel":"app","message":"audit.user.password_changed.user","context":[]}
{"ts":"2026-09-15T05:40:18.000000Z","level":"info","channel":"app","message":"audit.user.profile_updated.user","context":{"name":"Administrator Smoke Test","email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:40:18.000000Z","level":"info","channel":"app","message":"audit.user.profile_updated.user","context":{"name":"Wedding Organizer Demo","email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:40:18.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:40:18.000000Z","level":"info","channel":"app","message":"audit.event.deleted.event","context":{"wedding_id":321}}
{"ts":"2026-09-15T05:40:18.000000Z","level":"info","channel":"app","message":"audit.event.deleted.event","context":{"wedding_id":321}}
{"ts":"2026-09-15T05:40:18.000000Z","level":"info","channel":"app","message":"audit.wedding.deleted.wedding","context":{"couple_name":"Smoke Couple TEST2"}}
{"ts":"2026-09-15T05:40:27.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:40:27.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:40:27.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:40:27.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:40:28.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:40:28.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T05:41:26.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:41:26.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:41:26.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:41:26.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T05:41:27.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T06:45:28.000000Z","level":"warning","channel":"app","message":"Route not found","context":{"path":"/wedding/public","method":"GET"}}
{"ts":"2026-09-15T06:45:28.000000Z","level":"warning","channel":"app","message":"404 Not Found","context":{"path":"/wedding/public","ip":"::1"}}
{"ts":"2026-09-15T06:46:13.000000Z","level":"warning","channel":"app","message":"Route not found","context":{"path":"/wedding/public","method":"GET"}}
{"ts":"2026-09-15T06:46:13.000000Z","level":"warning","channel":"app","message":"404 Not Found","context":{"path":"/wedding/public","ip":"::1"}}
{"ts":"2026-09-15T06:47:59.000000Z","level":"warning","channel":"app","message":"Route not found","context":{"path":"/favicon.ico","method":"GET"}}
{"ts":"2026-09-15T06:47:59.000000Z","level":"warning","channel":"app","message":"404 Not Found","context":{"path":"/favicon.ico","ip":"127.0.0.1"}}
{"ts":"2026-09-15T06:48:02.000000Z","level":"warning","channel":"app","message":"Route not found","context":{"path":"/wedding/public","method":"GET"}}
{"ts":"2026-09-15T06:48:02.000000Z","level":"warning","channel":"app","message":"404 Not Found","context":{"path":"/wedding/public","ip":"::1"}}
{"ts":"2026-09-15T06:48:02.000000Z","level":"warning","channel":"app","message":"Route not found","context":{"path":"/wedding/public","method":"GET"}}
{"ts":"2026-09-15T06:48:02.000000Z","level":"warning","channel":"app","message":"404 Not Found","context":{"path":"/wedding/public","ip":"127.0.0.1"}}
{"ts":"2026-09-15T06:49:20.000000Z","level":"warning","channel":"app","message":"Route not found","context":{"path":"/wedding/public/index.php","method":"GET"}}
{"ts":"2026-09-15T06:49:20.000000Z","level":"warning","channel":"app","message":"404 Not Found","context":{"path":"/wedding/public/index.php","ip":"::1"}}
{"ts":"2026-09-15T06:49:20.000000Z","level":"warning","channel":"app","message":"Route not found","context":{"path":"/wedding/public/assets/app.css","method":"GET"}}
{"ts":"2026-09-15T06:49:20.000000Z","level":"warning","channel":"app","message":"404 Not Found","context":{"path":"/wedding/public/assets/app.css","ip":"::1"}}
{"ts":"2026-09-15T06:49:53.000000Z","level":"warning","channel":"app","message":"Route not found","context":{"path":"/wedding/public","method":"GET"}}
{"ts":"2026-09-15T06:49:53.000000Z","level":"warning","channel":"app","message":"404 Not Found","context":{"path":"/wedding/public","ip":"::1"}}
{"ts":"2026-09-15T06:49:53.000000Z","level":"warning","channel":"app","message":"Route not found","context":{"path":"/wedding/public","method":"GET"}}
{"ts":"2026-09-15T06:49:53.000000Z","level":"warning","channel":"app","message":"404 Not Found","context":{"path":"/wedding/public","ip":"::1"}}
{"ts":"2026-09-15T06:49:56.000000Z","level":"warning","channel":"app","message":"Route not found","context":{"path":"/wedding/public","method":"GET"}}
{"ts":"2026-09-15T06:49:56.000000Z","level":"warning","channel":"app","message":"404 Not Found","context":{"path":"/wedding/public","ip":"::1"}}
{"ts":"2026-09-15T06:50:50.000000Z","level":"warning","channel":"app","message":"Route not found","context":{"path":"/wedding/public/login","method":"GET"}}
{"ts":"2026-09-15T06:50:50.000000Z","level":"warning","channel":"app","message":"404 Not Found","context":{"path":"/wedding/public/login","ip":"::1"}}
{"ts":"2026-09-15T06:51:38.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T06:51:49.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T06:51:49.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T06:51:49.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T06:51:49.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T06:51:50.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T06:51:51.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T06:51:51.000000Z","level":"info","channel":"app","message":"audit.wedding.created.wedding","context":{"couple_name":"Smoke Couple TEST"}}
{"ts":"2026-09-15T06:51:51.000000Z","level":"info","channel":"app","message":"audit.wedding.updated.wedding","context":{"couple_name":"Smoke Couple TEST2"}}
{"ts":"2026-09-15T06:51:51.000000Z","level":"info","channel":"app","message":"audit.event.created.event","context":{"wedding_id":364,"name":"Smoke Akad"}}
{"ts":"2026-09-15T06:51:51.000000Z","level":"info","channel":"app","message":"audit.event.updated.event","context":{"wedding_id":364,"name":"Smoke Akad (Update)"}}
{"ts":"2026-09-15T06:51:51.000000Z","level":"info","channel":"app","message":"audit.member.added.wedding","context":{"user_id":3}}
{"ts":"2026-09-15T06:51:51.000000Z","level":"info","channel":"app","message":"audit.member.removed.wedding","context":{"user_id":3}}
{"ts":"2026-09-15T06:51:51.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"aira@example.test"}}
{"ts":"2026-09-15T06:51:52.000000Z","level":"warning","channel":"app","message":"403 Forbidden","context":{"path":"/weddings/364","ip":"127.0.0.1","user":3}}
{"ts":"2026-09-15T06:51:52.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"sari@example.test"}}
{"ts":"2026-09-15T06:51:52.000000Z","level":"warning","channel":"app","message":"403 Forbidden","context":{"path":"/weddings/2","ip":"127.0.0.1","user":11}}
{"ts":"2026-09-15T06:51:52.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"rangga@example.test"}}
{"ts":"2026-09-15T06:51:52.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T06:51:52.000000Z","level":"info","channel":"app","message":"audit.task_category.created.task_category","context":{"wedding_id":364,"name":"Smoke Catering"}}
{"ts":"2026-09-15T06:51:52.000000Z","level":"info","channel":"app","message":"audit.task_category.updated.task_category","context":{"wedding_id":364,"name":"Smoke Catering X"}}
{"ts":"2026-09-15T06:51:52.000000Z","level":"info","channel":"app","message":"audit.task.created.task","context":{"wedding_id":364,"title":"Smoke Task Pita"}}
{"ts":"2026-09-15T06:51:52.000000Z","level":"info","channel":"app","message":"audit.task.updated.task","context":{"wedding_id":364,"title":"Smoke Task Pita (Selesai)"}}
{"ts":"2026-09-15T06:51:53.000000Z","level":"info","channel":"app","message":"audit.timeline.created.timeline","context":{"wedding_id":364,"title":"Smoke Fitting Tgl"}}
{"ts":"2026-09-15T06:51:53.000000Z","level":"info","channel":"app","message":"audit.event.created.event","context":{"wedding_id":364,"name":"Smoke Resepsi RDN"}}
{"ts":"2026-09-15T06:51:53.000000Z","level":"info","channel":"app","message":"audit.rundown.created.rundown","context":{"wedding_id":364,"event_id":125,"activity":"Smoke Santap Malam"}}
{"ts":"2026-09-15T06:51:53.000000Z","level":"info","channel":"app","message":"audit.budget_category.created.budget_category","context":{"wedding_id":364,"name":"Smoke Catering anggaran"}}
{"ts":"2026-09-15T06:51:53.000000Z","level":"info","channel":"app","message":"audit.budget_category.updated.budget_category","context":{"wedding_id":364,"name":"Smoke Catering anggaran X"}}
{"ts":"2026-09-15T06:51:53.000000Z","level":"info","channel":"app","message":"audit.budget_item.created.budget_item","context":{"wedding_id":364,"name":"Smoke Paket Katering"}}
{"ts":"2026-09-15T06:51:53.000000Z","level":"info","channel":"app","message":"audit.budget_item.updated.budget_item","context":{"wedding_id":364,"name":"Smoke Paket Katering Premium"}}
{"ts":"2026-09-15T06:51:53.000000Z","level":"info","channel":"app","message":"audit.vendor.created.vendor","context":{"wedding_id":364,"name":"Smoke Katering Jaya"}}
{"ts":"2026-09-15T06:51:53.000000Z","level":"info","channel":"app","message":"audit.expense.created.expense","context":{"wedding_id":364,"name":"Smoke DP Katering","amount":4000000}}
{"ts":"2026-09-15T06:51:53.000000Z","level":"info","channel":"app","message":"audit.payment.created.payment","context":{"wedding_id":364,"name":"Smoke DP Katering Cash"}}
{"ts":"2026-09-15T06:51:53.000000Z","level":"info","channel":"app","message":"audit.guest_group.created.guest_group","context":{"wedding_id":364,"name":"Smoke Grup Keluarga"}}
{"ts":"2026-09-15T06:51:53.000000Z","level":"info","channel":"app","message":"audit.guest.created.guest","context":{"wedding_id":364,"name":"Smoke Tamu Satu"}}
{"ts":"2026-09-15T06:51:53.000000Z","level":"info","channel":"app","message":"audit.guest.imported.guest","context":{"wedding_id":364,"name":"Smoke Tamu CSV","method":"csv/xlsx"}}
{"ts":"2026-09-15T06:51:53.000000Z","level":"info","channel":"app","message":"audit.guest.imported.guest","context":{"wedding_id":364,"name":"Smoke Tamu Duplikat","method":"csv/xlsx"}}
{"ts":"2026-09-15T06:51:53.000000Z","level":"info","channel":"app","message":"audit.guest.imported.guest","context":{"wedding_id":364,"name":"Smoke Tamu Tanpa Grup","method":"csv/xlsx"}}
{"ts":"2026-09-15T06:51:53.000000Z","level":"info","channel":"app","message":"audit.guest.import.guest","context":{"wedding_id":364,"imported":3,"skipped":0,"errors":0}}
{"ts":"2026-09-15T06:51:53.000000Z","level":"info","channel":"app","message":"audit.guest.invited_bulk.guest","context":{"wedding_id":364,"count":1}}
{"ts":"2026-09-15T06:51:54.000000Z","level":"info","channel":"app","message":"audit.task.created.task","context":{"wedding_id":364,"title":"Smoke Due Tugas"}}
{"ts":"2026-09-15T06:51:54.000000Z","level":"info","channel":"app","message":"audit.payment.created.payment","context":{"wedding_id":364,"name":"Smoke DP Terdekat"}}
{"ts":"2026-09-15T06:51:55.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T06:51:55.000000Z","level":"info","channel":"app","message":"audit.user.password_changed.user","context":[]}
{"ts":"2026-09-15T06:51:55.000000Z","level":"warning","channel":"app","message":"Route not found","context":{"path":"/logout","method":"GET"}}
{"ts":"2026-09-15T06:51:55.000000Z","level":"warning","channel":"app","message":"404 Not Found","context":{"path":"/logout","ip":"127.0.0.1"}}
{"ts":"2026-09-15T06:51:56.000000Z","level":"info","channel":"app","message":"audit.user.password_changed.user","context":[]}
{"ts":"2026-09-15T06:51:56.000000Z","level":"info","channel":"app","message":"audit.user.profile_updated.user","context":{"name":"Administrator Smoke Test","email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T06:51:56.000000Z","level":"info","channel":"app","message":"audit.user.profile_updated.user","context":{"name":"Wedding Organizer Demo","email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T06:51:56.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T06:51:56.000000Z","level":"info","channel":"app","message":"audit.event.deleted.event","context":{"wedding_id":364}}
{"ts":"2026-09-15T06:51:56.000000Z","level":"info","channel":"app","message":"audit.event.deleted.event","context":{"wedding_id":364}}
{"ts":"2026-09-15T06:51:56.000000Z","level":"info","channel":"app","message":"audit.wedding.deleted.wedding","context":{"couple_name":"Smoke Couple TEST2"}}
{"ts":"2026-09-15T06:52:45.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T06:58:07.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T07:02:40.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T07:02:40.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T07:02:40.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T07:02:40.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T07:02:41.000000Z","level":"info","channel":"app","message":"audit.logout.user","context":{"action":"logout"}}
{"ts":"2026-09-15T07:02:42.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T07:02:42.000000Z","level":"info","channel":"app","message":"audit.wedding.created.wedding","context":{"couple_name":"Smoke Couple TEST"}}
{"ts":"2026-09-15T07:02:42.000000Z","level":"info","channel":"app","message":"audit.wedding.updated.wedding","context":{"couple_name":"Smoke Couple TEST2"}}
{"ts":"2026-09-15T07:02:42.000000Z","level":"info","channel":"app","message":"audit.event.created.event","context":{"wedding_id":379,"name":"Smoke Akad"}}
{"ts":"2026-09-15T07:02:42.000000Z","level":"info","channel":"app","message":"audit.event.updated.event","context":{"wedding_id":379,"name":"Smoke Akad (Update)"}}
{"ts":"2026-09-15T07:02:42.000000Z","level":"info","channel":"app","message":"audit.member.added.wedding","context":{"user_id":3}}
{"ts":"2026-09-15T07:02:43.000000Z","level":"info","channel":"app","message":"audit.member.removed.wedding","context":{"user_id":3}}
{"ts":"2026-09-15T07:02:43.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"aira@example.test"}}
{"ts":"2026-09-15T07:02:43.000000Z","level":"warning","channel":"app","message":"403 Forbidden","context":{"path":"/weddings/379","ip":"127.0.0.1","user":3}}
{"ts":"2026-09-15T07:02:43.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"sari@example.test"}}
{"ts":"2026-09-15T07:02:43.000000Z","level":"warning","channel":"app","message":"403 Forbidden","context":{"path":"/weddings/2","ip":"127.0.0.1","user":11}}
{"ts":"2026-09-15T07:02:43.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"rangga@example.test"}}
{"ts":"2026-09-15T07:02:43.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T07:02:43.000000Z","level":"info","channel":"app","message":"audit.task_category.created.task_category","context":{"wedding_id":379,"name":"Smoke Catering"}}
{"ts":"2026-09-15T07:02:43.000000Z","level":"info","channel":"app","message":"audit.task_category.updated.task_category","context":{"wedding_id":379,"name":"Smoke Catering X"}}
{"ts":"2026-09-15T07:02:44.000000Z","level":"info","channel":"app","message":"audit.task.created.task","context":{"wedding_id":379,"title":"Smoke Task Pita"}}
{"ts":"2026-09-15T07:02:44.000000Z","level":"info","channel":"app","message":"audit.task.updated.task","context":{"wedding_id":379,"title":"Smoke Task Pita (Selesai)"}}
{"ts":"2026-09-15T07:02:44.000000Z","level":"info","channel":"app","message":"audit.timeline.created.timeline","context":{"wedding_id":379,"title":"Smoke Fitting Tgl"}}
{"ts":"2026-09-15T07:02:44.000000Z","level":"info","channel":"app","message":"audit.event.created.event","context":{"wedding_id":379,"name":"Smoke Resepsi RDN"}}
{"ts":"2026-09-15T07:02:44.000000Z","level":"info","channel":"app","message":"audit.rundown.created.rundown","context":{"wedding_id":379,"event_id":130,"activity":"Smoke Santap Malam"}}
{"ts":"2026-09-15T07:02:44.000000Z","level":"info","channel":"app","message":"audit.budget_category.created.budget_category","context":{"wedding_id":379,"name":"Smoke Catering anggaran"}}
{"ts":"2026-09-15T07:02:44.000000Z","level":"info","channel":"app","message":"audit.budget_category.updated.budget_category","context":{"wedding_id":379,"name":"Smoke Catering anggaran X"}}
{"ts":"2026-09-15T07:02:44.000000Z","level":"info","channel":"app","message":"audit.budget_item.created.budget_item","context":{"wedding_id":379,"name":"Smoke Paket Katering"}}
{"ts":"2026-09-15T07:02:44.000000Z","level":"info","channel":"app","message":"audit.budget_item.updated.budget_item","context":{"wedding_id":379,"name":"Smoke Paket Katering Premium"}}
{"ts":"2026-09-15T07:02:44.000000Z","level":"info","channel":"app","message":"audit.vendor.created.vendor","context":{"wedding_id":379,"name":"Smoke Katering Jaya"}}
{"ts":"2026-09-15T07:02:44.000000Z","level":"info","channel":"app","message":"audit.expense.created.expense","context":{"wedding_id":379,"name":"Smoke DP Katering","amount":4000000}}
{"ts":"2026-09-15T07:02:45.000000Z","level":"info","channel":"app","message":"audit.payment.created.payment","context":{"wedding_id":379,"name":"Smoke DP Katering Cash"}}
{"ts":"2026-09-15T07:02:45.000000Z","level":"info","channel":"app","message":"audit.guest_group.created.guest_group","context":{"wedding_id":379,"name":"Smoke Grup Keluarga"}}
{"ts":"2026-09-15T07:02:45.000000Z","level":"info","channel":"app","message":"audit.guest.created.guest","context":{"wedding_id":379,"name":"Smoke Tamu Satu"}}
{"ts":"2026-09-15T07:02:45.000000Z","level":"info","channel":"app","message":"audit.guest.imported.guest","context":{"wedding_id":379,"name":"Smoke Tamu CSV","method":"csv/xlsx"}}
{"ts":"2026-09-15T07:02:45.000000Z","level":"info","channel":"app","message":"audit.guest.imported.guest","context":{"wedding_id":379,"name":"Smoke Tamu Duplikat","method":"csv/xlsx"}}
{"ts":"2026-09-15T07:02:45.000000Z","level":"info","channel":"app","message":"audit.guest.imported.guest","context":{"wedding_id":379,"name":"Smoke Tamu Tanpa Grup","method":"csv/xlsx"}}
{"ts":"2026-09-15T07:02:45.000000Z","level":"info","channel":"app","message":"audit.guest.import.guest","context":{"wedding_id":379,"imported":3,"skipped":0,"errors":0}}
{"ts":"2026-09-15T07:02:45.000000Z","level":"info","channel":"app","message":"audit.guest.invited_bulk.guest","context":{"wedding_id":379,"count":1}}
{"ts":"2026-09-15T07:02:46.000000Z","level":"info","channel":"app","message":"audit.task.created.task","context":{"wedding_id":379,"title":"Smoke Due Tugas"}}
{"ts":"2026-09-15T07:02:46.000000Z","level":"info","channel":"app","message":"audit.payment.created.payment","context":{"wedding_id":379,"name":"Smoke DP Terdekat"}}
{"ts":"2026-09-15T07:02:47.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T07:02:47.000000Z","level":"info","channel":"app","message":"audit.user.password_changed.user","context":[]}
{"ts":"2026-09-15T07:02:47.000000Z","level":"warning","channel":"app","message":"Route not found","context":{"path":"/logout","method":"GET"}}
{"ts":"2026-09-15T07:02:47.000000Z","level":"warning","channel":"app","message":"404 Not Found","context":{"path":"/logout","ip":"127.0.0.1"}}
{"ts":"2026-09-15T07:02:47.000000Z","level":"info","channel":"app","message":"audit.user.password_changed.user","context":[]}
{"ts":"2026-09-15T07:02:47.000000Z","level":"info","channel":"app","message":"audit.user.profile_updated.user","context":{"name":"Administrator Smoke Test","email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T07:02:48.000000Z","level":"info","channel":"app","message":"audit.user.profile_updated.user","context":{"name":"Wedding Organizer Demo","email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T07:02:48.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"admin@weddingplanner.test"}}
{"ts":"2026-09-15T07:02:48.000000Z","level":"info","channel":"app","message":"audit.event.deleted.event","context":{"wedding_id":379}}
{"ts":"2026-09-15T07:02:48.000000Z","level":"info","channel":"app","message":"audit.event.deleted.event","context":{"wedding_id":379}}
{"ts":"2026-09-15T07:02:48.000000Z","level":"info","channel":"app","message":"audit.wedding.deleted.wedding","context":{"couple_name":"Smoke Couple TEST2"}}
{"ts":"2026-09-15T07:13:05.000000Z","level":"info","channel":"app","message":"audit.guest.created.guest","context":{"wedding_id":1,"name":"Hermanto"}}
{"ts":"2026-09-15T07:19:12.000000Z","level":"info","channel":"app","message":"audit.guest.invited_bulk.guest","context":{"wedding_id":1,"count":1}}
{"ts":"2026-09-15T07:20:09.000000Z","level":"info","channel":"app","message":"audit.guest.updated.guest","context":{"wedding_id":1,"name":"Hermanto"}}
{"ts":"2026-09-15T07:20:15.000000Z","level":"info","channel":"app","message":"audit.guest.invited_bulk.guest","context":{"wedding_id":1,"count":1}}
{"ts":"2026-09-15T07:27:52.000000Z","level":"info","channel":"app","message":"audit.login.user","context":{"email":"super@weddingplanner.test"}}
{"ts":"2026-09-15T07:42:12.000000Z","level":"warning","channel":"app","message":"Route not found","context":{"path":"/public","method":"GET"}}
{"ts":"2026-09-15T07:42:12.000000Z","level":"warning","channel":"app","message":"404 Not Found","context":{"path":"/public","ip":"36.77.181.113"}}
{"ts":"2026-09-15T07:43:36.000000Z","level":"warning","channel":"app","message":"Route not found","context":{"path":"/public","method":"GET"}}
{"ts":"2026-09-15T07:43:36.000000Z","level":"warning","channel":"app","message":"404 Not Found","context":{"path":"/public","ip":"36.77.181.113"}}
{"ts":"2026-09-15T08:46:00.000000Z","level":"warning","channel":"app","message":"Route not found","context":{"path":"/public","method":"GET"}}
{"ts":"2026-09-15T08:46:00.000000Z","level":"warning","channel":"app","message":"404 Not Found","context":{"path":"/public","ip":"36.77.181.113"}}
{"ts":"2026-09-15T09:23:23.000000Z","level":"warning","channel":"app","message":"Route not found","context":{"path":"/public","method":"GET"}}
{"ts":"2026-09-15T09:23:23.000000Z","level":"warning","channel":"app","message":"404 Not Found","context":{"path":"/public","ip":"216.73.217.129"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
{"ts":"2026-09-15T10:04:14.000000Z","level":"error","channel":"app","message":"Database connection failed.","context":{"message":"SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)"}}
