Add documentation on debugging features
authorJosé Bollo <jose.bollo@iot.bzh>
Tue, 19 Sep 2017 15:59:01 +0000 (17:59 +0200)
committerJosé Bollo <jose.bollo@iot.bzh>
Mon, 9 Oct 2017 12:08:29 +0000 (14:08 +0200)
Change-Id: I8c524bb290097524f5ad9d70fe93f19824f1faa7
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
docs/SUMMARY.md
docs/afb-daemon-debugging.md [new file with mode: 0644]

index 9fed80c..44b06f8 100644 (file)
@@ -11,3 +11,4 @@
 * [Annexes](annexes.md)
   * [Installing the binder on a desktop](afb-desktop-package.md)
   * [Options of afb-daemon](afb-daemon-options.md)
+  * [Debugging afb-daemon](afb-daemon-debugging.md)
diff --git a/docs/afb-daemon-debugging.md b/docs/afb-daemon-debugging.md
new file mode 100644 (file)
index 0000000..dd5fd64
--- /dev/null
@@ -0,0 +1,36 @@
+# Debugging afb-daemon and its bindings
+
+When compiled with the symbol AGL_DEVEL defined, the ***binder***
+understand the 2 configuration variables:
+
+ - AFB_DEBUG_BREAK: to emit interrupts
+ - AFB_DEBUG_WAIT: to wait interrupts
+
+To use these variables, assign it the list of break or wait points
+to reach.
+
+Example:
+
+```bash
+$ AFB_DEBUG_BREAK=main-entry AFB_DEBUG_WAIT=start-load,start-exec afb-daemon ....
+```
+
+This tells to ***afb-daemon*** to break at the point **main-entry** and to
+wait at the points **start-load** and **start-exec**.
+
+The items of the list can be separated using comma, space, tab or new-line.
+
+The break/wait points are, in the order of their occurence:
+
+- main-entry: before decode arguments
+- main-args: before daemon setup
+- main-start: before starting jobs
+- start-entry: before initialisation of sessions and hooks
+- start-load: before load and pre-init of bindings
+- start-start: before init of bindings
+- start-http: before start of http server
+- start-call: before execution of requests of the command line (option --call)
+- start-exec: before execution of child preocees
+
+Note also that a call to 'personality' is inserted just after
+the point start-start.