The launch options for binder afb-binder are listed below.
This list is created using the command afb-binder --help
.
Given that the default values may change, use this command to get
effective values.
--alias=ALIAS Multiple url map outside of rootdir [eg:
--alias=/icons:/usr/share/icons]
--apitimeout=TIMEOUT Binding API timeout in seconds [default 20]
-A, --auto-api=DIRECTORY Automatic load of api of the given directory
--background Get all in background mode
-b, --binding=SPEC Load the binding of SPEC where SPEC is
BINDING[:[UID:]CONFIG], the path of the BINDING,
the path of the CONFIG, the UID
--cache-eol=TIMEOUT Client cache end of live [default 100000]
--call=CALLSPEC Call at start, format of val: API/VERB:json-args
--cntxtimeout=TIMEOUT Client Session Context Timeout [default 32000000]
-c, --color[=VALUE] Colorize the ouput
-C, --config=FILENAME Load options from the given config file
-D, --daemon Get all in background mode
-e, --exec Execute the remaining arguments
--foreground Get all in foreground mode
--https Activates HTTPS
--https-cert=FILE File containing the certificate (pem)
--https-key=KEY File containing the private key (pem)
-i, --interface=INTERFACE Add HTTP listening interface (ex:
tcp:localhost:8080)
-j, --jobs-max=VALUE Maximum count of jobs that can be queued [default
200]
--ldpaths=PATHSET Load bindings from dir1:dir2:...
-l, --log=LOGSPEC Tune log level
-M, --monitoring Enable HTTP monitoring at <ROOT>/monitoring/
--no-httpd Forbid HTTP service
-n, --name=NAME Set the visible name
-o, --output=FILENAME Redirect stdout and stderr to output file (when
--daemon)
-p, --port=PORT HTTP listening TCP port [default 1234]
-q, --quiet Quiet Mode, repeat to decrease verbosity
--rootapi=PATH HTML Root API URL [default /api]
--rootbase=PATH Angular Base Root URL [default /opa]
--rootdir=DIRECTORY Root Directory of the application [default:
workdir] relative to workdir
--roothttp=DIRECTORY HTTP Root Directory [default no root http (files
not served but apis still available)]
--rpc-client=SOCKSPEC Bind to an afb service through websocket
--rpc-server=SOCKSPEC Provide an afb service through websockets
--session-max=COUNT Max count of session simultaneously [default 200]
-s, --set=VALUE Set parameters ([API]/[KEY]:JSON or
{"API":{"KEY":JSON}}
--traceapi=VALUE Log the apis: none, common, api, event, all
--traceevt=VALUE Log the events: none, common, extra, all
--traceglob=VALUE Log the globals: none, all
--tracereq=VALUE Log the requests: none, common, extra, all
--traceses=VALUE Log the sessions: none, all
--trap-faults=VALUE Trap faults: on, off, yes, no, true, false, 1, 0
(default: true)
-F, --fail Shortcut for --trap-faults=no
-t, --threads-max=VALUE Maximum count of parallel threads held [default 5]
-u, --uploaddir=DIRECTORY Directory for uploading files [default: workdir]
relative to workdir
-v, --verbose Verbose Mode, repeat to increase verbosity
--weak-ldpaths=PATHSET Same as --ldpaths but errors are not fatal
--ws-client=SOCKSPEC Bind to an afb service through websocket
--ws-server=SOCKSPEC Provide an afb service through websockets
-w, --workdir=DIRECTORY Set the working directory [default: $PWD or
current working directory]
-x, --extension=SPEC Load the extension of SPEC where SPEC is
EXTENSION[:[UID:]CONFIG], the path of the
EXTENSION, the path of the CONFIG, the UID
-X, --extpaths=PATHSET Load extensions from dir1:dir2:...
-z, --dump-final-config Dump the config after expansion to stdout and exit
-Z, --dump-config Dump the config to stdout and exit
-?, --help Give this help list
--usage Give a short usage message
-V, --version Print program version
Prints help with available options and the real defaults values
A short usage
Display version and copyright
Increases the verbosity, can be repeated
Add basic colorization to the output.
Decreases the verbosity, can be repeated
Tune the log level mask. The levels are:
- error
- warning
- notice
- info
- debug
The level can be set using + or -.
Examples | description |
---|---|
error,warning | selects only the levels error and warning |
+debug | adds level debug to the current verbosity |
-warning | remove the level warning from the current verbosity |
+warning-debug,info | Adds error and remove errors and warnings |
HTTP listening TCP port [default 1234]
Directory where the daemon must run [default: $PWD if defined or the current working directory]
Directory where uploaded files are temporarily stored [default: workdir]
Root directory of the application to serve [default: workdir]
Directory of HTTP served files. If not set, files are not served but apis are still accessible.
Angular Base Root URL [default /opa]
This is used for any application of kind OPA (one page application). When set, any missing document whose url has the form /opa/zzz is translated to /opa/#!zzz
HTML Root API URL [default /api]
The bindings are available within that url.
Maps a path located anywhere in the file system to the a subdirectory. The syntax for mapping a PATH to the subdirectory NAME is: --alias=/NAME:PATH.
Example: --alias=/icons:/usr/share/icons maps the content of /usr/share/icons within the subpath /icons.
This option can be repeated.
If the option is present, it activates HTTPS
Path to the file containing the certificate of the HTTPS server.
Path to the file containing the private key of the HTTPS server.
binding API timeout in seconds [default 20]
Defines how many seconds maximum a method is allowed to run. 0 means no limit.
Client Session Timeout in seconds [default 32000000 that is 1 year]
Client cache end of live [default 100000 that is 27,7 hours]
Maximum count of simultaneous sessions [default 200]
Load bindings from given paths separated by colons as for dir1:dir2:binding1.so:... [default = $libdir/afb]
You can mix path to directories and to bindings. The sub-directories of the given directories are searched recursively.
The bindings are the files terminated by '.so' (the extension so denotes shared object) that contain the public entry symbol.
Same as --ldpaths but instead of stopping on error, ignore errors and continue.
Load the binding of given path.
Transparent binding to a binder afb-binder service through a WebSocket.
The value of xxxx is either a unix naming socket, of the form "unix:path/api", or an internet socket, of the form "host:port/api".
Provides a binder afb-binder service through WebSocket.
The value of xxxx is either a unix naming socket, of the form "unix:path/api", or an internet socket, of the form "host:port/api".
Get all in foreground mode (default)
Get all in background mode
Forbids HTTP serve
Must be the last option for afb-binder. The remaining arguments define a command that afb-binder will launch. The sequences @p and @@ of the arguments are replaced with the port and @.
Trace the processing of requests in the log file.
Valid values are 'none' (default), 'common', 'extra' or 'all'.
Trace the accesses to functions of class api.
Valid values are 'none' (default), 'common', 'api', 'event' or 'all'.
Trace the accesses to functions of class event.
Valid values are 'none' (default), 'common', 'extra' or 'all'.
Trace the global accesses.
Valid values are 'none' (default) or 'all'.
Trace the accesses to functions of class session.
Valid values are 'none' (default) or 'all'.
Call a binding at start (can be be repeated). The values are given in the form API/VERB:json-args.
Example: --call 'monitor/set:{"verbosity":{"api":"debug"}}'
Enable HTTP monitoring at /monitoring/
Set the visible name
Automatic activation of api of the given directory when the api is missing.
Load options from the given config file
This can be used instead of arguments on the command line.
Example:
afb-binder \
--binding /home/15646/bindings/binding45.so \
--binding /home/15646/bindings/binding3.so \
--tracereq common \
--port 5555 \
--set api45/key:54027a5e3c6cb2ca5ddb97679ce32f185b067b0a557d16a8333758910bc25a72 \
--exec /home/15646/bin/test654 @p @t
is equivalent to:
afb-binder --config /home/15646/config1
when the file /home/15646/config1 is:
{
"binding": [
"\/home\/15646\/bindings\/binding45.so",
"\/home\/15646\/bindings\/binding3.so"
],
"tracereq": "common",
"port": 5555,
"set" : {
"api45": {
"key": "54027a5e3c6cb2ca5ddb97679ce32f185b067b0a557d16a8333758910bc25a72"
}
},
"exec": [
"\/home\/15646\/bin\/test654",
"@p",
"@t"
]
}
The options are the keys of the config object.
See option --dump-config
Output a JSON representation of the configuration resulting from environment and options.
Redirect stdout and stderr to output file
Set values that can be retrieved by bindings.
The set value can have different formats.
The most generic format is {"API1":{"KEY1":VALUE,"KEY2":VALUE2,...},"API2":...}
This example set 2 keys for the api chook:
afb-binder -Z --set '{"chook":{"account":"urn:chook:b2ca5ddb97679","delay":500}}'
{
"set": {
"chook": {
"account": "urn:chook:b2ca5ddb97679",
"delay": 500
}
}
}
An other format is: [API]/[KEY]:VALUE. When API is omitted, it take the value "". When KEY is ommitted, it take the value of "".
The settings for the API * are globals and apply to all bindings.
The settings for the KEY * are mixing the value for the API.
The following examples are all setting the same values:
afb-binder --set '{"chook":{"account":"urn:chook:b2ca5ddb97679","delay":500}}'
afb-binder --set 'chook/*:{"account":"urn:chook:b2ca5ddb97679","delay":500}'
afb-binder --set 'chook/:{"account":"urn:chook:b2ca5ddb97679","delay":500}'
afb-binder --set 'chook/account:"urn:chook:b2ca5ddb97679"' --set chook/delay:500
Add an HTTP listening interface.
Set the maximum count of jobs to be queued.
Indicates that faults are to be trapped or not
Set the maximum count of hold threads
Load the given binder extension
Load the extensions found recursively in the given pathset