Copyright © 2011-2014 Michael Truog
Version: 1.3.3 Sep 30 2014 14:01:30 ------------------------------------------------------------------------
Authors: Michael Truog (mjtruog [at] gmail (dot) com).
acl() = [atom() | cloudi:service_name_pattern()]
api_timeout_milliseconds() = 101..4294967295 | infinity
aspect_info_after_internal() = aspect_info_internal()
aspect_info_after_internal_f() = aspect_info_internal_f()
aspect_info_before_internal() = aspect_info_internal()
aspect_info_before_internal_f() = aspect_info_internal_f()
aspect_info_internal() = aspect_info_internal_f() | {Module::module(), Function::atom()}
aspect_info_internal_f() = fun((Request::any(), State::any(), Dispatcher::cloudi_service:dispatcher()) -> {ok, NewState::any()} | {stop, Reason::any(), NewState::any()})
aspect_init_after_external() = aspect_init_after_external_f() | {Module::module(), Function::atom()}
aspect_init_after_external_f() = fun((CommandLine::[string()], Prefix::cloudi:service_name_pattern(), Timeout::timeout_milliseconds(), State::any()) -> {ok, NewState::any()} | {stop, Reason::any(), NewState::any()})
aspect_init_after_internal() = aspect_init_after_internal_f() | {Module::module(), Function::atom()}
aspect_init_after_internal_f() = fun((Args::list(), Prefix::cloudi_service:service_name_pattern(), Timeout::timeout_milliseconds(), State::any(), Dispatcher::cloudi_service:dispatcher()) -> {ok, NewState::any()} | {stop, Reason::any(), NewState::any()})
aspect_request_after_external() = aspect_request_after_external_f() | {Module::module(), Function::atom()}
aspect_request_after_external_f() = fun((Type::cloudi_service:request_type(), Name::cloudi_service:service_name(), Pattern::cloudi_service:service_name_pattern(), RequestInfo::cloudi_service:request_info(), Request::cloudi_service:request(), Timeout::cloudi_service:timeout_value_milliseconds(), Priority::cloudi_service:priority(), TransId::cloudi_service:trans_id(), Source::cloudi_service:source(), Result::cloudi_service:request_result(), State::any()) -> {ok, NewState::any()} | {stop, Reason::any(), NewState::any()})
aspect_request_after_internal() = aspect_request_after_internal_f() | {Module::module(), Function::atom()}
aspect_request_after_internal_f() = fun((Type::cloudi_service:request_type(), Name::cloudi_service:service_name(), Pattern::cloudi_service:service_name_pattern(), RequestInfo::cloudi_service:request_info(), Request::cloudi_service:request(), Timeout::cloudi_service:timeout_value_milliseconds(), Priority::cloudi_service:priority(), TransId::cloudi_service:trans_id(), Source::cloudi_service:source(), Result::cloudi_service:request_result(), State::any(), Dispatcher::cloudi_service:dispatcher()) -> {ok, NewState::any()} | {stop, Reason::any(), NewState::any()})
aspect_request_before_external() = aspect_request_before_external_f() | {Module::module(), Function::atom()}
aspect_request_before_external_f() = fun((Type::cloudi_service:request_type(), Name::cloudi_service:service_name(), Pattern::cloudi_service:service_name_pattern(), RequestInfo::cloudi_service:request_info(), Request::cloudi_service:request(), Timeout::cloudi_service:timeout_value_milliseconds(), Priority::cloudi_service:priority(), TransId::cloudi_service:trans_id(), Source::cloudi_service:source(), State::any()) -> {ok, NewState::any()} | {stop, Reason::any(), NewState::any()})
aspect_request_before_internal() = aspect_request_before_internal_f() | {Module::module(), Function::atom()}
aspect_request_before_internal_f() = fun((Type::cloudi_service:request_type(), Name::cloudi_service:service_name(), Pattern::cloudi_service:service_name_pattern(), RequestInfo::cloudi_service:request_info(), Request::cloudi_service:request(), Timeout::cloudi_service:timeout_value_milliseconds(), Priority::cloudi_service:priority(), TransId::cloudi_service:trans_id(), Source::cloudi_service:source(), State::any(), Dispatcher::cloudi_service:dispatcher()) -> {ok, NewState::any()} | {stop, Reason::any(), NewState::any()})
aspect_terminate_before_external() = aspect_terminate_before_external_f() | {Module::module(), Function::atom()}
aspect_terminate_before_external_f() = aspect_terminate_f()
aspect_terminate_before_internal() = aspect_terminate_before_internal_f() | {Module::module(), Function::atom()}
aspect_terminate_before_internal_f() = aspect_terminate_f()
aspect_terminate_f() = fun((Reason::any(), Timeout::timeout_milliseconds(), State::any()) -> {ok, State::any()})
dest_list() = acl() | undefined
dest_refresh() = lazy_closest | immediate_closest | lazy_furthest | immediate_furthest | lazy_random | immediate_random | lazy_local | immediate_local | lazy_remote | immediate_remote | lazy_newest | immediate_newest | lazy_oldest | immediate_oldest | none
dest_refresh_delay_milliseconds() = 101..4294967295
latency_time_milliseconds() = 1..4294967295
logging_formatters_set_proplist() = [{any | [module(), ...], [fatal | error | warn | info | debug | trace | emergency | alert | critical | warning | notice | {level, fatal | error | warn | info | debug | trace | emergency | alert | critical | warning | notice} | {output, module() | undefined} | {output_args, list()} | {output_max_r, non_neg_integer()} | {output_max_t, cloudi_service_api:seconds()} | {formatter, module() | undefined} | {formatter_config, list()}]}]
logging_proplist() = [{file, string() | undefined} | {level, loglevel()} | {syslog, logging_syslog_set_proplist() | undefined} | {formatters, logging_formatters_set_proplist() | undefined} | {redirect, node() | undefined}, ...]
logging_syslog_set_proplist() = [{identity, string()} | {facility, kern | user | mail | daemon | auth | syslog | lpr | news | uucp | cron | authpriv | ftp | netinfo | remoteauth | install | ras | local0 | local1 | local2 | local3 | local4 | local5 | local6 | local7 | non_neg_integer()} | {level, loglevel() | undefined}]
loglevel() = fatal | error | warn | info | debug | trace | off
node_reconnect_delay_seconds() = period_seconds()
nodes_proplist() = [node() | {nodes, [node()]} | {reconnect_start, node_reconnect_delay_seconds()} | {reconnect_delay, node_reconnect_delay_seconds()} | {listen, visible | all} | {connect, visible | hidden} | {timestamp_type, erlang | os} | {discovery, [{ec2, [{address, inet:ip_address()} | {port, inet:port_number()} | {ttl, non_neg_integer()}]} | {multicast, [{access_key_id, string()} | {secret_access_key, string()} | {ec2_host, string()} | {groups, [string()]} | {tags, [{string(), string()} | string()]}]}]}, ...]
period_seconds() = 1..4294967
priority() = -128..127
request_timeout_immediate_max_milliseconds() = 0..4294967295
response_timeout_immediate_max_milliseconds() = 0..4294967295
seconds() = non_neg_integer()
service() = #internal{prefix = cloudi:service_name_pattern(), module = undefined | atom() | file:filename(), args = list(), dest_refresh = cloudi_service_api:dest_refresh(), timeout_init = cloudi_service_api:timeout_milliseconds(), timeout_async = cloudi_service_api:timeout_milliseconds(), timeout_sync = cloudi_service_api:timeout_milliseconds(), dest_list_deny = cloudi_service_api:dest_list(), dest_list_allow = cloudi_service_api:dest_list(), count_process = pos_integer() | float(), max_r = non_neg_integer(), max_t = cloudi_service_api:seconds(), options = cloudi_service_api:service_options_internal()} | #external{prefix = cloudi:service_name_pattern(), file_path = undefined | file:filename(), args = string(), env = [{string(), string()}], dest_refresh = cloudi_service_api:dest_refresh(), protocol = default | local | tcp | udp, buffer_size = default | pos_integer(), timeout_init = cloudi_service_api:timeout_milliseconds(), timeout_async = cloudi_service_api:timeout_milliseconds(), timeout_sync = cloudi_service_api:timeout_milliseconds(), dest_list_deny = cloudi_service_api:dest_list(), dest_list_allow = cloudi_service_api:dest_list(), count_process = pos_integer() | float(), count_thread = pos_integer() | float(), max_r = non_neg_integer(), max_t = cloudi_service_api:seconds(), options = cloudi_service_api:service_options_external()}
service_external() = #external{prefix = cloudi:service_name_pattern(), file_path = undefined | file:filename(), args = string(), env = [{string(), string()}], dest_refresh = cloudi_service_api:dest_refresh(), protocol = default | local | tcp | udp, buffer_size = default | pos_integer(), timeout_init = cloudi_service_api:timeout_milliseconds(), timeout_async = cloudi_service_api:timeout_milliseconds(), timeout_sync = cloudi_service_api:timeout_milliseconds(), dest_list_deny = cloudi_service_api:dest_list(), dest_list_allow = cloudi_service_api:dest_list(), count_process = pos_integer() | float(), count_thread = pos_integer() | float(), max_r = non_neg_integer(), max_t = cloudi_service_api:seconds(), options = cloudi_service_api:service_options_external()}
service_id() = <<_:128>>
version 1 UUID (service instance id)
service_internal() = #internal{prefix = cloudi:service_name_pattern(), module = undefined | atom() | file:filename(), args = list(), dest_refresh = cloudi_service_api:dest_refresh(), timeout_init = cloudi_service_api:timeout_milliseconds(), timeout_async = cloudi_service_api:timeout_milliseconds(), timeout_sync = cloudi_service_api:timeout_milliseconds(), dest_list_deny = cloudi_service_api:dest_list(), dest_list_allow = cloudi_service_api:dest_list(), count_process = pos_integer() | float(), max_r = non_neg_integer(), max_t = cloudi_service_api:seconds(), options = cloudi_service_api:service_options_internal()}
service_options_external() = [{priority_default, -128..127} | {queue_limit, undefined | non_neg_integer()} | {queue_size, undefined | pos_integer()} | {dest_refresh_start, dest_refresh_delay_milliseconds()} | {dest_refresh_delay, dest_refresh_delay_milliseconds()} | {request_name_lookup, sync | async} | {request_timeout_adjustment, boolean()} | {request_timeout_immediate_max, request_timeout_immediate_max_milliseconds()} | {response_timeout_adjustment, boolean()} | {response_timeout_immediate_max, response_timeout_immediate_max_milliseconds()} | {count_process_dynamic, [{period, period_seconds()} | {rate_request_max, number()} | {rate_request_min, number()} | {count_max, number()} | {count_min, number()}] | false} | {scope, atom()} | {monkey_latency, [{time_uniform_min, latency_time_milliseconds()} | {time_uniform_max, latency_time_milliseconds()} | {time_gaussian_mean, latency_time_milliseconds()} | {time_gaussian_stddev, float()} | {time_absolute, latency_time_milliseconds()}] | system | false} | {monkey_chaos, [{probability_request, float()} | {probability_day, float()}] | system | false} | {automatic_loading, boolean()} | {aspects_init_after, [aspect_init_after_external()]} | {aspects_request_before, [aspect_request_before_external()]} | {aspects_request_after, [aspect_request_after_external()]} | {aspects_terminate_before, [aspect_terminate_before_external()]}]
service_options_internal() = [{priority_default, priority()} | {queue_limit, undefined | non_neg_integer()} | {queue_size, undefined | pos_integer()} | {dest_refresh_start, dest_refresh_delay_milliseconds()} | {dest_refresh_delay, dest_refresh_delay_milliseconds()} | {request_name_lookup, sync | async} | {request_timeout_adjustment, boolean()} | {request_timeout_immediate_max, request_timeout_immediate_max_milliseconds()} | {response_timeout_adjustment, boolean()} | {response_timeout_immediate_max, response_timeout_immediate_max_milliseconds()} | {count_process_dynamic, [{period, period_seconds()} | {rate_request_max, number()} | {rate_request_min, number()} | {count_max, number()} | {count_min, number()}] | false} | {scope, atom()} | {monkey_latency, [{time_uniform_min, latency_time_milliseconds()} | {time_uniform_max, latency_time_milliseconds()} | {time_gaussian_mean, latency_time_milliseconds()} | {time_gaussian_stddev, float()} | {time_absolute, latency_time_milliseconds()}] | system | false} | {monkey_chaos, [{probability_request, float()} | {probability_day, float()}] | system | false} | {automatic_loading, boolean()} | {aspects_init_after, [aspect_init_after_internal()]} | {aspects_request_before, [aspect_request_before_internal()]} | {aspects_request_after, [aspect_request_after_internal()]} | {aspects_info_before, [aspect_info_before_internal()]} | {aspects_info_after, [aspect_info_after_internal()]} | {aspects_terminate_before, [aspect_terminate_before_internal()]} | {application_name, undefined | atom()} | {request_pid_uses, infinity | pos_integer()} | {request_pid_options, [{fullsweep_after, non_neg_integer()} | {min_heap_size, non_neg_integer()} | {min_bin_vheap_size, non_neg_integer()}]} | {info_pid_uses, infinity | pos_integer()} | {info_pid_options, [{fullsweep_after, non_neg_integer()} | {min_heap_size, non_neg_integer()} | {min_bin_vheap_size, non_neg_integer()}]} | {duo_mode, boolean()} | {hibernate, boolean()} | {reload, boolean()}]
service_proplist() = [{type, internal | external} | {prefix, cloudi:service_name_pattern()} | {module, atom() | file:filename()} | {file_path, file:filename()} | {args, list()} | {env, [{string(), string()}]} | {dest_refresh, dest_refresh()} | {protocol, default | local | tcp | udp} | {buffer_size, default | pos_integer()} | {timeout_init, timeout_milliseconds()} | {timeout_async, timeout_milliseconds()} | {timeout_sync, timeout_milliseconds()} | {dest_list_deny, dest_list()} | {dest_list_allow, dest_list()} | {count_process, pos_integer() | float()} | {count_thread, pos_integer() | float()} | {max_r, non_neg_integer()} | {max_t, seconds()} | {options, service_options_internal() | service_options_external()}]
timeout_milliseconds() = 101..4294967195
| acl/1 |
List all ACL entries.. |
| acl_add/2 |
Add ACL entries.Add more ACL entries to be later used when starting services. |
| acl_remove/2 |
Remove ACL entries.Remove ACL entries that are no longer needed. |
| code_path/1 |
List all the CloudI Erlang VM code server search paths.The order is the same order the directories are searched. |
| code_path_add/2 |
Add a directory to the CloudI Erlang VM code server's search paths.The path is always appended to the list of search paths (you should not need to rely on search path order because of unique naming). |
| code_path_remove/2 |
Remove a directory from the CloudI Erlang VM code server's search paths.This doesn't impact any running services, only services that will be started in the future. |
| log_redirect/2 | (Deprecated.) |
| logging/1 |
Provide the current logging configuration.. |
| logging_file_set/2 |
Modify the current log file path.. |
| logging_formatters_set/2 |
Set the CloudI log formatters.lager backend (gen_event) modules are supported as 'output' modules and lager formatter modules are supported with or without an 'output' module specified. |
| logging_level_set/2 |
Modify the current loglevel.CloudI uses asynchronous logging with flow control (backpressure handling) to prevent misbehaving services from causing instability. |
| logging_redirect_set/2 |
Redirect the log output.Redirect all local log output to a remote CloudI node. |
| logging_syslog_set/2 |
Set the CloudI syslog configuration.. |
| loglevel_set/2 | (Deprecated.) |
| nodes/1 |
List both the connected and disconnected CloudI nodes.. |
| nodes_add/2 |
Add CloudI nodes.Explicitly add a CloudI node name, so that services between all other CloudI nodes and the added nodes can send each other service requests. |
| nodes_alive/1 |
List all the CloudI nodes known to be connected.. |
| nodes_dead/1 |
List all the CloudI nodes that are disconnected but expected to reconnect.. |
| nodes_get/1 |
Get CloudI nodes configuration.. |
| nodes_remove/2 |
Explicitly remove CloudI nodes.The node must be currently dead to be removed. |
| nodes_set/2 |
Set CloudI nodes configuration.. |
| service_subscriptions/2 |
Get a list of all service subscriptions.When a subscription on the same service name pattern occurred multiple times, only a single entry is returned within the list. |
| services/1 |
List all service instances with each service's UUID.. |
| services_add/2 |
Add service instances.Provide service configuration using the same syntax found in the configuration file (i.e., /usr/local/etc/cloudi/cloudi.conf). |
| services_remove/2 |
Remove service instances.Provide the Service UUIDs for the services that should be stopped. |
| services_restart/2 |
Restart service instances.Provide the Service UUIDs for the services that should be restarted. |
| services_search/2 |
Search service instances for matches on the provided service name.Multiple services may be returned for a single service name. |
acl(Timeout::api_timeout_milliseconds()) -> {ok, [{atom(), [cloudi_service:service_name_pattern()]}]} | {error, timeout | noproc}
acl_add(L::[{atom(), acl()}, ...], Timeout::api_timeout_milliseconds()) -> ok | {error, timeout | noproc | cloudi_core_i_configuration:error_reason_acl_add()}
acl_remove(L::[atom(), ...], Timeout::api_timeout_milliseconds()) -> ok | {error, timeout | noproc | cloudi_core_i_configuration:error_reason_acl_remove()}
code_path(Timeout::api_timeout_milliseconds()) -> {ok, [file:filename(), ...]}
code_path_add(Dir::file:filename(), Timeout::api_timeout_milliseconds()) -> ok | {error, bad_directory}
code_path_remove(Dir::file:filename(), Timeout::api_timeout_milliseconds()) -> ok | {error, does_not_exist | bad_name}
log_redirect(Node::undefined | node(), Timeout::api_timeout_milliseconds()) -> ok
This function is deprecated: Use logging_redirect_set/2 instead
logging(Timeout::api_timeout_milliseconds()) -> {ok, logging_proplist()} | {error, timeout | noproc}
logging_file_set(FilePath::string() | undefined, Timeout::api_timeout_milliseconds()) -> ok | {error, file:posix() | badarg | system_limit}
logging_formatters_set(L::logging_formatters_set_proplist(), Timeout::api_timeout_milliseconds()) -> ok | {error, timeout | noproc | cloudi_core_i_configuration:error_reason_logging_formatters_set()}
logging_level_set(Level::loglevel() | undefined, Timeout::api_timeout_milliseconds()) -> ok
logging_redirect_set(Node::undefined | node(), Timeout::api_timeout_milliseconds()) -> ok
logging_syslog_set(L::logging_syslog_set_proplist(), Timeout::api_timeout_milliseconds()) -> ok | {error, timeout | noproc | cloudi_core_i_configuration:error_reason_logging_syslog_set()}
loglevel_set(Level::loglevel(), Timeout::api_timeout_milliseconds()) -> ok
This function is deprecated: Use logging_level_set/2 instead
nodes(Timeout::api_timeout_milliseconds()) -> {ok, [node()]} | {error, timeout | noproc}
nodes_add(L::[node(), ...], Timeout::api_timeout_milliseconds()) -> ok | {error, timeout | noproc | cloudi_core_i_configuration:error_reason_nodes_add()}
nodes_alive(Timeout::api_timeout_milliseconds()) -> {ok, [node()]} | {error, timeout | noproc}
nodes_dead(Timeout::api_timeout_milliseconds()) -> {ok, [node()]} | {error, timeout | noproc}
nodes_get(Timeout::api_timeout_milliseconds()) -> {ok, nodes_proplist()} | {error, timeout | noproc}
nodes_remove(L::[node(), ...], Timeout::api_timeout_milliseconds()) -> ok | {error, timeout | noproc | cloudi_core_i_configuration:error_reason_nodes_remove()}
nodes_set(L::nodes_proplist(), Timeout::api_timeout_milliseconds()) -> ok | {error, timeout | noproc | cloudi_core_i_configuration:error_reason_nodes_set()}
service_subscriptions(ServiceId::binary() | string(), Timeout::api_timeout_milliseconds()) -> {ok, [cloudi_service:service_name_pattern()]} | {error, timeout | noproc | {service_id_invalid, any()} | not_found}
services(Timeout::api_timeout_milliseconds()) -> {ok, [{service_id(), service_internal()} | {service_id(), service_external()}]} | {error, timeout | noproc}
services_add(L::[{internal, term(), term(), term(), term(), term(), term(), term(), term(), term(), term(), term(), term(), term()} | {external, term(), term(), term(), term(), term(), term(), term(), term(), term(), term(), term(), term(), term(), term(), term(), term(), term()} | service_proplist(), ...], Timeout::api_timeout_milliseconds()) -> {ok, [service_id(), ...]} | {error, timeout | noproc | cloudi_core_i_configuration:error_reason_services_add()}
services_remove(L::[binary() | string(), ...], Timeout::api_timeout_milliseconds()) -> ok | {error, timeout | noproc | {service_id_invalid, any()} | cloudi_core_i_configuration:error_reason_services_remove()}
services_restart(L::[binary() | string(), ...], Timeout::api_timeout_milliseconds()) -> ok | {error, timeout | noproc | {service_id_invalid, any()} | cloudi_core_i_configuration:error_reason_services_restart()}
services_search(ServiceName::cloudi:service_name(), Timeout::api_timeout_milliseconds()) -> {ok, [{service_id(), service_internal()} | {service_id(), service_external()}]} | {error, timeout | noproc | service_name_invalid}
Generated by EDoc, Sep 30 2014, 14:01:30.