This XQuery Module contains functions for performing admin-centric operations such as managing database users and log data.
Conventions
All functions and errors in this module are assigned to the http://basex.org/modules/admin
namespace, which is statically bound to the admin
prefix.
Database Logs
admin:logs
Signature
|
admin:logs(
$date as xs:string := (),
$merge as xs:boolean? := false()
) as element()*
|
Summary
|
Returns Logging data compiled by the database or HTTP server:
- If no argument is specified, a list of all log files will be returned, including the file size and date.
- If a
$date is specified, the contents of a single log file will be returned.
- If
$merge is set to true, related log entries will be merged. The merged representation may not be 100% correct, as log entries can be ambiguous.
|
Examples
|
admin:logs() may return <file size="834367"/>2015-01-23</file> if a single log file exists.
admin:logs() ! admin:logs(.) lists the contents of all log files.
|
admin:write-log
Signature
|
admin:write-log(
$message as xs:string,
$type as xs:string := ()
) as empty-sequence()
|
Summary
|
Writes a log $message to the database logs, along with current user data (timestamp, username). An optional log $type can be specified. If omitted, the log type is INFO . If the function is called from a database client, the IP will be logged. Otherwise, the string SERVER will be logged.
|
Errors
|
type : Type string contains whitespaces.
|
admin:delete-logs
Signature
|
admin:delete-logs(
$date as xs:string
) as empty-sequence()
|
Summary
|
Deletes the log entries from the specified $date
|
Errors
|
today : Today's log file cannot be deleted.
delete : An error occurred while deleting a log file.
|
Database Sessions
admin:sessions
Signature
|
admin:sessions() as element(session)*
|
Summary
|
Returns an element sequence with all currently opened database sessions, including the username, address (IP:port) and an optionally opened database. The output of this function and the SHOW SESSIONS command is similar.
|
Examples
|
admin:sessions() may e.g. return <session user="admin" address="127.0.0.1:6286" database="factbook"/>
|
Errors
Code
|
Description
|
delete
|
An error occurred while deleting a log file.
|
today
|
Today's log file cannot be deleted.
|
type
|
Type string contains whitespaces.
|
Changelog
- Version 9.2
- Version 9.0
- Updated: error codes updated; errors now use the module namespace
- Version 8.3
- Version 8.2
- Version 8.0
- Version 7.8.2
- Updated:
admin:users
: md5-encoded password added to output.
- Updated:
admin:logs
: represent name of log files as string value; $merge
argument added.
The Module was introduced with Version 7.5.