From be26bc134738dac1eb418446dd6df8b3e6d272d1 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Thu, 30 May 2013 17:55:18 -0400 Subject: [PATCH] Update 20130530175518 --- Management_and_Monitoring.html | 12 ++++++------ high-level-interface.html | 2 +- index.html | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Management_and_Monitoring.html b/Management_and_Monitoring.html index de41a41..1dad487 100644 --- a/Management_and_Monitoring.html +++ b/Management_and_Monitoring.html @@ -1,19 +1,19 @@ -5 Management and Monitoring
5.3.4.10

5 Management and Monitoring

5.1 generic-spy

procedure

(generic-spy label)  Spawn

  label : Any
Returns a spawn action that, when executed, creates a process +5 Management and Monitoring
5.3.4.10

5 Management and Monitoring

5.1 generic-spy

procedure

(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 (MATRIX_LOG)

environment variable

MATRIX_LOG

Set the MATRIX_LOG environment variable to "debug", "info", +each 'publisher message sent to the VM’s network.

5.2 logging (MARKETPLACE_LOG)

environment variable

MARKETPLACE_LOG

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 MATRIX_LOG is not defined in the environment, no log -output will be produced.

syntax

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

 
level = expr
     
format-str = expr
     
arg = expr
Analogous to Racket’s core log-message, but uses -matrix-root-logger instead of the system logger. The +and higher.

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

syntax

(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)

procedure

(debug p)  Spawn

  p : Spawn
Translates a spawn action to another spawn action which wraps +format string for use with format.

The root logger for marketplace logging.

5.3 debugger (experimental)

procedure

(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 diff --git a/high-level-interface.html b/high-level-interface.html index c2e1c21..83bb07c 100644 --- a/high-level-interface.html +++ b/high-level-interface.html @@ -132,7 +132,7 @@ should be an expression yielding a #:pid is supplied, the associated identifier is bound to the child process’s PID in both boot-expr and the parent’s k-expr.

Any supplied #:debug-name will be used in VM debug output. -See also logging (MATRIX_LOG).

If #:parent is supplied, the associated k-expr will +See also logging (MARKETPLACE_LOG).

If #:parent is supplied, the associated k-expr will run in the parent process after the child process has been created. If the parent-state-pattern is also supplied, then k-expr must return a Transition; otherwise, it must diff --git a/index.html b/index.html index 424ba0a..a4ca6ed 100644 --- a/index.html +++ b/index.html @@ -34,4 +34,4 @@ location of mutable state, failure detection and recovery, access control, I/O and user interface, debugging and profiling.

Marketplace addresses these concerns with a small set of primitives chosen to make network programming in-the-small as flexible, scalable, manageable and securable as network programming in-the-large—and -vice versa.

    1 Concepts

      1.1 What is a process, what are event handlers?

      1.2 What is a VM?

      1.3 Endpoints: Subscription and Advertisement

      1.4 Messages and Topics

      1.5 Presence

      1.6 Nesting, relaying, and levels of discourse

    2 High-level interface

      2.1 Using #lang marketplace and friends

      2.2 Using Marketplace as a library

      2.3 Constructing transitions

      2.4 Creating endpoints

        2.4.1 Receiving messages

        2.4.2 Action-only vs. State updates

        2.4.3 Naming endpoints

        2.4.4 Handling presence and absence events

        2.4.5 Exit reasons

        2.4.6 Updating endpoints

        2.4.7 Who am I talking to?

      2.5 Deleting endpoints

      2.6 Sending messages and feedback

      2.7 Creating processes

      2.8 Exiting and killing processes

      2.9 Cooperative scheduling

      2.10 Creating nested VMs

      2.11 Relaying across layers

    3 Low-level interface

      3.1 Handler Functions

      3.2 Messages, Topics and Roles

      3.3 Endpoint Events

      3.4 Actions

        3.4.1 Endpoints and Messages

        3.4.2 Process Management

    4 Drivers

      4.1 event-relay

      4.2 tcp-bare

        4.2.1 TCP channels

        4.2.2 TCP addresses

        4.2.3 Opening an outbound connection

        4.2.4 Accepting inbound connections

        4.2.5 Receiving data

        4.2.6 Sending data

      4.3 timer (typed and untyped)

      4.4 udp (typed and untyped)

    5 Management and Monitoring

      5.1 generic-spy

      5.2 logging (MATRIX_LOG)

      5.3 debugger (experimental)

    6 Examples

      6.1 TCP echo server

      6.2 TCP chat server

      6.3 TCP chat client

 
\ No newline at end of file +vice versa.

    1 Concepts

      1.1 What is a process, what are event handlers?

      1.2 What is a VM?

      1.3 Endpoints: Subscription and Advertisement

      1.4 Messages and Topics

      1.5 Presence

      1.6 Nesting, relaying, and levels of discourse

    2 High-level interface

      2.1 Using #lang marketplace and friends

      2.2 Using Marketplace as a library

      2.3 Constructing transitions

      2.4 Creating endpoints

        2.4.1 Receiving messages

        2.4.2 Action-only vs. State updates

        2.4.3 Naming endpoints

        2.4.4 Handling presence and absence events

        2.4.5 Exit reasons

        2.4.6 Updating endpoints

        2.4.7 Who am I talking to?

      2.5 Deleting endpoints

      2.6 Sending messages and feedback

      2.7 Creating processes

      2.8 Exiting and killing processes

      2.9 Cooperative scheduling

      2.10 Creating nested VMs

      2.11 Relaying across layers

    3 Low-level interface

      3.1 Handler Functions

      3.2 Messages, Topics and Roles

      3.3 Endpoint Events

      3.4 Actions

        3.4.1 Endpoints and Messages

        3.4.2 Process Management

    4 Drivers

      4.1 event-relay

      4.2 tcp-bare

        4.2.1 TCP channels

        4.2.2 TCP addresses

        4.2.3 Opening an outbound connection

        4.2.4 Accepting inbound connections

        4.2.5 Receiving data

        4.2.6 Sending data

      4.3 timer (typed and untyped)

      4.4 udp (typed and untyped)

    5 Management and Monitoring

      5.1 generic-spy

      5.2 logging (MARKETPLACE_LOG)

      5.3 debugger (experimental)

    6 Examples

      6.1 TCP echo server

      6.2 TCP chat server

      6.3 TCP chat client

 
\ No newline at end of file