Forum OpenACS Development: request monitor updated for 5.2

Collapse
Posted by Gustaf Neumann on
In the current version of openacs 5.2 preauth and postauth filters are not called for /resources/*, but trace filters are called. This was done abviously for performance reasons, but poses a challenge e.g. for performance monitors that rely on the fact that all filters are executed. So has the last published version of the xotcl request monitor troubles with this.

So here is a new version, which tries to meet this challenge and produces reasonable output for 5.2 as well.
http://media.wu-wien.ac.at/download/xotcl-request-monitor-0.26.apm

it has a lot of small improvements such as nicer pages using the list widget, a few more statistics etc. For best results, use it with xotcl-1.3.8. Instructions are here:
https://openacs.org/forums/message-view?message%5fid=329079
Note, that it depends on libthread.

Collapse
Posted by Gustaf Neumann on
Hi folks, an updated version of the xotcl request monitor is available (version 0.31) which has various new features:
  • most visible: a graphic chart based on java script (mostly done by nima, some polishing from my side)
  • display of active users per community (could be interesting for moodle like virtual presence)
  • listing of last 100 requests and zoom in for details
  • using a simpler and improved interface based on xotcl forwarders (call methods of an object, selected ones are forwarded to the monitoring thread)
This version will as well require an updated xotcl-core (see the link below for getting the files and instructions).

I have also included some experimental support for background delivery of files. This prevents blocking of request threads when several users download large files over slow lines. A connection thread processes as usual a request and returns the headers. Before it sends the actual file, it transfers the open socket to a delivery thread, which sends the file in an event driven manner (currenly using fcopy). The number of concurrent deliveries is primarily limited by the number of open sockets, which can be in the thousands. Header processing can be done in a few milliseconds. Using background delivery it should be possible to reduce the memory footprint for file-intense applications by reducing the number of threads.

In order to use background delivery, one can use ad_returnfile_background, which is interface compatible with ns_returnfile. A good place to try is the ns_returnfile invocation in cr_write_content (in acs-content-repository/tcl/revision-procs.tcl).

The background delivery requires a small change in the aolserver to define two new subcommands for ns_conn (ns_conn channel and ns_conn contentsentlength). The first was taken from the cool sourceforge naviserver project (Zoran and friends), the second - trivial one - was by yours truely.

The request monitor is not at all depending on the background delivery, it can be used exactly like in previous versions with the off-the-shelf aolserver. However, the request monitor can be used for monitoring the files delivered in the background.

http://media.wu-wien.ac.at/download/xowiki-doc/xotcl-apm.html

maybe, somebody finds this useful

Collapse
Posted by Orzenil Silva Junior on
Hi Gustaf,

http://media.wu-wien.ac.at/download/xotcl-request-monitor-0.31.apm is broken

i saw the last xotcl-request-monitor version at http://media.wu-wien.ac.at/download/ is 0.27. Is new version 0.31 available in another place?

thanks

\Orzenil

Collapse
Posted by Gustaf Neumann on
Now it is there as well...