(* $Id: netplex_controller.mli 1403 2010-02-10 17:14:08Z gerd $ *)
(** Controller *)
(** The controller is the main part of the Netplex system that starts and
* stop the individual service containers.
*)
open Netplex_types
val create_controller : parallelizer -> controller_config -> controller
(** Create a controller with the default event system *)
val create_controller_for_esys :
Unixqueue.event_system -> parallelizer -> controller_config -> controller
(** Create a controller for the passed event system *)
val extract_config :
logger_factory list -> config_file -> controller_config
(** Extracts the controller config *)
(** {1 Configuring the controller}
There is a [controller] section that may configure the controller:
{[ netplex {
...
controller {
socket_directory = "/var/run/myapp_sockets";
max_level = "debug";
logging { ... };
}
...
}
]}
The [socket_directory] overrides the location where the special
directory with Unix Domain sockets and other runtime files is
created.
The [max_level] parameter defines the global maximum log level.
It defaults to "info". By setting it to "debug" (as shown) debug
logging is enabled. This parameter can be modified at runtime.
The [logging] section is explained in {!Netplex_log}.
*)