[Developer] #567 show recent SQL cursor candidates

This commit is contained in:
devmrko
2026-07-01 15:11:25 +09:00
parent d301e4dad1
commit b39968d43f
8 changed files with 127 additions and 15 deletions

View File

@@ -142,6 +142,29 @@
th:text="${result.executionEvidenceMessage()}"></div>
</section>
<section class="result-section" th:if="${result.hasExecutionCandidates()}">
<div class="section-heading compact-heading">
<div>
<h3>최근 DB cursor 10건</h3>
<p class="section-subtitle">백오피스 DB 연결이 읽은 최신 cursor입니다. 보호 대상과 일치한 SQL은 초록 배지로 표시합니다.</p>
</div>
<span class="badge text-bg-light" th:text="${result.executionCandidates().size() + '건'}">10건</span>
</div>
<article class="probe-exchange mt-3" th:each="candidate : ${result.executionCandidates()}">
<div class="section-heading compact-heading">
<div>
<h3 th:text="${'SQL_ID ' + candidate.sqlId()}">SQL_ID</h3>
<p class="form-hint mb-0"
th:text="${'최근 실행: ' + (candidate.lastActiveAt() ?: '-') + ' · Parsing schema: ' + (candidate.parsingSchema() ?: '-') + ' · Child cursor: ' + candidate.childNumber()}">최근 실행</p>
</div>
<span class="badge"
th:classappend="${candidate.matchesProtectedObject()} ? ' text-bg-success' : ' text-bg-light'"
th:text="${candidate.matchesProtectedObject()} ? '보호 대상 일치' : '다른 SQL'">다른 SQL</span>
</div>
<pre class="mt-2 mb-0" th:text="${candidate.originalSql()} ?: '-'">SELECT ...</pre>
</article>
</section>
<section class="result-section sql-trace-section" th:if="${result.hasSqlTrace()}">
<div class="section-heading compact-heading">
<div>