On this page:
5.1 generic-spy
5.2 logging (MARKETPLACE_  LOG)
5.3 debugger (experimental)

5 Management and Monitoring

5.1 generic-spy

 (require marketplace/support/spy) package: marketplace


(generic-spy label)  Spawn

  label : Any
Returns a spawn action that, when executed, creates a process with a #:subscriber endpoint listening for every message. Each EndpointEvent received by the endpoint is printed to the current output port. Using this process gives a crude trace of activity within a VM: presence-events and absence-events (of #:publishers) are logged, as is each 'publisher message sent to the VM’s network.

5.2 logging (MARKETPLACE_LOG)

environment variable


Set the MARKETPLACE_LOG environment variable to "debug", "info", "warning", "error" or "fatal" (i.e. any of Racket’s log-level?s) to enable output of log messages at that level and higher.

If MARKETPLACE_LOG is not defined in the environment, no log output will be produced.


(marketplace-log level format-str arg ...)

level = expr
format-str = expr
arg = expr
Analogous to Racket’s core log-message, but uses marketplace-root-logger instead of the system logger. The level expression must evaluate to a level symbol (see log-level?), and format-str must evaluate to a format string for use with format.

The root logger for marketplace logging.

5.3 debugger (experimental)

 (require marketplace/support/debug)
  package: marketplace


(debug p)  Spawn

  p : Spawn
Translates a spawn action to another spawn action which wraps the to-be-spawned process in a debugging interface. Executing the resulting action will not only create a process in the executing VM, but will also open a debugger GUI.

N.B.: The debugger is experimental and likely to change quite quickly and unpredictably.
See the file "examples/debug-chat.rkt" for an example of the use of debug.