Skip to content

dmitryme/rbx

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Table of Contents

RBX is a Report Browser eXtended.

Overview

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

Build instruction

Just run ./rebar compile

How to start

Just run application:start(rbx).

Configuration parameters

  • inets_port <port> - httpd port. If not present, 8000
  • report_dir <path> - path to logs. If no paramenter is specified, sasl error_logger_mf_dir is used
  • start_log <file_name> - rbx_cons will dump output into <file_name> file instead of stdout
These parameters can be specified in app.config file or passed directly to erl. E.g. erl -rbx inets_port 8001

Modules exports

Types

  • 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()}

rbx

  • 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

rbx_cons

  • rescan() -> RepTypes - load all reports from file
  • rescan(MaxReports) -> RepTypes - load reports from file
    • MaxRecords = all | pos_integer() - max records to load
  • list() -> Reports - returns a list of rports
  • list(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

About

RBX is a Report Browser eXtended. Extended rb replacement.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published