Index: openacs-4/packages/acs-developer-support/www/doc/index.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-developer-support/www/doc/index.adp,v diff -u -N --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/acs-developer-support/www/doc/index.adp 27 Oct 2014 16:39:34 -0000 1.2 @@ -0,0 +1,76 @@ + +{/doc/acs-developer-support {Developer Support}} {Developer Support} +Developer Support + + + +

Developer Support

+part of the ArsDigita Community System, by Jon Salz

The Big Picture

+Software development is a big feedback loop: a developer writes +something, tests it, and then repeats until the results are +satisfactory. It's important to streamline this cycle by having a +development environment which makes it easy to analyze what the +software is doing under the hood. +

Peeking Under the Hood

Our development environment previously consisted largely of +Emacs, and tail -f +/web/servername/log/servername-error.log. Now this has been +augmented: ad_footer and ad_admin_footer now +display a link entitled Developer Information. (You can use +the ds_link procedure to generate the link yourself.) +Following the link displays a screenful of information +including:

In addition, the ClientDebug facility of AOLserver 2 has been +re-implemented in the abstract URL system (which serves nearly all +non-static pages). If an error occurs while serving a page, a stack +trace is printed out.

Note that these nifty features pop up only when you are logged +in as a site-wide administrator! Revealing this information to +anyone else would pose a huge security risk.

Comments

+Tired of using ns_log to instrument your code, then +grokking the error log to see what's wrong with your page? Use the +ds_comment routine instead: +
+ds_comment "Foo is $foo"
+
+Your comment will show up at the bottom of the page, beneath the +Developer Information link (but only for site-wide +administrators). It will also be displayed on the Developer +Information page itself. +

Comments are displayed even if an error occurs in the page!

Enabling It

+Add the following to your parameters/yourservername.ini +file: +
+[ns/server/yourservername/acs/developer-support]
+; remember information about connections, for developers' benefit?
+EnabledP=1
+; remember information about every database request?
+DatabaseEnabledP=1
+; remember information for which client hosts?
+EnabledIPs=*
+; remember this information for how long? sweep how often? (in seconds)
+DataLifetime=900
+DataSweepInterval=900
+
+Note that you may not want to enable this stuff for production +systems - they probably incur a slight performance hit (although +this hasn't been benchmarked). +

How It Works

+The security subsystem registers preauth and trace filters which +store relevant connection information in shared variables +(nsvs). The security subsystem also renames the AOLserver +ns_db procedure and registers a wrapper which aggregates +information about database queries. +
jsalz@mit.edu

Last Modified: $Id: index.html,v 1.1.1.1 2001/04/20 20:51:09 +donb Exp $

+