2026-01-12 10:03:13 -05:00
<!-- This file is generated by `cargo xtask generate-docs` . Do not edit. -->
2026-01-09 17:05:34 -05:00
# `!admin debug`
2026-01-12 10:47:19 -05:00
Commands for debugging things
2026-01-09 17:05:34 -05:00
## `!admin debug echo`
2026-01-12 10:47:19 -05:00
Echo input of admin command
2026-01-09 17:05:34 -05:00
## `!admin debug get-auth-chain`
2026-01-12 10:47:19 -05:00
Get the auth_chain of a PDU
2026-01-09 17:05:34 -05:00
## `!admin debug parse-pdu`
2026-01-12 10:47:19 -05:00
Parse and print a PDU from a JSON
2026-01-09 17:05:34 -05:00
The PDU event is only checked for validity and is not added to the database.
This command needs a JSON blob provided in a Markdown code block below the command.
## `!admin debug get-pdu`
2026-01-12 10:47:19 -05:00
Retrieve and print a PDU by EventID from the Continuwuity database
2026-01-09 17:05:34 -05:00
## `!admin debug get-short-pdu`
2026-01-12 10:47:19 -05:00
Retrieve and print a PDU by PduId from the Continuwuity database
2026-01-09 17:05:34 -05:00
## `!admin debug get-remote-pdu`
2026-01-12 10:47:19 -05:00
Attempts to retrieve a PDU from a remote server. **Does not ** insert it into the database or persist it anywhere
2026-01-09 17:05:34 -05:00
## `!admin debug get-remote-pdu-list`
2026-01-12 10:47:19 -05:00
Same as `get-remote-pdu` but accepts a codeblock newline delimited list of PDUs and a single server to fetch from
2026-01-09 17:05:34 -05:00
## `!admin debug get-room-state`
2026-01-12 10:47:19 -05:00
Gets all the room state events for the specified room.
2026-01-09 17:05:34 -05:00
This is functionally equivalent to `GET /_matrix/client/v3/rooms/{roomid}/state` , except the admin command does * not * check if the sender user is allowed to see state events. This is done because it's implied that server admins here have database access and can see/get room info themselves anyways if they were malicious admins.
Of course the check is still done on the actual client API.
## `!admin debug get-signing-keys`
2026-01-12 10:47:19 -05:00
Get and display signing keys from local cache or remote server
2026-01-09 17:05:34 -05:00
## `!admin debug get-verify-keys`
2026-01-12 10:47:19 -05:00
Get and display signing keys from local cache or remote server
2026-01-09 17:05:34 -05:00
## `!admin debug ping`
2026-01-12 10:47:19 -05:00
Sends a federation request to the remote server's `/_matrix/federation/v1/version` endpoint and measures the latency it took for the server to respond
2026-01-09 17:05:34 -05:00
## `!admin debug force-device-list-updates`
2026-01-12 10:47:19 -05:00
Forces device lists for all local and remote users to be updated (as having new keys available)
2026-01-09 17:05:34 -05:00
## `!admin debug change-log-level`
2026-01-12 10:47:19 -05:00
Change tracing log level/filter on the fly
2026-01-09 17:05:34 -05:00
This accepts the same format as the `log` config option.
## `!admin debug verify-json`
2026-01-12 10:47:19 -05:00
Verify JSON signatures
2026-01-09 17:05:34 -05:00
This command needs a JSON blob provided in a Markdown code block below the command.
## `!admin debug verify-pdu`
2026-01-12 10:47:19 -05:00
Verify PDU
2026-01-09 17:05:34 -05:00
This re-verifies a PDU existing in the database found by ID.
## `!admin debug first-pdu-in-room`
2026-01-12 10:47:19 -05:00
Prints the very first PDU in the specified room (typically m.room.create)
2026-01-09 17:05:34 -05:00
## `!admin debug latest-pdu-in-room`
2026-01-12 10:47:19 -05:00
Prints the latest ("last") PDU in the specified room (typically a message)
2026-01-09 17:05:34 -05:00
## `!admin debug force-set-room-state-from-server`
2026-01-12 10:47:19 -05:00
Forcefully replaces the room state of our local copy of the specified room, with the copy (auth chain and room state events) the specified remote server says.
2026-01-09 17:05:34 -05:00
A common desire for room deletion is to simply "reset" our copy of the room. While this admin command is not a replacement for that, if you know you have split/broken room state and you know another server in the room that has the best/working room state, this command can let you use their room state. Such example is your server saying users are in a room, but other servers are saying they're not in the room in question.
This command will get the latest PDU in the room we know about, and request the room state at that point in time via `/_matrix/federation/v1/state/{roomId}` .
## `!admin debug resolve-true-destination`
2026-01-12 10:47:19 -05:00
Runs a server name through Continuwuity's true destination resolution process
2026-01-09 17:05:34 -05:00
Useful for debugging well-known issues
## `!admin debug memory-stats`
2026-01-12 10:47:19 -05:00
Print extended memory usage
2026-01-09 17:05:34 -05:00
Optional argument is a character mask (a sequence of characters in any order) which enable additional extended statistics. Known characters are "abdeglmx". For convenience, a '*' will enable everything.
## `!admin debug runtime-metrics`
2026-01-12 10:47:19 -05:00
Print general tokio runtime metric totals
2026-01-09 17:05:34 -05:00
## `!admin debug runtime-interval`
2026-01-12 10:47:19 -05:00
Print detailed tokio runtime metrics accumulated since last command invocation
2026-01-09 17:05:34 -05:00
## `!admin debug time`
2026-01-12 10:47:19 -05:00
Print the current time
2026-01-09 17:05:34 -05:00
## `!admin debug database-stats`
2026-01-12 10:47:19 -05:00
Get database statistics
2026-01-09 17:05:34 -05:00
## `!admin debug trim-memory`
2026-01-12 10:47:19 -05:00
Trim memory usage
2026-01-09 17:05:34 -05:00
## `!admin debug database-files`
2026-01-12 10:47:19 -05:00
List database files
2026-01-09 17:05:34 -05:00
2026-03-30 11:50:02 -04:00
## `!admin debug send-test-email`
Send a test email to the invoking admin's email address
2026-01-09 17:05:34 -05:00
## `!admin debug tester`
2026-01-12 10:47:19 -05:00
Developer test stubs