Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

inviso_lfm_tpfreader(3erl) [linux man page]

inviso_lfm_tpfreader(3erl)				     Erlang Module Definition					inviso_lfm_tpfreader(3erl)

NAME
inviso_lfm_tpfreader - Inviso Standard Reader Process to Standard Logfile Merger DESCRIPTION
Implements the standard reader process to the standard logfile merger inviso_lfm . The reader process reads logfiles belonging to the same set (normally one node) in chronological order and delivers logged trace messages one by one to the output process. Before any trace messages are delivered, the inviso_lfm_tpreader implementation reads the entire trace information file (if in use) and builds a database over pid-to-alias associations. The inviso_lfm_tpreader implementation is capable of considering that an alias may have been used for several processes during different times. An alias may also be in use for several pids at the same time, on purpose. If a process has generated a trace message, all associa- tions between that pid and aliases will be presented as the list PidMappings in the message sent to the output process. EXPORTS
handle_logfile_sort_wrapset(LogFiles) -> FileList2 Types LogFiles = [{trace_log, FileList}] FileList = FileList2 = [FileName] FileName = string() Only one {trace_log, FileList} tuple is expected in LogFiles , all other tuples are ignored. FileList must: * contain one single file name, or * a list of wraplog files, following the naming convention <Prefix><Nr><Suffix> . Sorts the files in FileList in chronological order beginning with the oldest. Sorting is only relevant if FileList is a list of wraplogs. The sorting is done on finding the modulo-counter in the filename and not on filesystem timestamps. This function is exported for convenience should an own reader process be implemented. THE TRACE INFORMATION FILE PROTOCOL
The format of a trace information file is dictated by the meta tracer process. The inviso_lfm_tpfreader implementation of a reader process understands the following trace information entries. Note that the inviso_rt_meta trace information file is on binary format prefixing every entry with a 4 byte length indicator. {Pid, Alias, alias, NowStamp} : Pid = pid() Alias = term() NowStamp = term() , but in current implementation as returned from erlang:now/0 This message indicates that from now on shall Pid be associated with Alias . {MaybePid, Alias, unalias, NowStamp} : MaybePid = pid() | undefined Alias = term() NowStamp = term() , see above This message indicates that, if MaybePid is a pid, this pid shall no longer be associated with Alias . If it is undefined , all associ- ations with Alias from now shall be considered invalid. Also note that there are many situations where unalias entries will be missing. For instance if a process terminates without making explicit function calls removing its associations first. This is seldom a problem unless the pid is reused. Ericsson AB inviso 0.6.2 inviso_lfm_tpfreader(3erl)

Check Out this Related Man Page

pg(3erl)						     Erlang Module Definition							  pg(3erl)

NAME
pg - Distributed, Named Process Groups DESCRIPTION
This (experimental) module implements process groups. A process group is a group of processes that can be accessed by a common name. For example, a group named foobar can include a set of processes as members of this group and they can be located on different nodes. When messages are sent to the named group, all members of the group receive the message. The messages are serialized. If the process P1 sends the message M1 to the group, and process P2 simultaneously sends message M2 , then all members of the group receive the two messages in the same order. If members of a group terminate, they are automatically removed from the group. This module is not complete. The module is inspired by the ISIS system and the causal order protocol of the ISIS system should also be implemented. At the moment, all messages are serialized by sending them through a group master process. EXPORTS
create(PgName) -> ok | {error, Reason} Types PgName = term() Reason = already_created | term() Creates an empty group named PgName on the current node. create(PgName, Node) -> ok | {error, Reason} Types PgName = term() Node = node() Reason = already_created | term() Creates an empty group named PgName on the node Node . join(PgName, Pid) -> Members Types PgName = term() Pid = pid() Members = [pid()] Joins the pid Pid to the process group PgName . Returns a list of all old members of the group. send(PgName, Msg) -> void() Types PgName = Msg = term() Sends the tuple {pg_message, From, PgName, Msg} to all members of the process group PgName . Failure: {badarg, {PgName, Msg}} if PgName is not a process group (a globally registered name). esend(PgName, Msg) -> void() Types PgName = Msg = term() Sends the tuple {pg_message, From, PgName, Msg} to all members of the process group PgName , except ourselves. Failure: {badarg, {PgName, Msg}} if PgName is not a process group (a globally registered name). members(PgName) -> Members Types PgName = term() Members = [pid()] Returns a list of all members of the process group PgName . Ericsson AB stdlib 1.17.3 pg(3erl)
Man Page