Application Logs performance-log-2026102812.txt 200 entries
All ERR WRN INF DBG
Activity 200
2026-10-28 12:50:03.904 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:18e1a01538cec28bad1c2b3a7192102a] HTTP GET /swagger/index.html responded 200 in 0.3141 ms
2026-10-28 12:50:03.816 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:fe898839df86b30af40fb8de6e2bcfc3] HTTP GET /UI/business/login responded 200 in 2.9250 ms
2026-10-28 12:50:03.816 +00:00 [INF] [HTTP] [U:-] [E:-] [C:b3ac8976ca49] [T:fe898839df86b30af40fb8de6e2bcfc3] HTTP GET /UI/business/login 200
Req: [no body] Res: <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Sign In - Wealthmax</title> <link rel="stylesheet" href="/lib/bootstrap/dist/css/bootstrap.min.css" /> <link rel="stylesheet" href="/css/site.css?v=xQHUTQJdpYJFKIjDlFCI1X8KDqtO5qaSSeJFSoCP3pA" /> <style> html, body { height: 100%; } body { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 100vh; background-color: #f5f7fa; } .login-wrapper { display: flex; flex-direction: column; align-items: center; width: 100%; padding: 1.5rem; } .brand-logo { margin-bottom: 1.75rem; text-align: center; } .brand-logo span { font-size: 1.4rem; font-weight: 700; color: #1a1a2e; letter-spacing: -0.5px; } .brand-logo small { display: block; font-size: 0.7rem; color: #6c757d; font-weight: 500; text-transform: uppercase; letter-spacing: 1px; margin-top: 2px; } </style> </head> <body> <div class="login-wrapper"> <div class="brand-logo"> <span>Wealthmax</span> <small>PM CRM</small> </div> <div class="card shadow-sm" style="width: 100%; max-width: 400px;"> <div class="card-body p-4"> <h4 class="card-title mb-1 fw-semibold">Sign In</h4> <p class="text-muted small mb-4">Enter your credentials to access the portal.</p> <form method="post" novalidate action="/UI/business/login"> <div class="mb-3"> <label class="form-label" for="Email">Email</label> <input class="form-control" placeholder="you@example.com" autofocus type="email" data-val="true" data-val-email="The Email field is not a valid e-mail address." data-val-required="The Email field is required." id="Email" name="Email" value="" /> <span class="text-danger small field-validation-valid" data-valmsg-for="Email" data-valmsg-replace="true"></span> </div> <div class="mb-4"> <label class="form-label" for="Password">Password</label> <input type="password" class="form-control" placeholder="••••••••" data-val="true" data-val-minlength="The field Password must be a string or array type with a minimum length of &#x27;8&#x27;." data-val-minlength-min="8" data-val-required="The Password field is required." id="Password" name="Password" /> <span class="text-danger small field-validation-valid" data-valmsg-for="Password" data-valmsg-replace="true"></span> </div> <button type="submit" class="btn btn-primary w-100">Sign In</button> <input name="__RequestVerificationToken" type="hidden" value="CfDJ8C3EUwWgHqhGrb9YaB4tt-scoNri1BFL7r7Bk8ESbmgDNhMyikrj8qk2eRXBD-rE2T38eZKrwZmFOBhQtBOzP30xtbRwLbhQuwMHGRuIra_Kosf6jk3xpDo5RVCS24j8G-sg8kpzJFyC04e5FPoHdNw" /></form> <div class="mt-3 text-center"> <a href="/UI/business/forgot-password" class="small text-decoration-none">Forgot password?</a> </div> </div> </div> </div> <script src="/lib/bootstrap/dist/js/bootstrap.bundle.min.js"></script> <script src="/lib/jquery/dist/jquery.min.js"></script> <script src="/lib/jquery-validation/dist/jquery.validate.min.js"></script> <script src="/lib/jquery-validation-unobtrusive/dist/jquery.validate.unobtrusive.min.js"></script> </body> </html>
2026-10-28 12:50:03.714 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:4d4eff554801f90dad4cd8b392b438c1] HTTP GET /swagger responded 301 in 0.0355 ms
2026-10-28 12:50:03.609 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:c39495b8778004a1a786a1154438c708] HTTP GET /UI/FactFindGenerate responded 302 in 0.5192 ms
2026-10-28 12:50:03.609 +00:00 [INF] [HTTP] [U:-] [E:-] [C:58f44cdcb6ff] [T:c39495b8778004a1a786a1154438c708] HTTP GET /UI/FactFindGenerate 302
Req: [no body] Res: [empty response]
2026-10-28 12:50:00.741 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:129bed21cadfa80e6de40c6825a68b57] HTTP GET /metrics responded 200 in 1.6430 ms
2026-10-28 12:49:59.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:603a05db4217a9272e4d39bae025acff] HTTP GET /metrics responded 200 in 1.6907 ms
2026-10-28 12:49:59.473 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:d1e6493507ba651fb2191fbae1d62ec6] HTTP GET /css/site.css responded 200 in 0.3381 ms
2026-10-28 12:49:59.473 +00:00 [INF] [HTTP] [U:-] [E:-] [C:-] [T:d1e6493507ba651fb2191fbae1d62ec6] HTTP GET /css/site.css 200
Req: [no body] Res: html { font-size: 14px; } @media (min-width: 768px) { html { font-size: 16px; } } .btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus { box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb; } html { position: relative; min-height: 100%; } body { margin-bottom: 60px; } .form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder { color: var(--bs-secondary-color); text-align: end; } .form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder { text-align: start; }
2026-10-28 12:49:58.973 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:5ba35455666ed635e8b0eb6fadac351e] HTTP GET /css/commissions.css responded 200 in 1.0817 ms
2026-10-28 12:49:58.972 +00:00 [INF] [HTTP] [U:-] [E:-] [C:-] [T:5ba35455666ed635e8b0eb6fadac351e] HTTP GET /css/commissions.css 200
Req: [no body] Res: /* ============================================================ Wealthmax UI — scoped clean-fintech light theme Applies under .commissions-area (Commissions module) and .wm-ui-area (all other modernised UI pages) so that the design tokens and cm-* components are shared across the app without leaking into legacy Bootstrap pages. ============================================================ */ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap'); /* ── Design tokens ─────────────────────────────────────────── */ .commissions-area, .wm-ui-area { --cm-canvas: #f4f6fb; --cm-surface: #ffffff; --cm-border: #e8ecf4; --cm-border-light: #f0f3f9; --cm-radius: 14px; --cm-radius-sm: 8px; --cm-shadow: 0 1px 3px rgba(30,41,80,.06), 0 4px 16px rgba(30,41,80,.07); --cm-shadow-hover: 0 4px 12px rgba(30,41,80,.10), 0 12px 32px rgba(30,41,80,.10); --cm-font: 'Inter', system-ui, -apple-system, sans-serif; --cm-accent: #4361ee; --cm-accent-muted: #eef1fc; --cm-text: #1a2035; --cm-text-muted: #7b8ab8; --cm-text-light: #a8b4d0; --cm-green: #10b981; --cm-green-muted: #ecfdf5; --cm-amber: #f59e0b; --cm-amber-muted: #fffbeb; --cm-red: #ef4444; --cm-red-muted: #fef2f2; --cm-blue: #3b82f6; --cm-blue-muted: #eff6ff; --cm-violet: #8b5cf6; --cm-violet-muted: #f5f3ff; --cm-slate: #64748b; --cm-slate-muted: #f8fafc; font-family: var(--cm-font); background-color: var(--cm-canvas); color: var(--cm-text); } /* ── Page background (full main viewport) ───────────────────── */ .commissions-area .page-bg-fix { background: var(--cm-canvas); } /* ── Page header ────────────────────────────────────────────── */ .cm-page-head { margin-bottom: 1.75rem; } .cm-page-head h3, .cm-page-head .cm-title { font-size: 1.5rem; font-weight: 700; color: var(--cm-text); letter-spacing: -0.02em; margin: 0; } .cm-page-head .cm-subtitle { font-size: 0.8125rem; color: var(--cm-text-muted); margin-top: 0.2rem; } /* ── Preview badge (replaces the stock warning badge) ───────── */ .cm-preview-badge { display: inline-flex; align-items: center; gap: 4px; font-size: 0.7rem; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; padding: 2px 8px; border-radius: 20px; background: #fff8e6; color: #b45309; border: 1px solid #fcd34d; vertical-align: middle; } /* ── KPI tiles ───────────────────────────────────────────────── */ .cm-kpi { background: var(--cm-surface); border-radius: var(--cm-radius); box-shadow: var(--cm-shadow); padding: 1.25rem 1.375rem; position: relative; overflow: hidden; transition: box-shadow .18s, transform .18s; border: 1px solid var(--cm-border-light); } .cm-kpi:hover { box-shadow: var(--cm-shadow-hover); transform: translateY(-2px); } .cm-kpi::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; border-radius: var(--cm-radius) var(--cm-radius) 0 0; } .cm-kpi-green::before { background: linear-gradient(90deg, #10b981, #34d399); } .cm-kpi-amber::before { background: linear-gradient(90deg, #f59e0b, #fbbf24); } .cm-kpi-blue::before { background: linear-gradient(90deg, #3b82f6, #60a5fa); } .cm-kpi-red::before { background: linear-gradient(90deg, #ef4444, #f87171); } .cm-kpi-violet::before { background: linear-gradient(90deg, #8b5cf6, #a78bfa); } .cm-kpi-slate::before { background: linear-gradient(90deg, #64748b, #94a3b8); } .cm-kpi-icon { width: 36px; height: 36px; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 1rem; margin-bottom: 0.875rem; flex-shrink: 0; } .cm-kpi-green .cm-kpi-icon { background: var(--cm-green-muted); color: var(--cm-green); } .cm-kpi-amber .cm-kpi-icon { background: var(--cm-amber-muted); color: var(--cm-amber); } .cm-kpi-blue .cm-kpi-icon { background: var(--cm-blue-muted); color: var(--cm-blue); } .cm-kpi-red .cm-kpi-icon { background: var(--cm-red-muted); color: var(--cm-red); } .cm-kpi-violet .cm-kpi-icon { background: var(--cm-violet-muted); color: var(--cm-violet); } .cm-kpi-slate .cm-kpi-icon { background: var(--cm-slate-muted); color: var(--cm-slate); } .cm-kpi-label { font-size: 0.7rem; font-weight: 600; letter-spacing: 0.07em; text-transform: uppercase; color: var(--cm-text-muted); margin-bottom: 0.25rem; } .cm-kpi-value { font-size: 1.625rem; font-weight: 700; color: var(--cm-text); letter-spacing: -0.025em; line-height: 1.1; } .cm-kpi-sub { font-size: 0.75rem; color: var(--cm-text-muted); margin-top: 0.3rem; } /* ── Cards ───────────────────────────────────────────────────── */ .cm-card { background: var(--cm-surface); border-radius: var(--cm-radius); box-shadow: var(--cm-shadow); border: 1px solid var(--cm-border-light); overflow: hidden; } .cm-card-header { padding: 1rem 1.375rem; border-bottom: 1px solid var(--cm-border); display: flex; align-items: center; justify-content: space-between; gap: 1rem; background: var(--cm-surface); } .cm-card-header-title { font-size: 0.875rem; font-weight: 600; color: var(--cm-text); display: flex; align-items: center; gap: 0.5rem; } .cm-card-header-title i { color: var(--cm-accent); font-size: 1rem; } .cm-card-header-meta { font-size: 0.75rem; color: var(--cm-text-muted); } .cm-card-body { padding: 1.25rem 1.375rem; } /* Nav cards (dashboard) */ .cm-nav-card { background: var(--cm-surface); border-radius: var(--cm-radius); box-shadow: var(--cm-shadow); border: 1px solid var(--cm-border-light); padding: 1.25rem 1.375rem; display: flex; align-items: flex-start; gap: 1rem; text-decoration: none; transition: box-shadow .18s, transform .18s, border-color .18s; height: 100%; } .cm-nav-card:hover { box-shadow: var(--cm-shadow-hover); transform: translateY(-3px); border-color: var(--cm-accent); text-decoration: none; } .cm-nav-card-icon { width: 44px; height: 44px; border-radius: 12px; background: var(--cm-accent-muted); color: var(--cm-accent); display: flex; align-items: center; justify-content: center; font-size: 1.25rem; flex-shrink: 0; } .cm-nav-card-title { font-size: 0.9rem; font-weight: 600; color: var(--cm-text); margin-bottom: 0.25rem; } .cm-nav-card-desc { font-size: 0.78rem; color: var(--cm-text-muted); line-height: 1.4; margin: 0; } /* ── Tables ──────────────────────────────────────────────────── */ .commissions-area .cm-table, .wm-ui-area .cm-table { margin: 0; font-size: 0.8375rem; color: var(--cm-text); border-collapse: collapse; width: 100%; } .commissions-area .cm-table thead th, .wm-ui-area .cm-table thead th { background: var(--cm-canvas); color: var(--cm-text-muted); font-size: 0.7rem; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; padding: 0.75rem 1rem; border-bottom: 1px solid var(--cm-border); border-top: none; white-space: nowrap; } .commissions-area .cm-table tbody td, .wm-ui-area .cm-table tbody td { padding: 0.75rem 1rem; border-bottom: 1px solid var(--cm-border-light); vertical-align: middle; } .commissions-area .cm-table tbody tr:last-child td, .wm-ui-area .cm-table tbody tr:last-child td { border-bottom: none; } .commissions-area .cm-table tbody tr:hover td, .wm-ui-area .cm-table tbody tr:hover td { background: var(--cm-canvas); } .commissions-area .cm-table tfoot td, .wm-ui-area .cm-table tfoot td { padding: 0.75rem 1rem; border-top: 2px solid var(--cm-border); background: var(--cm-canvas); font-weight: 600; font-size: 0.8375rem; } /* ── Badges / pills ──────────────────────────────────────────── */ .cm-pill { display: inline-flex; align-items: center; gap: 3px; font-size: 0.7rem; font-weight: 600; letter-spacing: 0.02em; padding: 2px 9px; border-radius: 20px; line-height: 1.6; white-space: nowrap; } .cm-pill-green { background: var(--cm-green-muted); color: #065f46; } .cm-pill-amber { background: var(--cm-amber-muted); color: #92400e; } .cm-pill-blue { background: var(--cm-blue-muted); color: #1e40af; } .cm-pill-red { background: var(--cm-red-muted); color: #991b1b; } .cm-pill-violet { background: var(--cm-violet-muted); color: #5b21b6; } .cm-pill-slate { background: var(--cm-slate-muted); color: #334155; border: 1px solid #e2e8f0; } .cm-pill-info { background: #eff6ff; color: #1e40af; } .cm-pill-warn { background: var(--cm-amber-muted); color: #92400e; } /* ── Buttons ─────────────────────────────────────────────────── */ .commissions-area .cm-btn-back, .wm-ui-area .cm-btn-back { font-size: 0.8125rem; font-weight: 500; padding: 0.375rem 0.875rem; border-radius: var(--cm-radius-sm); border: 1px solid var(--cm-border); background: var(--cm-surface); color: var(--cm-text-muted); text-decoration: none; display: inline-flex; align-items: center; gap: 0.35rem; transition: border-color .14s, color .14s, background .14s; } .commissions-area .cm-btn-back:hover, .wm-ui-area .cm-btn-back:hover { border-color: var(--cm-accent); color: var(--cm-accent); background: var(--cm-accent-muted); text-decoration: none; } .commissions-area .cm-btn-primary, .wm-ui-area .cm-btn-primary { font-size: 0.8125rem; font-weight: 500; padding: 0.375rem 0.875rem; border-radius: var(--cm-radius-sm); border: 1px solid var(--cm-accent); background: var(--cm-accent); color: #fff; text-decoration: none; display: inline-flex; align-items: center; gap: 0.35rem; transition: opacity .14s; } .commissions-area .cm-btn-primary:hover, .wm-ui-area .cm-btn-primary:hover { opacity: 0.88; color: #fff; text-decoration: none; } .commissions-area .cm-btn-action, .wm-ui-area .cm-btn-action { font-size: 0.75rem; font-weight: 500; padding: 0.25rem 0.625rem; border-radius: 6px; border: 1px solid var(--cm-border); background: var(--cm-surface); color: var(--cm-text-muted); text-decoration: none; display: inline-flex; align-items: center; gap: 0.25rem; transition: border-color .14s, color .14s; white-space: nowrap; } .commissions-area .cm-btn-action:hover, .wm-ui-area .cm-btn-action:hover { border-color: var(--cm-accent); color: var(--cm-accent); text-decoration: none; } .commissions-area .cm-btn-action.cm-btn-action-primary, .wm-ui-area .cm-btn-action.cm-btn-action-primary { border-color: var(--cm-accent); color: var(--cm-accent); } .commissions-area .cm-btn-action.cm-btn-action-primary:hover, .wm-ui-area .cm-btn-action.cm-btn-action-primary:hover { background: var(--cm-accent-muted); } /* ── Form controls inside tables ─────────────────────────────── */ .commissions-area .cm-table .form-control, .wm-ui-area .cm-table .form-control { font-size: 0.8125rem; border-radius: 6px; border-color: var(--cm-border); background: var(--cm-canvas); color: var(--cm-text); } .commissions-area .cm-table .input-group-text, .wm-ui-area .cm-table .input-group-text { font-size: 0.8125rem; background: var(--cm-border-light); border-color: var(--cm-border); color: var(--cm-text-muted); } /* ── Info callout ────────────────────────────────────────────── */ .cm-callout { display: flex; align-items: flex-start; gap: 0.6rem; padding: 0.875rem 1rem; border-radius: var(--cm-radius-sm); font-size: 0.8rem; line-height: 1.5; border: 1px solid; } .cm-callout-info { background: var(--cm-blue-muted); border-color: #bfdbfe; color: #1e40af; } .cm-callout-warn { background: var(--cm-amber-muted); border-color: #fde68a; color: #92400e; } .cm-callout-success { background: var(--cm-green-muted); border-color: #a7f3d0; color: #065f46; } .cm-callout-danger { background: var(--cm-red-muted); border-color: #fecaca; color: #991b1b; } .cm-callout i { margin-top: 1px; flex-shrink: 0; font-size: 0.95rem; } /* ── Audit / event stream ────────────────────────────────────── */ .cm-event-list { list-style: none; padding: 0; margin: 0; } .cm-event-item { padding: 0.875rem 0; border-bottom: 1px solid var(--cm-border-light); display: flex; flex-direction: column; gap: 0.25rem; } .cm-event-item:last-child { border-bottom: none; } .cm-event-header { display: flex; justify-content: space-between; align-items: center; gap: 1rem; flex-wrap: wrap; } .cm-event-type { font-size: 0.8375rem; font-weight: 600; color: var(--cm-text); display: flex; align-items: center; gap: 0.375rem; } .cm-event-ref { font-size: 0.7rem; font-weight: 500; padding: 1px 7px; border-radius: 4px; background: var(--cm-canvas); border: 1px solid var(--cm-border); color: var(--cm-text-muted); font-family: ui-monospace, 'Cascadia Code', monospace; } .cm-event-meta { font-size: 0.75rem; color: var(--cm-text-light); white-space: nowrap; } .cm-event-detail { font-size: 0.78rem; color: var(--cm-text-muted); } /* ── Metadata row (key/value pairs) ─────────────────────────── */ .cm-meta-row { display: flex; justify-content: space-between; align-items: center; padding: 0.45rem 0; border-bottom: 1px solid var(--cm-border-light); font-size: 0.8125rem; } .cm-meta-row:last-child { border-bottom: none; } .cm-meta-label { color: var(--cm-text-muted); } .cm-meta-value { font-weight: 600; color: var(--cm-text); } /* ── Total banner (Profile page) ────────────────────────────── */ .cm-total-banner { border-radius: var(--cm-radius-sm); padding: 0.75rem 1rem; display: flex; align-items: center; gap: 0.5rem; font-size: 0.8375rem; font-weight: 500; border: 1px solid; margin-top: 1rem; } .cm-total-banner.ok { background: var(--cm-green-muted); border-color: #a7f3d0; color: #065f46; } .cm-total-banner.err { background: var(--cm-red-muted); border-color: #fecaca; color: #991b1b; } /* ── Section divider label ───────────────────────────────────── */ .cm-section-label { font-size: 0.7rem; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--cm-text-muted); margin-bottom: 0.75rem; padding-bottom: 0.4rem; border-bottom: 1px solid var(--cm-border-light); } /* ── Tabbed output card (shared by AllocationDetail + Lifecycle) ─ */ .commissions-area .sim-tabs-card, .wm-ui-area .sim-tabs-card { overflow: visible; } .commissions-area .sim-tabnav, .wm-ui-area .sim-tabnav { display: flex; gap: 2px; padding: 0 0.5rem; border-bottom: 1px solid var(--cm-border); background: var(--cm-canvas); border-radius: var(--cm-radius) var(--cm-radius) 0 0; flex-wrap: wrap; } .commissions-area .sim-tab, .wm-ui-area .sim-tab { position: relative; border: none; background: transparent; cursor: pointer; font-size: 0.8125rem; font-weight: 600; color: var(--cm-text-muted); padding: 0.75rem 0.95rem; display: inline-flex; align-items: center; gap: 0.4rem; border-bottom: 2px solid transparent; margin-bottom: -1px; transition: color .14s, border-color .14s; } .commissions-area .sim-tab i, .wm-ui-area .sim-tab i { font-size: 0.9rem; } .commissions-area .sim-tab:hover, .wm-ui-area .sim-tab:hover { color: var(--cm-text); } .commissions-area .sim-tab.is-active, .wm-ui-area .sim-tab.is-active { color: var(--cm-accent); border-bottom-color: var(--cm-accent); } .commissions-area .sim-tab-sub, .wm-ui-area .sim-tab-sub { font-weight: 400; color: var(--cm-text-muted); font-size: 0.75rem; } .commissions-area .sim-tab-count, .wm-ui-area .sim-tab-count { font-size: 0.68rem; font-weight: 700; line-height: 1; padding: 2px 6px; border-radius: 20px; background: var(--cm-accent-muted); color: var(--cm-accent); } .commissions-area .sim-tabpanel, .wm-ui-area .sim-tabpanel { display: none; } .commissions-area .sim-tabpanel.is-active, .wm-ui-area .sim-tabpanel.is-active { display: block; } /* Toolbar strip inside a panel (legend / heading row) */ .commissions-area .sim-panel-toolbar, .wm-ui-area .sim-panel-toolbar { padding: 0.75rem 1.375rem; border-bottom: 1px solid var(--cm-border-light); background: var(--cm-surface); } .commissions-area .sim-panel-toolbar-between, .wm-ui-area .sim-panel-toolbar-between { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; } .commissions-area .sim-panel-heading, .wm-ui-area .sim-panel-heading { font-size: 0.8rem; font-weight: 600; color: var(--cm-text); } /* Stronger totals band in a ledger footer */ .commissions-area .cm-table.cm-table-totals tfoot td, .wm-ui-area .cm-table.cm-table-totals tfoot td { border-top: 2px solid var(--cm-accent); background: var(--cm-accent-muted); color: var(--cm-text); } .commissions-area .cm-table.cm-table-totals tfoot td:first-child, .wm-ui-area .cm-table.cm-table-totals tfoot td:first-child { text-transform: uppercase; letter-spacing: 0.05em; font-size: 0.72rem; color: var(--cm-accent); } /* Bounded event-log items so entries don't blend together */ .commissions-area .cm-event-list.cm-event-list-cards .cm-event-item, .wm-ui-area .cm-event-list.cm-event-list-cards .cm-event-item { padding: 0.75rem 0.85rem; margin-bottom: 0.55rem; border: 1px solid var(--cm-border-light); border-left-width: 3px; border-radius: var(--cm-radius-sm); background: var(--cm-surface); } .commissions-area .cm-event-list.cm-event-list-cards .cm-event-item:last-child, .wm-ui-area .cm-event-list.cm-event-list-cards .cm-event-item:last-child { margin-bottom: 0; } /* ── Chart legend ────────────────────────────────────────────── */ .cm-legend { display: flex; gap: 1.25rem; flex-wrap: wrap; font-size: 0.75rem; color: var(--cm-text-muted); align-items: center; } .cm-legend-item { display: flex; align-items: center; gap: 5px; } .cm-legend-dot { width: 10px; height: 10px; border-radius: 3px; display: inline-block; flex-shrink: 0; } .cm-legend-dot-circle { border-radius: 50%; } /* ── Form controls (wm-ui-area pages: Reporting, Templates, etc.) */ .wm-ui-area .form-control, .wm-ui-area .form-select { font-size: 0.8375rem; border-color: var(--cm-border); border-radius: var(--cm-radius-sm); background: var(--cm-surface); color: var(--cm-text); } .wm-ui-area .form-control:focus, .wm-ui-area .form-select:focus { border-color: var(--cm-accent); box-shadow: 0 0 0 3px rgba(67,97,238,.12); } .wm-ui-area .form-label { font-size: 0.8rem; font-weight: 600; color: var(--cm-text-muted); letter-spacing: 0.02em; } .wm-ui-area .form-check-input:checked { background-color: var(--cm-accent); border-color: var(--cm-accent); } /* ── Status badge override (replaces Bootstrap badge) ─────────── */ .wm-ui-area .cm-status-active { background: var(--cm-green-muted); color: #065f46; } .wm-ui-area .cm-status-inactive { background: var(--cm-slate-muted); color: #334155; border: 1px solid #e2e8f0; } .wm-ui-area .cm-status-system { background: var(--cm-blue-muted); color: #1e40af; } /* ── Pagination ─────────────────────────────────────────────── */ .wm-ui-area .pagination .page-link { font-size: 0.8rem; color: var(--cm-text-muted); border-color: var(--cm-border); background: var(--cm-surface); } .wm-ui-area .pagination .page-item.active .page-link { background: var(--cm-accent); border-color: var(--cm-accent); color: #fff; } /* ── Upload Commission Statement modal ─────────────────────────── */ .cm-upload-modal { border-radius: var(--cm-radius); border: 1px solid var(--cm-border); } .cm-upload-icon { width: 44px; height: 44px; flex-shrink: 0; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: var(--cm-accent-muted); color: var(--cm-accent); font-size: 1.1rem; } .cm-upload-template-card { display: flex; align-items: center; gap: 0.75rem; padding: 0.875rem 1rem; margin: 1rem 0; border-radius: var(--cm-radius-sm); background: var(--cm-canvas); border: 1px solid var(--cm-border-light); } .cm-upload-template-icon { width: 34px; height: 34px; flex-shrink: 0; border-radius: var(--cm-radius-sm); display: flex; align-items: center; justify-content: center; background: var(--cm-green-muted); color: var(--cm-green); } .cm-upload-template-text { flex: 1 1 auto; } .cm-upload-template-title { font-size: 0.8375rem; font-weight: 600; color: var(--cm-text); } .cm-upload-template-desc { font-size: 0.75rem; color: var(--cm-text-muted); } .cm-upload-segment { display: flex; gap: 0.5rem; margin-bottom: 1rem; } .cm-upload-segment-btn { display: inline-flex; align-items: center; gap: 0.4rem; font-size: 0.8125rem; font-weight: 600; padding: 0.4rem 1rem; border-radius: 20px; border: 1px solid var(--cm-border); background: var(--cm-surface); color: var(--cm-text-muted); transition: border-color .14s, color .14s, background .14s; } .cm-upload-segment-btn.is-active { background: var(--cm-accent); border-color: var(--cm-accent); color: #fff; } .cm-upload-segment-btn:disabled { opacity: 0.55; cursor: not-allowed; } .cm-upload-dropzone { border: 2px dashed var(--cm-border); border-radius: var(--cm-radius-sm); background: var(--cm-canvas); padding: 2rem 1rem; text-align: center; cursor: pointer; transition: border-color .14s, background .14s; margin-bottom: 1rem; } .cm-upload-dropzone.is-dragover { border-color: var(--cm-accent); background: var(--cm-accent-muted); } .cm-upload-dropzone-icon { display: inline-flex; width: 44px; height: 44px; align-items: center; justify-content: center; border-radius: 50%; background: var(--cm-accent-muted); color: var(--cm-accent); font-size: 1.25rem; margin-bottom: 0.6rem; } .cm-upload-dropzone-text { font-size: 0.8375rem; color: var(--cm-text); } .cm-upload-link { background: none; border: none; padding: 0; color: var(--cm-accent); font-weight: 600; font-size: 0.8375rem; } .cm-upload-dropzone-hint { font-size: 0.72rem; color: var(--cm-text-light); margin-top: 0.3rem; } .cm-upload-file { display: flex; align-items: flex-start; gap: 0.75rem; padding: 0.875rem 1rem; margin-bottom: 1rem; border-radius: var(--cm-radius-sm); background: var(--cm-surface); border: 1px solid var(--cm-border); } .cm-upload-file-icon { width: 34px; height: 34px; flex-shrink: 0; border-radius: var(--cm-radius-sm); display: flex; align-items: center; justify-content: center; background: var(--cm-green-muted); color: var(--cm-green); } .cm-upload-file-info { flex: 1 1 auto; min-width: 0; } .cm-upload-file-name { font-size: 0.8375rem; font-weight: 600; color: var(--cm-text); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .cm-upload-file-size { font-size: 0.72rem; color: var(--cm-text-muted); margin-bottom: 0.4rem; } .cm-upload-file-actions { display: flex; gap: 0.5rem; flex-shrink: 0; } .cm-upload-remove-btn:hover { border-color: var(--cm-red) !important; color: var(--cm-red) !important; background: var(--cm-red-muted) !important; } .cm-upload-progress { height: 6px; border-radius: 4px; background: var(--cm-border-light); overflow: hidden; } .cm-upload-progress-bar { height: 100%; width: 0%; background: var(--cm-accent); border-radius: 4px; transition: width .2s ease; } /* ── State panels ────────────────────────────────────────────── */ .cm-upload-alert { border-radius: var(--cm-radius-sm); border: 1px solid; padding: 1rem; margin-bottom: 1rem; } .cm-upload-alert--error { background: var(--cm-red-muted); border-color: #fecaca; } .cm-upload-alert--warning { background: var(--cm-amber-muted); border-color: #fde68a; } .cm-upload-alert--success { background: var(--cm-green-muted); border-color: #a7f3d0; display: flex; align-items: center; gap: 0.6rem; color: #065f46; font-size: 0.8375rem; font-weight: 500; } .cm-upload-alert--success i { font-size: 1.1rem; } .cm-upload-alert-header { display: flex; align-items: center; gap: 0.5rem; font-size: 0.8375rem; font-weight: 600; color: var(--cm-text); margin-bottom: 0.5rem; } .cm-upload-alert--error .cm-upload-alert-header i { color: var(--cm-red); } .cm-upload-alert--warning .cm-upload-alert-header i { color: var(--cm-amber); } .cm-upload-warning-list { margin: 0 0 0.85rem; padding-left: 1.1rem; font-size: 0.8rem; color: #92400e; } .cm-upload-warning-list li { margin-bottom: 0.2rem; } .cm-upload-review-btn { font-size: 0.8125rem; } .cm-upload-stats { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0.6rem; margin-bottom: 0.85rem; } .cm-upload-stat { background: var(--cm-surface); border: 1px solid var(--cm-border-light); border-radius: var(--cm-radius-sm); padding: 0.6rem 0.7rem; text-align: center; } .cm-upload-stat-label { font-size: 0.65rem; color: var(--cm-text-muted); text-transform: uppercase; letter-spacing: 0.03em; margin-bottom: 0.2rem; } .cm-upload-stat-value { font-size: 1.15rem; font-weight: 700; color: var(--cm-text); margin-bottom: 0.3rem; } .cm-upload-section-label { font-size: 0.75rem; font-weight: 600; color: var(--cm-text); margin-bottom: 0.5rem; } /* ── Warning review table ────────────────────────────────────── */ .cm-upload-review { border-radius: var(--cm-radius-sm); border: 1px solid #fde68a; background: var(--cm-amber-muted); padding: 1rem; margin-bottom: 1rem; } .cm-upload-review-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; flex-wrap: wrap; margin-bottom: 0.75rem; } .cm-upload-review-actions { display: flex; gap: 0.5rem; flex-shrink: 0; } .cm-upload-skipall-btn:hover { border-color: var(--cm-red) !important; color: var(--cm-red) !important; } .cm-upload-review-progress { display: flex; align-items: center; gap: 0.75rem; font-size: 0.75rem; color: #92400e; font-weight: 500; margin-bottom: 0.85rem; } .cm-upload-review-progress .cm-upload-progress { flex: 1 1 auto; background: rgba(255,255,255,.6); } .cm-upload-review .cm-table { background: var(--cm-surface); } .cm-upload-muted { color: var(--cm-text-light); } .cm-upload-subtext { font-size: 0.7rem; color: var(--cm-text-muted); margin-top: 1px; } .cm-upload-kebab-btn { width: 28px; height: 28px; display: inline-flex; align-items: center; justify-content: center; border-radius: 6px; border: 1px solid var(--cm-border); background: var(--cm-surface); color: var(--cm-text-muted); } .cm-upload-kebab-btn:hover { border-color: var(--cm-accent); color: var(--cm-accent); } .cm-upload-fix-row input.form-control { font-size: 0.8125rem; } .cm-upload-fix-inputs { display: flex; gap: 0.4rem; } .cm-upload-fix-inputs input.form-control { flex: 1 1 0; min-width: 0; } .cm-upload-fix-error { margin-top: 0.3rem; font-size: 0.75rem; color: var(--cm-red); } .cm-upload-fix-actions { display: flex; gap: 0.35rem; justify-content: flex-end; } .cm-upload-fix-actions button { width: 28px; height: 28px; display: inline-flex; align-items: center; justify-content: center; border-radius: 6px; border: 1px solid var(--cm-border); background: var(--cm-surface); color: var(--cm-text-muted); } .cm-upload-fix-confirm:hover { border-color: var(--cm-green); color: var(--cm-green); } .cm-upload-fix-cancel:hover { border-color: var(--cm-red); color: var(--cm-red); } .cm-upload-fix-trigger:hover { border-color: var(--cm-accent); color: var(--cm-accent); } .cm-upload-skip-trigger:hover { border-color: var(--cm-red); color: var(--cm-red); } .cm-upload-tips { margin-top: 0.25rem; } @media (max-width: 640px) { .cm-upload-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); } .cm-upload-review-header { flex-direction: column; } } /* ============================================================ Commission Allocation Management page (tabs, bulk-action bar, filters, expandable rows, pagination, Overwrite modal) ============================================================ */ /* ── Segment toggle (Protection / Mortgage) ─────────────────── */ .cm-segment-toggle { display: inline-flex; gap: 0.35rem; background: var(--cm-slate-muted); border: 1px solid var(--cm-border); border-radius: 999px; padding: 3px; } .cm-segment-btn { display: inline-flex; align-items: center; gap: 0.35rem; border: none; background: transparent; color: var(--cm-text-muted); font-size: 0.8125rem; font-weight: 600; padding: 0.4rem 0.9rem; border-radius: 999px; white-space: nowrap; } .cm-segment-btn.is-active { background: var(--cm-surface); color: var(--cm-accent); box-shadow: var(--cm-shadow); } .cm-segment-btn:disabled { opacity: 0.5; cursor: not-allowed; } /* ── Tab strip ───────────────────────────────────────────────── */ .cm-tabstrip { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.75rem; background: var(--cm-surface); border: 1px solid var(--cm-border); border-radius: var(--cm-radius-sm); padding: 0.5rem; margin-bottom: 0.75rem; } .cm-tabstrip-tabs { display: flex; flex-wrap: wrap; gap: 0.3rem; } .cm-tab-btn { display: inline-flex; align-items: center; gap: 0.4rem; border: none; background: transparent; color: var(--cm-text-muted); font-size: 0.8125rem; font-weight: 600; padding: 0.5rem 0.9rem; border-radius: var(--cm-radius-sm); } .cm-tab-btn:hover { background: var(--cm-slate-muted); color: var(--cm-text); } .cm-tab-btn.is-active { background: var(--cm-accent); color: #fff; } .cm-tab-count { display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 999px; background: rgba(255,255,255,.25); font-size: 0.7rem; font-weight: 700; } .cm-tab-btn:not(.is-active) .cm-tab-count { background: var(--cm-accent-muted); color: var(--cm-accent); } /* ── Bulk-allocate action bar (Unallocated tab) ─────────────── */ .cm-bulk-bar { display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap; } .cm-bulk-bar label { font-size: 0.8125rem; font-weight: 600; color: var(--cm-text-muted); white-space: nowrap; } .cm-bulk-bar .form-control, .cm-bulk-bar .form-select { font-size: 0.8125rem; padding: 0.4rem 0.65rem; } /* ── Filter row ──────────────────────────────────────────────── */ .cm-filter-row { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem; margin-bottom: 0.75rem; } .cm-filter-row .form-control, .cm-filter-row .form-select { font-size: 0.8125rem; padding: 0.45rem 0.75rem; border-color: var(--cm-border); } .cm-filter-search { position: relative; flex: 1 1 220px; max-width: 280px; } .cm-filter-search i { position: absolute; left: 0.7rem; top: 50%; transform: translateY(-50%); color: var(--cm-text-light); font-size: 0.8rem; } .cm-filter-search input { padding-left: 2rem; } .cm-reset-link { color: var(--cm-red); font-size: 0.8125rem; font-weight: 600; background: none; border: none; display: inline-flex; align-items: center; gap: 0.3rem; } /* ── Expandable line rows ───────────────────────────────────── */ .cm-expand-toggle { border: none; background: none; color: var(--cm-accent); display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; border-radius: 6px; } .cm-expand-toggle:hover { background: var(--cm-accent-muted); } .cm-expand-toggle i { transition: transform .15s ease; } .cm-expand-toggle.is-open i { transform: rotate(90deg); } .cm-row-subtext { font-size: 0.7rem; color: var(--cm-text-muted); margin-top: 1px; } .cm-row-link { color: var(--cm-accent); font-weight: 600; text-decoration: none; } .cm-breakdown-row td { background: var(--cm-slate-muted); padding: 0 !important; } .cm-breakdown-panel { padding: 0.9rem 1.1rem 1.1rem; } .cm-breakdown-title { font-size: 0.75rem; font-weight: 700; color: var(--cm-text-muted); text-transform: uppercase; letter-spacing: .03em; margin-bottom: 0.5rem; } /* ── Pagination footer ──────────────────────────────────────── */ .cm-pagination-footer { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 0.5rem; padding: 0.85rem 1.1rem; font-size: 0.8125rem; color: var(--cm-text-muted); } .cm-pagination-pages { display: flex; align-items: center; gap: 0.25rem; } .cm-page-btn { min-width: 30px; height: 30px; padding: 0 0.4rem; border-radius: 7px; border: 1px solid var(--cm-border); background: var(--cm-surface); color: var(--cm-text-muted); font-size: 0.8125rem; font-weight: 600; } .cm-page-btn:hover:not(:disabled) { border-color: var(--cm-accent); color: var(--cm-accent); } .cm-page-btn.is-active { background: var(--cm-accent); border-color: var(--cm-accent); color: #fff; } .cm-page-btn:disabled { opacity: 0.4; cursor: not-allowed; } /* ── Overwrite modal ─────────────────────────────────────────── */ .cm-overwrite-list { border: 1px solid var(--cm-blue); border-radius: var(--cm-radius-sm); overflow: hidden; } .cm-overwrite-row { display: grid; grid-template-columns: 1fr 1.4fr 0.9fr; gap: 0.75rem; align-items: center; padding: 0.6rem 0.9rem; border-bottom: 1px dashed var(--cm-border); } .cm-overwrite-row:last-child { border-bottom: none; } .cm-overwrite-row-label { font-size: 0.8125rem; font-weight: 600; color: var(--cm-text); } .cm-overwrite-pct-input { position: relative; } .cm-overwrite-pct-input input { padding-right: 1.75rem; } .cm-overwrite-pct-input i { position: absolute; right: 0.65rem; top: 50%; transform: translateY(-50%); color: var(--cm-text-light); font-size: 0.75rem; } .cm-overwrite-total { font-size: 0.75rem; font-weight: 600; margin-top: 0.5rem; text-align: right; } .cm-overwrite-total.is-invalid { color: var(--cm-red); } .cm-overwrite-total.is-valid { color: var(--cm-green); } .cm-empty-state { text-align: center; padding: 2.5rem 1rem; color: var(--cm-text-muted); font-size: 0.8125rem; } .cm-checkbox { width: 16px; height: 16px; cursor: pointer; } @media (max-width: 992px) { .cm-overwrite-row { grid-template-columns: 1fr; gap: 0.35rem; } } /* ── Responsive tweaks ───────────────────────────────────────── */ @media (max-width: 576px) { .cm-kpi-value { font-size: 1.25rem; } .cm-page-head h3, .cm-page-head .cm-title { font-size: 1.25rem; } }
2026-10-28 12:49:58.870 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:10bbda1b34d504ee4923f758d2b8a54d] HTTP GET /UI responded 200 in 1.5006 ms
2026-10-28 12:49:58.870 +00:00 [INF] [HTTP] [U:-] [E:-] [C:3dafcd2dcc8b] [T:10bbda1b34d504ee4923f758d2b8a54d] HTTP GET /UI 200
Req: [no body] Res: <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Home — WM Policy Documents</title> <link rel="stylesheet" href="/lib/bootstrap/dist/css/bootstrap.min.css" /> <link rel="stylesheet" href="/css/site.css?v=xQHUTQJdpYJFKIjDlFCI1X8KDqtO5qaSSeJFSoCP3pA" /> <link rel="stylesheet" href="/css/commissions.css?v=ZRMXSlMSxdLsHmJCZzq1LopWaopJSbVXKu57gvUJG3w" /> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css" /> <style> /* ---- Hover-expand left sidebar -------------------------------------- */ :root { --sb-collapsed: 64px; --sb-expanded: 240px; } body.has-sidebar { /* Reserve space for the collapsed rail; the expanded panel overlays the content on hover, so the content never shifts. */ padding-left: var(--sb-collapsed); } .app-sidebar { position: fixed; top: 0; left: 0; height: 100vh; width: var(--sb-collapsed); overflow-x: hidden; overflow-y: auto; display: flex; flex-direction: column; z-index: 1045; transition: width 0.2s ease; } .app-sidebar:hover, .app-sidebar:focus-within { width: var(--sb-expanded); box-shadow: 0 0 24px rgba(0,0,0,0.35); } .app-sidebar .sb-label { white-space: nowrap; opacity: 0; transition: opacity 0.15s ease; } .app-sidebar:hover .sb-label, .app-sidebar:focus-within .sb-label { opacity: 1; } .sb-link { display: flex; align-items: center; gap: 0.85rem; padding: 0.65rem 0; color: rgba(255,255,255,0.75); text-decoration: none; border-left: 3px solid transparent; } .sb-link:hover { color: #fff; background: rgba(255,255,255,0.08); } .sb-link.active { color: #fff; background: rgba(255,255,255,0.12); border-left-color: #0d6efd; } .sb-link > i:first-child { min-width: var(--sb-collapsed); text-align: center; font-size: 1.15rem; flex-shrink: 0; } .sb-brand { display: flex; align-items: center; gap: 0.85rem; padding: 0.9rem 0; color: #fff; text-decoration: none; font-weight: 700; } .sb-brand > i:first-child { min-width: var(--sb-collapsed); text-align: center; font-size: 1.3rem; flex-shrink: 0; } /* Sub-menu (Fact-Find) */ .sb-submenu .sb-link { font-size: 0.9rem; padding-left: 0; } .sb-submenu .sb-link > i:first-child { font-size: 1rem; } .sb-caret { margin-left: auto; margin-right: 0.9rem; transition: transform 0.15s ease; } .sb-link[aria-expanded="true"] .sb-caret { transform: rotate(180deg); } </style> </head> <body class="d-flex flex-column min-vh-100 has-sidebar"> <nav b-yjl2sbey1b class="app-sidebar navbar-dark bg-dark shadow-sm"> <a class="sb-brand" href="/UI"> <i b-yjl2sbey1b class="bi bi-file-earmark-text"></i> <span b-yjl2sbey1b class="sb-label">Wealthmax</span> </a> <div b-yjl2sbey1b class="d-flex flex-column flex-grow-1"> <a class="sb-link " href="/UI/Dashboard/Index"> <i b-yjl2sbey1b class="bi bi-speedometer2"></i><span b-yjl2sbey1b class="sb-label">Dashboard</span> </a> <a class="sb-link " href="/UI/Templates/Index"> <i b-yjl2sbey1b class="bi bi-collection"></i><span b-yjl2sbey1b class="sb-label">Templates</span> </a> <a class="sb-link " href="/UI/Tokens/Index"> <i b-yjl2sbey1b class="bi bi-braces"></i><span b-yjl2sbey1b class="sb-label">Token Registry</span> </a> <a class="sb-link " href="/UI/Clients/Index"> <i b-yjl2sbey1b class="bi bi-people"></i><span b-yjl2sbey1b class="sb-label">Clients</span> </a> <a class="sb-link " href="/UI/Cases/Index"> <i b-yjl2sbey1b class="bi bi-briefcase"></i><span b-yjl2sbey1b class="sb-label">Cases</span> </a> <a class="sb-link " href="/UI/Reporting/Index"> <i b-yjl2sbey1b class="bi bi-graph-up"></i><span b-yjl2sbey1b class="sb-label">Reports</span> </a> <a class="sb-link " href="/UI/Commissions/Management"> <i b-yjl2sbey1b class="bi bi-cash-coin"></i><span b-yjl2sbey1b class="sb-label">Commissions</span> </a> <!-- User Management --> <a class="sb-link " href="/UI/Users/Index"> <i b-yjl2sbey1b class="bi bi-person-gear"></i><span b-yjl2sbey1b class="sb-label">User Management</span> </a> <!-- Fact-Find (expandable sub-menu) --> <a b-yjl2sbey1b class="sb-link " href="#ffSubmenu" role="button" data-bs-toggle="collapse" aria-expanded="false"> <i b-yjl2sbey1b class="bi bi-file-earmark-text"></i><span b-yjl2sbey1b class="sb-label">Fact-Find</span> <i b-yjl2sbey1b class="bi bi-chevron-down sb-caret sb-label"></i> </a> <div b-yjl2sbey1b class="collapse sb-submenu " id="ffSubmenu"> <a class="sb-link " href="/UI/FactFindFormatters/Index"> <i b-yjl2sbey1b class="bi bi-grid"></i><span b-yjl2sbey1b class="sb-label">Formatters</span> </a> <a class="sb-link " href="/UI/FactFindTemplates/Index"> <i b-yjl2sbey1b class="bi bi-layers"></i><span b-yjl2sbey1b class="sb-label">Templates</span> </a> <a class="sb-link " href="/UI/FactFindGenerate"> <i b-yjl2sbey1b class="bi bi-lightning-charge"></i><span b-yjl2sbey1b class="sb-label">Generate &amp; Preview</span> </a> </div> </div> <!-- Auth (pinned to bottom) --> <div b-yjl2sbey1b class="mt-auto border-top border-secondary"> <a b-yjl2sbey1b class="sb-link" href="/UI/business/login"> <i b-yjl2sbey1b class="bi bi-box-arrow-in-right"></i><span b-yjl2sbey1b class="sb-label">Business login</span> </a> </div> </nav> <main b-yjl2sbey1b class="flex-grow-1 py-4"> <div b-yjl2sbey1b class="container-fluid px-4"> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css"> <style> body > nav.navbar { position: sticky; top: 0; z-index: 1030; } .dash-hero { background: linear-gradient(135deg, #212529 0%, #343a40 100%); color: #fff; } .dash-card { border: none; border-radius: 12px; transition: transform 0.15s ease, box-shadow 0.15s ease; } .dash-card:hover { transform: translateY(-3px); box-shadow: 0 8px 24px rgba(0,0,0,0.10) !important; } .dash-icon { width: 48px; height: 48px; border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 1.4rem; } .dash-stat-value { font-size: 2rem; font-weight: 700; line-height: 1; } .dash-card-title { font-size: 0.95rem; font-weight: 600; } .dash-card-text { font-size: 0.78rem; } /* Discreet business-login link pinned to the bottom-right corner. */ .home-login-link { position: fixed; bottom: 1rem; right: 1.25rem; z-index: 1040; } </style> <!-- Hero --> <div class="dash-hero py-4 mb-4"> <div class="container text-center"> <h1 class="display-6 fw-bold mb-2">Wealthmax PM CRM</h1> <p class="lead text-white-50 mb-0" style="max-width: 640px; margin: 0 auto;"> Testing harness dashboard &mdash; system tools, integrations, and live service health at a glance. </p> </div> </div> <div class="container pb-5"> <!-- Tool / Integration cards --> <div class="row g-3 mb-4"> <!-- Tenants Created --> <div class="col-6 col-md-4 col-lg-3"> <div class="card dash-card shadow-sm h-100"> <div class="card-body p-3"> <div class="d-flex align-items-start justify-content-between mb-2"> <div class="dash-icon bg-primary bg-opacity-10 text-primary"> <i class="bi bi-building-fill"></i> </div> <span class="badge bg-secondary bg-opacity-10 text-secondary">Sample</span> </div> <div class="dash-stat-value text-dark">12</div> <div class="dash-card-title text-dark mt-1">Tenants Created</div> <p class="dash-card-text text-muted mb-0">Total onboarded tenants in this environment.</p> </div> </div> </div> <!-- Build Logs --> <div class="col-6 col-md-4 col-lg-3"> <a href="/UI/DevLogs" class="text-decoration-none"> <div class="card dash-card shadow-sm h-100"> <div class="card-body p-3"> <div class="dash-icon bg-dark bg-opacity-10 text-dark mb-2"> <i class="bi bi-terminal-fill"></i> </div> <div class="dash-card-title text-dark">Build &amp; App Logs</div> <p class="dash-card-text text-muted mb-0">Browse structured application logs by date and level.</p> </div> </div> </a> </div> <!-- Swagger --> <div class="col-6 col-md-4 col-lg-3"> <a href="/swagger" target="_blank" class="text-decoration-none"> <div class="card dash-card shadow-sm h-100"> <div class="card-body p-3"> <div class="d-flex align-items-start justify-content-between mb-2"> <div class="dash-icon bg-success bg-opacity-10 text-success"> <i class="bi bi-braces"></i> </div> <i class="bi bi-box-arrow-up-right text-muted small"></i> </div> <div class="dash-card-title text-dark">Swagger / API Docs</div> <p class="dash-card-text text-muted mb-0">Explore and try the REST API via OpenAPI UI.</p> </div> </div> </a> </div> <!-- SignalR --> <div class="col-6 col-md-4 col-lg-3"> <a href="/test-signalr.html" target="_blank" class="text-decoration-none"> <div class="card dash-card shadow-sm h-100"> <div class="card-body p-3"> <div class="d-flex align-items-start justify-content-between mb-2"> <div class="dash-icon bg-info bg-opacity-10 text-info"> <i class="bi bi-broadcast"></i> </div> <i class="bi bi-box-arrow-up-right text-muted small"></i> </div> <div class="dash-card-title text-dark">SignalR Hub</div> <p class="dash-card-text text-muted mb-0">Test real-time notifications over the SignalR hub.</p> </div> </div> </a> </div> <!-- iPipeline --> <div class="col-6 col-md-4 col-lg-3"> <a href="/demo/solution-builder" class="text-decoration-none"> <div class="card dash-card shadow-sm h-100"> <div class="card-body p-3"> <div class="dash-icon bg-warning bg-opacity-10 text-warning mb-2"> <i class="bi bi-plug-fill"></i> </div> <div class="dash-card-title text-dark">iPipeline</div> <p class="dash-card-text text-muted mb-0">Launch the iPipeline Solution Builder integration.</p> </div> </div> </a> </div> <!-- Fetch Quotes --> <div class="col-6 col-md-4 col-lg-3"> <a href="/demo/solution-builder/events" class="text-decoration-none"> <div class="card dash-card shadow-sm h-100"> <div class="card-body p-3"> <div class="dash-icon bg-danger bg-opacity-10 text-danger mb-2"> <i class="bi bi-receipt"></i> </div> <div class="dash-card-title text-dark">Fetch Quotes</div> <p class="dash-card-text text-muted mb-0">View quote-notification events returned from the pipeline.</p> </div> </div> </a> </div> <!-- CRM Dashboard --> <div class="col-6 col-md-4 col-lg-3"> <a class="text-decoration-none" href="/UI/Dashboard/Index"> <div class="card dash-card shadow-sm h-100"> <div class="card-body p-3"> <div class="dash-icon bg-primary bg-opacity-10 text-primary mb-2"> <i class="bi bi-speedometer2"></i> </div> <div class="dash-card-title text-dark">CRM Dashboard</div> <p class="dash-card-text text-muted mb-0">Cases, clients, and commission overview metrics.</p> </div> </div> </a> </div> <!-- Clients --> <div class="col-6 col-md-4 col-lg-3"> <a class="text-decoration-none" href="/UI/Clients/Index"> <div class="card dash-card shadow-sm h-100"> <div class="card-body p-3"> <div class="dash-icon bg-success bg-opacity-10 text-success mb-2"> <i class="bi bi-people-fill"></i> </div> <div class="dash-card-title text-dark">Clients &amp; Cases</div> <p class="dash-card-text text-muted mb-0">Manage client records and advisory cases.</p> </div> </div> </a> </div> </div> <!-- System Health --> <div id="health-card" class="card dash-card shadow-sm mb-4"> <div class="card-body p-3"> <!-- Loading state --> <div id="health-loading" class="text-center py-3"> <div class="spinner-border spinner-border-sm text-primary" role="status"> <span class="visually-hidden">Loading...</span> </div> <span class="ms-2 text-muted">Checking system health...</span> </div> <!-- Error state --> <div id="health-error" class="d-none text-center py-3"> <i class="bi bi-exclamation-triangle fs-4 text-danger d-block mb-2"></i> <p class="text-muted mb-1">Unable to reach the health endpoint.</p> <button class="btn btn-sm btn-outline-secondary" onclick="fetchHealth()"> <i class="bi bi-arrow-clockwise me-1"></i>Retry </button> </div> <!-- Success state --> <div id="health-content" class="d-none"> <div class="d-flex align-items-center mb-3"> <i class="bi bi-heart-pulse fs-4 text-primary me-2"></i> <h5 class="fw-semibold mb-0 me-auto">System Health</h5> <span id="health-status-badge" class="badge"></span> </div> <hr class="my-3"> <div class="row g-2 small"> <div class="col-sm-6"> <div class="d-flex align-items-center text-muted mb-2"> <i class="bi bi-clock me-2"></i> <span>Checked: <span id="health-timestamp" class="text-body"></span></span> </div> </div> <div class="col-sm-6"> <div class="d-flex align-items-center text-muted mb-2"> <i class="bi bi-speedometer2 me-2"></i> <span>Response: <span id="health-duration" class="text-body"></span></span> </div> </div> <div class="col-sm-6 d-none" id="health-db-row"> <div class="d-flex align-items-center text-muted mb-2"> <i class="bi bi-database me-2"></i> <span>Database: <span id="health-database" class="text-body"></span></span> </div> </div> <div class="col-sm-6 d-none" id="health-build-row"> <div class="d-flex align-items-center text-muted mb-2"> <i class="bi bi-git me-2"></i> <span>Build: <code id="health-commit"></code> <span id="health-build-date" class="text-muted"></span></span> </div> </div> </div> </div> </div> </div> <!-- Tech Stack --> <div class="text-center"> <div class="d-flex flex-wrap justify-content-center gap-3 text-muted small"> <span><i class="bi bi-gear me-1"></i>.NET 10</span> <span class="text-black-50">|</span> <span><i class="bi bi-database me-1"></i>PostgreSQL</span> <span class="text-black-50">|</span> <span><i class="bi bi-layers me-1"></i>Entity Framework Core</span> <span class="text-black-50">|</span> <span><i class="bi bi-lock me-1"></i>JWT Authentication</span> <span class="text-black-50">|</span> <span><i class="bi bi-book me-1"></i>OpenAPI / Swagger</span> </div> </div> </div> </content> </div> </main> <footer b-yjl2sbey1b class="bg-light border-top py-2 text-center text-muted small"> Wealthmax PM CRM &mdash; Policy Document Testing UI </footer> <script src="/lib/jquery/dist/jquery.min.js"></script> <script src="/lib/bootstrap/dist/js/bootstrap.bundle.min.js"></script> <script src="/js/site.js?v=y_Ngd8W21UpuCUhEqGbUKDEqFnNfTjAfb24GhJJGUyM"></script> <script> function escapeHtml(text) { var div = document.createElement('div'); div.appendChild(document.createTextNode(text)); return div.innerHTML; } function statusBadgeClass(status) { switch ((status || '').toLowerCase()) { case 'healthy': return 'bg-success'; case 'degraded': return 'bg-warning text-dark'; default: return 'bg-danger'; } } function fetchHealth() { document.getElementById('health-loading').classList.remove('d-none'); document.getElementById('health-error').classList.add('d-none'); document.getElementById('health-content').classList.add('d-none'); fetch('/api/health') .then(function (response) { if (response.ok || response.status === 503) { return response.json(); } throw new Error('Unexpected status: ' + response.status); }) .then(function (response) { var health = response.data || response; renderHealth(health); document.getElementById('health-loading').classList.add('d-none'); document.getElementById('health-content').classList.remove('d-none'); }) .catch(function () { document.getElementById('health-loading').classList.add('d-none'); document.getElementById('health-error').classList.remove('d-none'); }); } function renderHealth(data) { var badge = document.getElementById('health-status-badge'); badge.textContent = data.status; badge.className = 'badge ' + statusBadgeClass(data.status); document.getElementById('health-timestamp').textContent = new Date(data.timestamp).toLocaleString(); document.getElementById('health-duration').textContent = data.totalDurationMs + ' ms'; var dbRow = document.getElementById('health-db-row'); if (data.databaseName || data.databaseProvider) { var parts = []; if (data.databaseName) parts.push(data.databaseName); if (data.databaseProvider) parts.push(data.databaseProvider); document.getElementById('health-database').textContent = parts.join(' on '); dbRow.classList.remove('d-none'); } else { dbRow.classList.add('d-none'); } var buildRow = document.getElementById('health-build-row'); if (data.commitHash || data.lastBuildDate) { document.getElementById('health-commit').textContent = data.commitHash || ''; document.getElementById('health-build-date').textContent = data.lastBuildDate ? '(' + new Date(data.lastBuildDate).toLocaleDateString() + ')' : ''; buildRow.classList.remove('d-none'); } else { buildRow.classList.add('d-none'); } } fetchHealth(); </script> </body> </html>
2026-10-28 12:49:55.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:c182ce139eb7950be46abd09835653ba] HTTP GET /metrics responded 200 in 1.6401 ms
2026-10-28 12:49:54.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:f9230a3bf2cb828bd7f158d1871f3240] HTTP GET /metrics responded 200 in 1.6570 ms
2026-10-28 12:49:50.743 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:0c02d6de28d034deaba9cd9735174267] HTTP GET /metrics responded 200 in 1.6705 ms
2026-10-28 12:49:49.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:9097c4323d5672b652a58c0a5fff13a8] HTTP GET /metrics responded 200 in 1.6414 ms
2026-10-28 12:49:45.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:79db48cbcf50dd5981bd1c047654f537] HTTP GET /metrics responded 200 in 1.6847 ms
2026-10-28 12:49:44.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:04ab81d74a4cb1119bf3229c06d3395c] HTTP GET /metrics responded 200 in 1.7300 ms
2026-10-28 12:49:40.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:22b8498d484ac6e597e87941d870da72] HTTP GET /metrics responded 200 in 1.5986 ms
2026-10-28 12:49:39.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:ca24ece18c604b17f4e0f2cbe0ace806] HTTP GET /metrics responded 200 in 1.6024 ms
2026-10-28 12:49:35.741 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:45dbcffebdb05880fae855aa1460f124] HTTP GET /metrics responded 200 in 1.6115 ms
2026-10-28 12:49:34.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:c23ad8066fdf1851d6d8f24828912ae2] HTTP GET /metrics responded 200 in 1.6471 ms
2026-10-28 12:49:30.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:431c10518f9e817015e9981b96b32563] HTTP GET /metrics responded 200 in 1.6509 ms
2026-10-28 12:49:29.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:256e695b7a967fb1d2d9ba6147c39a6d] HTTP GET /metrics responded 200 in 1.6705 ms
2026-10-28 12:49:25.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:c2662101adb4e9a0d5d8e38807e41cbc] HTTP GET /metrics responded 200 in 1.7075 ms
2026-10-28 12:49:24.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:5ef3725119c2dca483537b561e6bc50a] HTTP GET /metrics responded 200 in 1.6241 ms
2026-10-28 12:49:20.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:a45d83c5df2112e14900b7161131b84e] HTTP GET /metrics responded 200 in 1.6784 ms
2026-10-28 12:49:19.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:53c7dfca2d32fa6bfb8a93f37dfb138c] HTTP GET /metrics responded 200 in 1.6263 ms
2026-10-28 12:49:15.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:116bd3fc6224906f34834e023f6d95a0] HTTP GET /metrics responded 200 in 1.7915 ms
2026-10-28 12:49:14.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:8eaf209d1e69d52630d39224c9096d32] HTTP GET /metrics responded 200 in 1.6455 ms
2026-10-28 12:49:10.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:6e87a59300db04350020dd87dd13fa05] HTTP GET /metrics responded 200 in 1.7438 ms
2026-10-28 12:49:09.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:03835ade21d43e31e221001842145c21] HTTP GET /metrics responded 200 in 1.6442 ms
2026-10-28 12:49:05.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:67e05933522f7541d4d787c27be396ca] HTTP GET /metrics responded 200 in 1.7129 ms
2026-10-28 12:49:04.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:01e092ec3d82a8103d9314bfce69f5a8] HTTP GET /metrics responded 200 in 1.6695 ms
2026-10-28 12:49:00.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:7f3cf58d24b82cfa44b5c75997c4cd3c] HTTP GET /metrics responded 200 in 1.6462 ms
2026-10-28 12:48:59.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:6c106030a33acf96fdaad3d8d1c2f0f8] HTTP GET /metrics responded 200 in 1.6737 ms
2026-10-28 12:48:55.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:363f8ef719de381a5395af015466e8e8] HTTP GET /metrics responded 200 in 1.6999 ms
2026-10-28 12:48:54.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:0be3fce079da86e8ad4f0480032b5316] HTTP GET /metrics responded 200 in 1.5952 ms
2026-10-28 12:48:50.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:93c4147c6cd3ecbfe42fefdb9a58125e] HTTP GET /metrics responded 200 in 1.6761 ms
2026-10-28 12:48:49.720 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:282b7da24ab30e8a42a33baac8d7d7a7] HTTP GET /metrics responded 200 in 1.6259 ms
2026-10-28 12:48:45.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:91625a57d8eba7e3c6d8dd723d8ec14a] HTTP GET /metrics responded 200 in 1.6604 ms
2026-10-28 12:48:44.720 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:25fd249a1e0167b6c5e22ca2cf446df5] HTTP GET /metrics responded 200 in 1.6487 ms
2026-10-28 12:48:40.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:8a66044536c1fac481a296a90f85e1e3] HTTP GET /metrics responded 200 in 1.6490 ms
2026-10-28 12:48:39.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:171618c09878add42afeb66bb1ac0640] HTTP GET /metrics responded 200 in 1.6312 ms
2026-10-28 12:48:35.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:ea38d114aa763f6c208adcdcfcbc22b2] HTTP GET /metrics responded 200 in 1.6753 ms
2026-10-28 12:48:34.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:0928ef4035bc1f406adc158a16301b9b] HTTP GET /metrics responded 200 in 1.6307 ms
2026-10-28 12:48:30.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:9ed5eaf5bc989ec7760eac7ae78f3f4e] HTTP GET /metrics responded 200 in 1.6914 ms
2026-10-28 12:48:29.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:e1c7e03d8771e27e190e3acb6950be2c] HTTP GET /metrics responded 200 in 1.6339 ms
2026-10-28 12:48:25.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:0d5a5235fa16d7c640169c48ee715d2c] HTTP GET /metrics responded 200 in 1.6630 ms
2026-10-28 12:48:24.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:cc59a459c10e7285ab9c341ff92c3992] HTTP GET /metrics responded 200 in 1.6382 ms
2026-10-28 12:48:20.741 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:ce9062d64db1c223bada00086ad96311] HTTP GET /metrics responded 200 in 1.6434 ms
2026-10-28 12:48:19.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:ae6a5b126fb6755d2dd2ad1285edbbc0] HTTP GET /metrics responded 200 in 1.6584 ms
2026-10-28 12:48:15.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:9d93c807d8a4daaa1feef0203a7aef86] HTTP GET /metrics responded 200 in 1.6345 ms
2026-10-28 12:48:14.720 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:9152087771aaf93b8363c1849a342dda] HTTP GET /metrics responded 200 in 1.8262 ms
2026-10-28 12:48:10.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:c6cdada15e2791121846183f69ce4288] HTTP GET /metrics responded 200 in 1.7553 ms
2026-10-28 12:48:09.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:5272b8a13a5a67a1e35f502d20f3288f] HTTP GET /metrics responded 200 in 1.6730 ms
2026-10-28 12:48:05.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:5b1dfa1afe83327bc8da08bddf46db57] HTTP GET /metrics responded 200 in 1.7267 ms
2026-10-28 12:48:04.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:d515f53291467badd74a6b5f00b9fbea] HTTP GET /metrics responded 200 in 1.6497 ms
2026-10-28 12:48:00.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:59635c7998de0594c0f70d3bc447cdc5] HTTP GET /metrics responded 200 in 1.6841 ms
2026-10-28 12:47:59.720 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:6883304dd3b38beb1b13405676c079df] HTTP GET /metrics responded 200 in 1.6476 ms
2026-10-28 12:47:55.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:9948ccc096ffa880ad3b8b01a69dc27d] HTTP GET /metrics responded 200 in 1.6879 ms
2026-10-28 12:47:54.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:010727194d6c9ef2d8cfc18b6d2a5eb1] HTTP GET /metrics responded 200 in 1.6571 ms
2026-10-28 12:47:50.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:aabd981d6d2141070c2562ef9a53468e] HTTP GET /metrics responded 200 in 1.9512 ms
2026-10-28 12:47:49.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:727254b85103464632d4fbdce7a6194b] HTTP GET /metrics responded 200 in 1.7139 ms
2026-10-28 12:47:45.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:363dc6293ad2e48135a8c575aa8c0674] HTTP GET /metrics responded 200 in 1.7868 ms
2026-10-28 12:47:44.720 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:e0de714884c8d725c836213c99d78ef4] HTTP GET /metrics responded 200 in 1.7164 ms
2026-10-28 12:47:40.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:4f33edd07e2509bd52574079dc1bc568] HTTP GET /metrics responded 200 in 1.6202 ms
2026-10-28 12:47:39.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:c2a0ad26ed0a021b3fe69d2760edd09f] HTTP GET /metrics responded 200 in 1.6269 ms
2026-10-28 12:47:35.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:9ee38cecc4f943d489c3a06819128509] HTTP GET /metrics responded 200 in 1.6768 ms
2026-10-28 12:47:34.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:e9efa224170d51cc29f2344d8a3d7117] HTTP GET /metrics responded 200 in 1.7317 ms
2026-10-28 12:47:30.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:a332645cdc434fd22980acba710a8d11] HTTP GET /metrics responded 200 in 1.6609 ms
2026-10-28 12:47:29.720 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:76386d94814f4a041ce15572940caa44] HTTP GET /metrics responded 200 in 1.6787 ms
2026-10-28 12:47:25.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:91fd736c1084c21b676db5ffa87909a5] HTTP GET /metrics responded 200 in 1.6583 ms
2026-10-28 12:47:24.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:46abd2fe9908ac04333ce5596dd10d25] HTTP GET /metrics responded 200 in 1.6122 ms
2026-10-28 12:47:20.741 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:c29de22732b2810edea45125660fd5ee] HTTP GET /metrics responded 200 in 1.6522 ms
2026-10-28 12:47:19.720 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:94d0176745fbb3feba23d3bc217abb2c] HTTP GET /metrics responded 200 in 1.6930 ms
2026-10-28 12:47:15.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:a5b1d32ced333ba6fdaff81b615fd9cb] HTTP GET /metrics responded 200 in 1.6353 ms
2026-10-28 12:47:14.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:515d8f34cd3532dcc53dbac7657dc864] HTTP GET /metrics responded 200 in 1.6436 ms
2026-10-28 12:47:10.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:21f0ab56c2b578b2b21e4061f0d8af03] HTTP GET /metrics responded 200 in 1.7019 ms
2026-10-28 12:47:09.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:22027ad07a0eb5936f36f542f05ecce8] HTTP GET /metrics responded 200 in 1.6089 ms
2026-10-28 12:47:05.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:f466c6ef017693184dc7d53bfb2bb221] HTTP GET /metrics responded 200 in 1.6401 ms
2026-10-28 12:47:04.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:a2fd59b35215c0f6ccb1aee4ab0b0256] HTTP GET /metrics responded 200 in 1.6897 ms
2026-10-28 12:47:00.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:4c63742ec5ca435b42013eb6d20cc3a0] HTTP GET /metrics responded 200 in 1.7830 ms
2026-10-28 12:46:59.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:8844007704a31e0df2ddcf9e4d93a48c] HTTP GET /metrics responded 200 in 1.6284 ms
2026-10-28 12:46:55.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:83c7be219a6e5b7ff3fc5a4f3b5785da] HTTP GET /metrics responded 200 in 1.6377 ms
2026-10-28 12:46:54.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:9f6f06ced7b7e10748c058de15167ee1] HTTP GET /metrics responded 200 in 1.6325 ms
2026-10-28 12:46:50.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:e932c24468d15942a69580560728b57e] HTTP GET /metrics responded 200 in 1.6601 ms
2026-10-28 12:46:49.720 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:8de27ef91ebae8536da1a38a529c9c8c] HTTP GET /metrics responded 200 in 1.6717 ms
2026-10-28 12:46:45.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:8538025eeb5cb74c1edaab96c3fb4246] HTTP GET /metrics responded 200 in 1.6518 ms
2026-10-28 12:46:44.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:1e9716f62a5f7f00151c98092177efcc] HTTP GET /metrics responded 200 in 1.7113 ms
2026-10-28 12:46:40.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:a0379c27d8904d60a279f40774c3f34c] HTTP GET /metrics responded 200 in 1.8621 ms
2026-10-28 12:46:39.720 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:8d1b01b99b47a5525c3a3c124d464c63] HTTP GET /metrics responded 200 in 1.6725 ms
2026-10-28 12:46:35.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:925ca65e309ca0aedfcaba90214596ad] HTTP GET /metrics responded 200 in 1.8106 ms
2026-10-28 12:46:34.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:a3ea1caa412f6609cb0de7c03c412ba6] HTTP GET /metrics responded 200 in 1.6739 ms
2026-10-28 12:46:30.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:f4f2ca0c35c84ff5ffb3110396f0ac14] HTTP GET /metrics responded 200 in 1.6465 ms
2026-10-28 12:46:29.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:dd24d5985641c6073e17f528e9d4102c] HTTP GET /metrics responded 200 in 1.6374 ms
2026-10-28 12:46:25.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:c89f2d4555f870c4abca38771c8e6799] HTTP GET /metrics responded 200 in 1.9781 ms
2026-10-28 12:46:24.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:7bade9e0606d14fc57faa943e6590b11] HTTP GET /metrics responded 200 in 1.6087 ms
2026-10-28 12:46:20.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:142ced85f0f47155ed4c2d7aa8c21c28] HTTP GET /metrics responded 200 in 1.7037 ms
2026-10-28 12:46:19.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:bdf54fcccfd9b36481c48edc00689e30] HTTP GET /metrics responded 200 in 1.6551 ms
2026-10-28 12:46:15.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:a5ed6dac89ffb194e71e5cd96483cd00] HTTP GET /metrics responded 200 in 1.6837 ms
2026-10-28 12:46:14.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:44fb8e4b9f34faaf0f3d4ea38df4ce54] HTTP GET /metrics responded 200 in 1.7064 ms
2026-10-28 12:46:10.741 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:7bf5c6ae62419081abb6d76af576bc81] HTTP GET /metrics responded 200 in 1.6340 ms
2026-10-28 12:46:09.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:c4e3aa6caf98077af2fcc53b42907572] HTTP GET /metrics responded 200 in 1.6628 ms
2026-10-28 12:46:05.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:29dce2997fa43cf29de779ec86a5d20f] HTTP GET /metrics responded 200 in 1.7032 ms
2026-10-28 12:46:04.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:be69e4dead8abded940c9e3f1bef07ef] HTTP GET /metrics responded 200 in 1.6482 ms
2026-10-28 12:46:00.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:c21f2aac928d5486f8357ab6b54a4da6] HTTP GET /metrics responded 200 in 1.7191 ms
2026-10-28 12:45:59.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:c054ea68cee45e65f0a29f32b74b5ab4] HTTP GET /metrics responded 200 in 1.6556 ms
2026-10-28 12:45:55.741 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:38cad167a67d8458c1c9b63131f76c43] HTTP GET /metrics responded 200 in 1.6657 ms
2026-10-28 12:45:54.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:9491b6a1f7810602a66892e1bf87c019] HTTP GET /metrics responded 200 in 1.6535 ms
2026-10-28 12:45:50.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:79d7224621a48b5c047cda5a7a317fe7] HTTP GET /metrics responded 200 in 1.6610 ms
2026-10-28 12:45:49.720 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:3bb21fb671a9ff98f93e03b409d7b3e4] HTTP GET /metrics responded 200 in 1.6263 ms
2026-10-28 12:45:45.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:e78bb8e769883420de05c14b7706e3de] HTTP GET /metrics responded 200 in 1.6492 ms
2026-10-28 12:45:44.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:c9378ded2f247703a1fd6bf34b44bf64] HTTP GET /metrics responded 200 in 1.6146 ms
2026-10-28 12:45:40.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:aeb161c68f6b8513737d0fe66e934cbd] HTTP GET /metrics responded 200 in 1.6406 ms
2026-10-28 12:45:39.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:08e490d72d3821fd0359468e10bff07b] HTTP GET /metrics responded 200 in 1.6428 ms
2026-10-28 12:45:35.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:0fdf6ba06b3a0d8a214ae24e4915bc39] HTTP GET /metrics responded 200 in 1.6917 ms
2026-10-28 12:45:34.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:3666db8d9feed44f577d2cff348e811e] HTTP GET /metrics responded 200 in 1.6651 ms
2026-10-28 12:45:30.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:f069983f5e392105c2d17a060a532f29] HTTP GET /metrics responded 200 in 1.6801 ms
2026-10-28 12:45:29.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:d1a82555a59f267a739f0eae4bbf3677] HTTP GET /metrics responded 200 in 1.6223 ms
2026-10-28 12:45:25.741 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:8c02437d5d380315b8cf74ec812d29c8] HTTP GET /metrics responded 200 in 1.6333 ms
2026-10-28 12:45:24.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:817466e9fcbcc02c4b265f0116d91bdf] HTTP GET /metrics responded 200 in 1.6928 ms
2026-10-28 12:45:20.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:b323de456e1cee9618bc4953ef7908f7] HTTP GET /metrics responded 200 in 1.6422 ms
2026-10-28 12:45:19.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:3ee40cd1be629cb33a506303c1c6bdea] HTTP GET /metrics responded 200 in 1.6812 ms
2026-10-28 12:45:15.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:b500e27b46404e76ff07b6970af5735a] HTTP GET /metrics responded 200 in 1.6135 ms
2026-10-28 12:45:14.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:74c3c6ead5dc3956f2f52ca906841136] HTTP GET /metrics responded 200 in 1.6724 ms
2026-10-28 12:45:10.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:6c6f6fa4212f0001081d6cc94ad24afc] HTTP GET /metrics responded 200 in 1.6381 ms
2026-10-28 12:45:09.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:33d92ec9989a6a4a87f7fdce0b807724] HTTP GET /metrics responded 200 in 1.6156 ms
2026-10-28 12:45:05.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:59a140127663f98cb013b8795a336aa4] HTTP GET /metrics responded 200 in 1.6938 ms
2026-10-28 12:45:04.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:79a2073c4c49e19c1d5947fdeb83115a] HTTP GET /metrics responded 200 in 1.6494 ms
2026-10-28 12:45:00.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:4200a48bc70f40bdc58e05fb35dac2d7] HTTP GET /metrics responded 200 in 1.6504 ms
2026-10-28 12:44:59.718 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:33023a85cc78fedc20b7afbfcdfbf617] HTTP GET /metrics responded 200 in 1.6296 ms
2026-10-28 12:44:55.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:9bc2a35615769ad2f086ff28ff62c42d] HTTP GET /metrics responded 200 in 1.6530 ms
2026-10-28 12:44:54.718 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:06b5295cc233ea031bbd0af363bf7052] HTTP GET /metrics responded 200 in 1.6016 ms
2026-10-28 12:44:50.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:cf897f8cc53748e62231a8e72621d221] HTTP GET /metrics responded 200 in 1.6485 ms
2026-10-28 12:44:49.718 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:3683a19ca10cea1f1de124e1cf858357] HTTP GET /metrics responded 200 in 1.6493 ms
2026-10-28 12:44:45.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:528b5a07525ceeffca0d4350057dca0d] HTTP GET /metrics responded 200 in 1.6605 ms
2026-10-28 12:44:44.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:bf4b2d16a55b680922872e4dea66cfe4] HTTP GET /metrics responded 200 in 2.0230 ms
2026-10-28 12:44:40.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:2453e99ac47d2b20f1fa17cbbf3a4325] HTTP GET /metrics responded 200 in 1.9342 ms
2026-10-28 12:44:39.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:120870edb8f4c0a34b122ac3c183cabe] HTTP GET /metrics responded 200 in 2.7523 ms
2026-10-28 12:44:35.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:cff61ddb0eb679c7a7cb4c855951eee9] HTTP GET /metrics responded 200 in 1.6551 ms
2026-10-28 12:44:34.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:ba77c1a270783e1d9730cffb528af316] HTTP GET /metrics responded 200 in 1.6672 ms
2026-10-28 12:44:30.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:eb77f39321835628fdc3e55fee6e669a] HTTP GET /metrics responded 200 in 1.6385 ms
2026-10-28 12:44:29.718 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:a91a4934206dc9a85c516ba573c252c0] HTTP GET /metrics responded 200 in 1.7182 ms
2026-10-28 12:44:25.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:b9b6162b93557a788e4296f3d03f30ff] HTTP GET /metrics responded 200 in 1.6690 ms
2026-10-28 12:44:24.718 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:ce48ac98966d21139a318b65b619862f] HTTP GET /metrics responded 200 in 1.7126 ms
2026-10-28 12:44:20.741 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:226d66d2d079c6a9bfae278170526326] HTTP GET /metrics responded 200 in 1.6446 ms
2026-10-28 12:44:19.718 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:a12d81407d27aa7a03c37bf69e67594e] HTTP GET /metrics responded 200 in 1.6303 ms
2026-10-28 12:44:15.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:3288534e8850b21a8fd3dc90fc9f19c7] HTTP GET /metrics responded 200 in 1.6139 ms
2026-10-28 12:44:14.718 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:058428f1a4a3f21c83a913a63bd2a9bd] HTTP GET /metrics responded 200 in 1.6720 ms
2026-10-28 12:44:10.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:f6b187d92e077993f88f6d265719b0df] HTTP GET /metrics responded 200 in 1.6713 ms
2026-10-28 12:44:09.718 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:c2425e2a33cd3d13f786f0092a1087ec] HTTP GET /metrics responded 200 in 1.7835 ms
2026-10-28 12:44:05.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:9fb0d49e43e7358c53ed498ac53686ef] HTTP GET /metrics responded 200 in 1.6677 ms
2026-10-28 12:44:04.718 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:a7f4933765d8a446d551992efca244e6] HTTP GET /metrics responded 200 in 1.6476 ms
2026-10-28 12:44:00.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:d8df8a7b087551cf806d64886d03f58c] HTTP GET /metrics responded 200 in 1.6700 ms
2026-10-28 12:43:59.718 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:2b2fa0fa941b6135f78663b602314daf] HTTP GET /metrics responded 200 in 1.6724 ms
2026-10-28 12:43:55.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:5e540c9f03371d891391ca3158a8ae9c] HTTP GET /metrics responded 200 in 1.6942 ms
2026-10-28 12:43:54.718 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:116d7d35c12c65a313a1cdea9eff0935] HTTP GET /metrics responded 200 in 1.6360 ms
2026-10-28 12:43:50.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:b99e84ab4f56562af0e3762cc48ae284] HTTP GET /metrics responded 200 in 1.6205 ms
2026-10-28 12:43:49.717 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:a3ca560f269ce587726a84075efe4076] HTTP GET /metrics responded 200 in 1.6442 ms
2026-10-28 12:43:45.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:7cc8e906c59663dc01692153e1dcc210] HTTP GET /metrics responded 200 in 1.6608 ms
2026-10-28 12:43:44.717 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:e82469309523bd2fcfff96567b91d553] HTTP GET /metrics responded 200 in 1.6440 ms
2026-10-28 12:43:40.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:455cbf54a76f8dab654b956ba1e87a5f] HTTP GET /metrics responded 200 in 1.5967 ms
2026-10-28 12:43:39.717 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:5ca90732a089057bb1bb268bff0b44e7] HTTP GET /metrics responded 200 in 1.7295 ms
2026-10-28 12:43:35.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:6604edb32d90c084c63a922f8a2cc385] HTTP GET /metrics responded 200 in 1.6367 ms
2026-10-28 12:43:34.717 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:f5aab68848d023c4b4181cfec4304e2a] HTTP GET /metrics responded 200 in 1.7169 ms
2026-10-28 12:43:30.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:e277966d2021ca99adc9fe29dbaf6b26] HTTP GET /metrics responded 200 in 1.6395 ms
2026-10-28 12:43:29.717 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:a6bf4020f36b14c1c760f4de9b70f593] HTTP GET /metrics responded 200 in 1.6433 ms
2026-10-28 12:43:25.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:e21334dd5055e60678f43155fdf6fb77] HTTP GET /metrics responded 200 in 1.6374 ms
2026-10-28 12:43:24.717 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:ae505de32d320dd5dcff6f84336bbe3f] HTTP GET /metrics responded 200 in 1.6684 ms
2026-10-28 12:43:20.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:317366317ed68f016ed0ca9b84600fd3] HTTP GET /metrics responded 200 in 1.6314 ms
2026-10-28 12:43:19.717 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:b4ec5448001f712bed1db9b1d5161b76] HTTP GET /metrics responded 200 in 1.6893 ms
2026-10-28 12:43:15.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:05c366dbbc2e5b0b25a5ef0b8c792887] HTTP GET /metrics responded 200 in 1.6718 ms
2026-10-28 12:43:14.717 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:5fdeb1c6093bb84f5b58ec4260e5b6fd] HTTP GET /metrics responded 200 in 1.6418 ms
2026-10-28 12:43:10.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:185316170dc174a3c2475cbede89ca33] HTTP GET /metrics responded 200 in 1.6509 ms
2026-10-28 12:43:09.717 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:66156572ea18ad7242a59d78eca76804] HTTP GET /metrics responded 200 in 1.6822 ms
2026-10-28 12:43:05.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:c2de34edb2f10795f0c9eb60323b8a9a] HTTP GET /metrics responded 200 in 1.6144 ms
2026-10-28 12:43:04.719 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:2ffc957d1cbd852de2450037d2492d6f] HTTP GET /metrics responded 200 in 1.6502 ms
2026-10-28 12:43:00.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:3b22b403957ade156b0d326c1b7f50e7] HTTP GET /metrics responded 200 in 1.6730 ms
2026-10-28 12:42:59.716 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:037af3d7afffd24691c964a2ac9c16d2] HTTP GET /metrics responded 200 in 1.6322 ms
2026-10-28 12:42:55.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:199833b3ff34f4f8302471dc70a41737] HTTP GET /metrics responded 200 in 1.6552 ms
2026-10-28 12:42:54.716 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:c62e58e87f6fef42a020211c77c82af0] HTTP GET /metrics responded 200 in 1.6193 ms
2026-10-28 12:42:50.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:c718cf1b99f528b677f22d21f7198c66] HTTP GET /metrics responded 200 in 1.6176 ms
2026-10-28 12:42:49.717 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:15928e8a215b9898baf8a973a2adf0e2] HTTP GET /metrics responded 200 in 1.6278 ms
2026-10-28 12:42:45.741 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:39483accf6507c6cb25ba0049a16d72c] HTTP GET /metrics responded 200 in 1.6518 ms
2026-10-28 12:42:44.716 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:431c668a24502d83e8dd56c02271c546] HTTP GET /metrics responded 200 in 1.6289 ms
2026-10-28 12:42:40.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:ece29e7f82f61ffa713ae01c7602390e] HTTP GET /metrics responded 200 in 1.6504 ms
2026-10-28 12:42:39.716 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:a5c86a3ffd648186498b469e666e76a2] HTTP GET /metrics responded 200 in 1.6297 ms
2026-10-28 12:42:35.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:720d04b68795eab4954faf690783e502] HTTP GET /metrics responded 200 in 1.6547 ms
2026-10-28 12:42:34.715 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:bb4f858b52583bc71c8ef2a3b0b35db1] HTTP GET /metrics responded 200 in 1.7006 ms
2026-10-28 12:42:30.741 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:32c883bb1816a5d9a9220b8d472e114c] HTTP GET /metrics responded 200 in 1.6022 ms
2026-10-28 12:42:29.715 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:c96df019bcd868a4ff25e2051003cf95] HTTP GET /metrics responded 200 in 1.6427 ms
2026-10-28 12:42:25.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:76ad69f61828c41c8840a139ba524763] HTTP GET /metrics responded 200 in 1.6472 ms
2026-10-28 12:42:24.715 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:593304ba8f684324486ad2dd3a0901a9] HTTP GET /metrics responded 200 in 1.6889 ms
2026-10-28 12:42:20.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:2e13d8789cb3898a09a68bfbb8cceb63] HTTP GET /metrics responded 200 in 1.7804 ms
2026-10-28 12:42:19.714 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:d383e79d6dcbd6c55ccf8077530cbce8] HTTP GET /metrics responded 200 in 1.6209 ms
2026-10-28 12:42:15.742 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:68f6f3528d5ce010832d8fd77bac79fc] HTTP GET /metrics responded 200 in 1.6180 ms
2026-10-28 12:42:14.714 +00:00 [INF] [GEN] [U:-] [E:-] [C:-] [T:2ade9fe6a68cff8e021c503e8d8c9b10] HTTP GET /metrics responded 200 in 1.6306 ms
Errors & Warnings 0