Admin Module

From BaseX Documentation
Revision as of 06:44, 29 November 2019 by CG (talk | contribs) (→‎admin:write-log)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This XQuery Module contains functions for performing admin-centric operations such as managing database users and log data.


All functions and errors in this module are assigned to the namespace, which is statically bound to the admin prefix.



Signatures admin:sessions() as element(session)*
Summary Returns an element sequence with all currently opened database sessions, including the user name, address (IP:port) and an optionally opened database.
The output of this function and the SHOW SESSIONS command is similar.
  • admin:sessions() may e.g. return <session user="admin" address="" database="factbook"/>


Signatures admin:logs() as element(file)*
admin:logs($date as xs:string) as element(entry)*
admin:logs($date as xs:string, $merge as xs:boolean) as element(entry)*
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. Please note that the merge might not be 100% successful, as log entries may be ambiguous.
  • 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.


Signatures admin:write-log($text as xs:string) as empty-sequence()
admin:write-log($text as xs:string, $type as xs:string) as empty-sequence()
Summary Writes a string to the database logs, along with current user data (timestamp, user name). 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.


Signatures 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.


Code Description
delete An error occurred while deleting a log file.
today Today's log file cannot be deleted.
type Type string contains whitespaces.


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.