nsmcp::AccessRecordSupport method accessRecordStoreSettings (protected)

 <instance of nsmcp::AccessRecordSupport[i]> accessRecordStoreSettings

Defined in /usr/local/ns/tcl/nsmcp/log-traffic-record-00-support.tcl

Testcases:
No testcase defined.
Source code:
set section ns/server/[ns_info server]/module/nsmcp
if {[nsv_exists nsmcp:access-store:[ns_info server] settings]} {
    return [nsv_get nsmcp:access-store:[ns_info server] settings]
}
set directory [ns_config $section accessRecordDirectory {}]
if {$directory eq {}} {
    return {}
}
if {[file pathtype $directory] ne "absolute"} {
    error "accessRecordDirectory must be absolute"
}
set backend [ns_config $section accessRecordBackend sqlite]
if {$backend ne "sqlite"} {
    error "unsupported accessRecordBackend"
}
set ingestion [ns_config $section accessRecordIngestion tcl]
if {$ingestion ni {tcl c batch}} {
    error "accessRecordIngestion must be tcl or c (batch is a legacy alias for c)"
}
set settings [accessAggregateSettings]
set pool [ns_config $section accessRecordPool [dict get $settings aggregatePool]]
if {$pool eq {}} {
    error "accessRecordPool requires a SQLite pool"
}
set bytes [accessScanBudget [ns_config $section accessRecordMaxBytes 16GiB]]
if {$bytes < 4194304} {
    error "accessRecordMaxBytes must be at least 4MiB"
}
set retention [ns_baseunit -time [ns_config $section accessRecordRetention 7d]]
if {$retention<60} {
    error "accessRecordRetention must be at least 60s"
}
return [dict create directory [file normalize $directory]  pool $pool  maxBytes $bytes  retention $retention  ingestion $ingestion  waitMs [dict get $settings aggregateWaitMs]  lockWaitMs [:accessRecordLockWait $section]]
XQL Not present:
Generic, PostgreSQL, Oracle
[ hide source ] | [ make this the default ]
Show another procedure: