nsmcp::QuestionService method retainedSummary (protected)

 <instance of nsmcp::QuestionService[i]> retainedSummary record \
    conversation jobHandle

Defined in /usr/local/ns/tcl/nsmcp/question-service.tcl

Parameters:
record (required)
conversation (required)
jobHandle (required)

Testcases:
No testcase defined.
Source code:
if {![regexp {^[0-9a-f]{64}$} $jobHandle]} {
    return {}
}
foreach turn [lreverse [dict get $record turns]] {
    foreach tool [lreverse [dict get $turn tools]] {
        if {[dict get $tool name] ni {log_error_summary access_log_summary log_results}
            || [dict get $tool truncated]
            || ![dict exists $tool evidenceHandle]
            || [dict get $tool evidenceHandle] eq {}} {
            continue
        }
        if {[dict get $tool name] eq "log_results"
            && ([catch {ns_json parse [dict get $tool arguments]} args]
                || ![dict exists $args jobHandle] || [dict get $args jobHandle] ne $jobHandle)} {
            continue
        }
        try {
            set evidence [:readEvidence $conversation [dict get $tool evidenceHandle] $tool]
            set json [lindex $evidence 2 2]
            set payload [dict get [ns_json parse $json] structuredContent]
            if {[dict get $payload jobHandle] ne $jobHandle
                || [dict get $payload status] ne "complete"
                || [dict get $payload server] ne [dict get $record server]
                || ![dict exists $payload result]} {
                continue
            }
            # Older system-log summaries predate the explicit marker.
            if {![:dict getdef $payload retainedSummary false]
                && ![dict exists $payload result severityTotals]} {
                continue
            }
            set triples [ns_json parse -output triples -- $json]
            set members [ns_json triples getvalue -output triples -path structuredContent -- $triples]
            return [list {} object $members]
        } on error {} {
            continue
        }
    }
}
return {}
XQL Not present:
Generic, PostgreSQL, Oracle
[ hide source ] | [ make this the default ]
Show another procedure: