nsmcp::LogService method run (public)
<instance of nsmcp::LogService> run handle operation identifier
Defined in /usr/local/ns/tcl/nsmcp/lib/log-tools.tcl
- Parameters:
- handle (required)
- operation (required)
- identifier (required)
- Testcases:
- No testcase defined.
Source code: ns_mutex lock ${:mutex} try { if {![nsv_exists ${:store} $handle]} return set record [nsv_get ${:store} $handle] dict set record status running nsv_set ${:store} $handle $record } finally {ns_mutex unlock ${:mutex}} set mappings {} try { if {$operation eq "errors"} { set data [:summary [${:correlation} errors] mappings] } elseif {$operation eq "accessSummary"} { if {${:analytics} eq ""} {error "access analytics is not configured"} ${:analytics} ingest [dict get $identifier from] set data [::nsmcp::accessSummaryTriples [${:analytics} summary $identifier]] } else { set context [${:correlation} requestContext $identifier] set data [list server string [ns_info server] requestIdentifier string $identifier system object [:summary [dict get $context system] mappings]] set access {}; set index 0 dict for {source snapshot} [dict get $context access] { lappend access $index object [:summary $snapshot mappings] incr index } lappend data access array $access } dict set record status complete dict set record data $data dict set record mappings $mappings } on error {message options} { dict set record status failed # No source paths, log contents, or exception details in client errors. ns_log error "nsmcp: background log operation failed: $message" } ns_mutex lock ${:mutex} try {nsv_set ${:store} $handle $record} finally {ns_mutex unlock ${:mutex}}XQL Not present: Generic, PostgreSQL, Oracle
![[i]](/resources/acs-subsite/ZoomIn16.gif)