inspect — Introspection command for Rivet configuration
::rivet::inspect provides introspection into the running
configuration of Rivet. Rivet's debug command uses it in order to gain insight
into the configuration, but it can be used in any script.
::rivet::inspect can be called in 5 different forms
With no argument the command returns a dictionary with 3
keys: server, dir, user. Each key is associated to a subdictionary
carrying the configuration as set for that request. In this form the command is
meant to support compatibility with previous versions of mod_rivet
where three global arrays were created to be internally used by command
With the ?-all? argument a dictionary
carrying the whole configuration for that specific request is returned.
If a configuration parameter is not set it's given the
string undefined. Returned configuration paramenters
With one of the Rivet configuration directives listed above as
single argument ::rivet::inspect returns the
current value in the configuration record.
Passing the argument "script" ::rivet::inspect
returns a path to the current script in a similar way
core command [info script] does. The basic
difference is that the core command returns a relative path with
respect to the current working directory, whereas mod_rivet's command
returns the full path.
Passing the argument "server" ::rivet::inspect
returns a dictionary with these fields taken from the server record
- hostname: The server hostname
- admin: The admin's contact information
- errorlog: The name of the error log
- server_path: Pathname for ServerPath