Causeway JSON

From Erights

(Difference between revisions)
Jump to: navigation, search
(outline, links to discussion)
(Event doc, external links, multifile/abstract logging)
 
Line 1: Line 1:
'''This page is only partly written!'''
'''This page is only partly written!'''
-
The new log format for [[Causeway]] is based on [http://waterken.sourceforge.net/javadoc/org/ref_send/log/package-summary.html the JSON serialization used by ref_send / Waterken Server] ([http://waterken.svn.sourceforge.net/viewvc/waterken/server/trunk/waterken/remote/src/org/waterken/syntax/json/JSONSerializer.java?view=markup implementation]).
+
The new log format for [[Causeway]] is based on [http://waterken.sourceforge.net/javadoc/org/ref_send/package-summary.html the JSON serialization used by ref_send / Waterken Server] ([http://waterken.svn.sourceforge.net/viewvc/waterken/server/trunk/waterken/remote/src/org/waterken/syntax/json/JSONSerializer.java?view=markup implementation]).
[http://waterken.sourceforge.net/javadoc/org/ref_send/log/package-summary.html The structure classes used by ref_send.]
[http://waterken.sourceforge.net/javadoc/org/ref_send/log/package-summary.html The structure classes used by ref_send.]
-
A log is an array of Events.
+
A log is abstractly a set of [[#Event|Event]]s. [[Causeway]] accepts an arbitrary number of files, each of which contains a JSON array of events.
== Event ==
== Event ==
 +
 +
Event has a number of subclasses for specific events; the common structure records causality in general:
 +
 +
Fields:
 +
* <code>anchor</code> :[[#Anchor|Anchor]]
 +
* <code>trace</code> :[[#Trace|Trace]]
 +
 +
<var>anchor</var> records when, in what vat, this event occurred. <var>trace</var> records what caused this event, within the turn (except when the event is a Got event).
 +
 +
See also [http://waterken.sourceforge.net/javadoc/org/ref_send/log/Event.html Event in ref_send].
=== Sent ===
=== Sent ===
 +
 +
See also [http://waterken.sourceforge.net/javadoc/org/ref_send/log/Sent.html Sent in ref_send].
=== SentIf ===
=== SentIf ===
 +
 +
See also [http://waterken.sourceforge.net/javadoc/org/ref_send/log/SentIf.html SentIf in ref_send].
=== Got ===
=== Got ===
 +
 +
See also [http://waterken.sourceforge.net/javadoc/org/ref_send/log/Got.html Got in ref_send].
=== Resolved ===
=== Resolved ===
 +
 +
See also [http://waterken.sourceforge.net/javadoc/org/ref_send/log/Resolved.html Resolved in ref_send].
 +
 +
=== Comment ===
 +
 +
See also [http://waterken.sourceforge.net/javadoc/org/ref_send/log/Comment.html Comment in ref_send].
== Trace ==
== Trace ==
 +
 +
== CallSite ==
 +
 +
A stack frame.
 +
 +
Fields:
 +
* <code>name</code> :[[String]], the name of the method/code being executed.
 +
* <code>source</code> :[[String]], the path of the source file.
 +
* optional <code>span</code> :[[List]]<nowiki>[</nowiki>[[List]]<nowiki>[</nowiki>[[int]]]], the span in the source file.
 +
 +
See also [http://waterken.sourceforge.net/javadoc/org/ref_send/log/CallSite.html CallSite in ref_send].
== Anchor ==
== Anchor ==
 +
 +
An Anchor denotes the relative time of occurrence of an event.
 +
 +
Fields:
 +
* <code>turn</code> :[[#Turn|Turn]]
 +
* <code>number</code> :[[int]]
 +
 +
<var>number</var> specifies the ordering of this event among the events occurring in <var>turn</var>. The numbering may be sparse.
 +
 +
See also [http://waterken.sourceforge.net/javadoc/org/ref_send/log/Anchor.html Anchor in ref_send].
 +
 +
== Turn ==
 +
 +
A Turn identifies some turn in some event loop.
 +
 +
Fields:
 +
* <code>loop</code> :[[String]]
 +
* <code>number</code> :[[int]]
 +
 +
<var>number</var> specifies the ordering of this turn among the turns executed by the event loop which is identified by the URI <var>loop</var>. The numbering may be sparse.
 +
 +
See also [http://waterken.sourceforge.net/javadoc/org/ref_send/log/Turn.html Turn in ref_send].
== Discussion ==
== Discussion ==
-
* [http://www.eros-os.org/pipermail/e-lang/2008-March/012658.html Thread start (3 messages): [e-lang] Fwd: a couple of points about Causeway — Sun Mar 23 23:21:16 EDT 2008]
+
* [http://www.eros-os.org/pipermail/e-lang/2008-March/012658.html Thread start (3 messages): [e-lang<nowiki>]</nowiki> Fwd: a couple of points about Causeway — Sun Mar 23 23:21:16 EDT 2008]
-
* [http://www.eros-os.org/pipermail/e-lang/2008-July/012798.html Thread start: [e-lang] Causeway JSON format doc? — Wed Jul 30 21:07:31 CDT 2008]
+
* [http://www.eros-os.org/pipermail/e-lang/2008-July/012798.html Thread start: [e-lang<nowiki>]</nowiki> Causeway JSON format doc? — Wed Jul 30 21:07:31 CDT 2008]
** [http://www.eros-os.org/pipermail/e-lang/2008-August/012802.html Continuation in next month's archive]
** [http://www.eros-os.org/pipermail/e-lang/2008-August/012802.html Continuation in next month's archive]

Latest revision as of 13:38, 8 August 2008

This page is only partly written!

The new log format for Causeway is based on the JSON serialization used by ref_send / Waterken Server (implementation).

The structure classes used by ref_send.

A log is abstractly a set of Events. Causeway accepts an arbitrary number of files, each of which contains a JSON array of events.

Contents

Event

Event has a number of subclasses for specific events; the common structure records causality in general:

Fields:

anchor records when, in what vat, this event occurred. trace records what caused this event, within the turn (except when the event is a Got event).

See also Event in ref_send.

Sent

See also Sent in ref_send.

SentIf

See also SentIf in ref_send.

Got

See also Got in ref_send.

Resolved

See also Resolved in ref_send.

Comment

See also Comment in ref_send.

Trace

CallSite

A stack frame.

Fields:

  • name :String, the name of the method/code being executed.
  • source :String, the path of the source file.
  • optional span :List[List[int]], the span in the source file.

See also CallSite in ref_send.

Anchor

An Anchor denotes the relative time of occurrence of an event.

Fields:

number specifies the ordering of this event among the events occurring in turn. The numbering may be sparse.

See also Anchor in ref_send.

Turn

A Turn identifies some turn in some event loop.

Fields:

number specifies the ordering of this turn among the turns executed by the event loop which is identified by the URI loop. The numbering may be sparse.

See also Turn in ref_send.

Discussion

Personal tools
more tools