This is a replacement of native rb (Report Browser Tool). It was implemented in document/view manner. rbx module is a document and rbx_cons, rbx_inets are - views.
- rbx returns tuples, list of tuples w/o formatting.
- rbx_cons is a console view like rb
- rbx_inets is a web view. So, using you favorite browser you can explore logs.
- You can write you own view best suitable for your needs
Just run
./rebar compile
Just run
application:start(rbx).
inets_port <port>- httpd port. If not present,8000report_dir <path>- path to logs. If no paramenter is specified, sasl error_logger_mf_dir is usedstart_log <file_name>- rbx_cons will dump output into<file_name>file instead of stdout
erl -rbx inets_port 8001
rep_type= atom()strpid= string()report= {pos_integer(), rep_type(), strpid(), calendar:datetime()}filter= {types, [rep_type]} | {reg_exp, string()} | {datetime, {calendar:datetime(), calendar:datetime()}} | {datetime, {from, calendar:datetime()}} | {datetime, {to, calendar:datetime()}
rescan(Node, MaxRecords) -> ReportTypes- load reports from files- Node = atom() - node name
- MaxRecords = all | pos_integer() - max records to load
list(Node) -> Reports- returns list of reports- Node = atom() - node name
- Reports = [report]
list(Node, Filters) -> Reports-> same as list/1, but applies filters- Node = atom() - node name
- Filters = [filter] - filter out records
show(Node, ReportNums) -> report()- show reports- Node = atom() - node name
- ReportNums = [pos_integer()] - numbers of reports to show
get_rtypes(Node) -> Types- get list of loaded reports- Node = atom() - node name
- RepTypes = [rep_type()] - loaded report types
rescan() -> RepTypes- load all reports from filerescan(MaxReports) -> RepTypes- load reports from file- MaxRecords = all | pos_integer() - max records to load
list() -> Reports- returns a list of rportslist(Filters) -> Reports- same as list/1, but applies filters- Filters = [filter] - filter out records
show() -> Reports- prints all formatted reports to stdout or file- Reports = string()
show(NumReps) -> Report- prints selected reports to stdout or file- NumReps = [pos_integer()] - reports to print
- Reports = string()
start_log(Filename) -> ok- starts to log into file.- Filename = string() - file to log
stop_log() -> ok- stops logging into file. Back to stdout mode.attach(Node) -> ok | {error, Reason}- attaches to rbx server run on another node - no need to use remove- Node = atom() - node to attach
- Reason = string()
detach() -> ok- detaches from remote rbx. Back to local one.attached_node() -> atom()- show attached node