
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Logback: the generic, reliable, fast and flexible logging framework.". The branch, master has been updated via 191fe722b5ef50af18600d94f6dfaa23eaf510f5 (commit) from bb61e53367abe61a360118f4a43ca45390d06462 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- http://git.qos.ch/gitweb/?p=logback.git;a=commit;h=191fe722b5ef50af18600d94f... http://github.com/ceki/logback/commit/191fe722b5ef50af18600d94f6dfaa23eaf510... commit 191fe722b5ef50af18600d94f6dfaa23eaf510f5 Author: Ceki Gulcu <ceki@qos.ch> Date: Sun Nov 21 21:18:44 2010 +0100 ongoing edits diff --git a/logback-site/src/site/pages/recipes/emailPerTransaction.html b/logback-site/src/site/pages/recipes/emailPerTransaction.html index 05aa27b..89e275d 100644 --- a/logback-site/src/site/pages/recipes/emailPerTransaction.html +++ b/logback-site/src/site/pages/recipes/emailPerTransaction.html @@ -24,39 +24,39 @@ <h2>Triggering an email containing the isoloated logs of selected transactions</h2> - <p>Let Dave and Tata be software engineers working at a company - called Fooware.com. As you might have guessed, Fooware.com sells - foos. Yes, foos. Let <em>Buscrit</em> be a business critical - back-end system running at Fooware.com. Buscrit is called by a - number of applications to make business-critical transactions of - various types. + <p>Let Dave and Carol be software QA engineers working at a + company called Fooware.com. As you might have guessed, + Fooware.com sells foos. Yes, foos. Let <em>Buscrit</em> be a + business critical back-end system running at + Fooware.com. Buscrit is called by a number of applications to + make business-critical transactions of various types. </p> - <p>We would like to allow Tata, a QA-engineer, to access the - logging data generated by Buscrit as conveniently as - possible. Tata could access the log files directly on the server - where Buscrit runs. Let us assume that accessing the log files - is impractical because one or ore more of the following - conditions holds true: + <p>We would like to allow Carol to access the logging data + generated by Buscrit as conveniently as possible. Carol could + access the log files directly on the server where Buscrit + runs. Let us assume that accessing the log files is somehow + impractical because one or ore more of the following conditions + holds true: </p> <ol> <li>Buscrit runs on multiple hosts and it is difficult to identify the host where a particular transaction was executed</li> - <li>Tata does not (or does not wish to) have access to the + <li>Carol does not (or does not wish to) have access to the hosts where Byscrit runs </li> - <li>Buscrit is tested by multiple testers simultanesouly so - that it is hard to indetify and track an individual - transaction in the log files + <li>Buscrit is tested by multiple testers, e.g. Dave and Carol + and others, simultanesouly so that it is hard to indetify and + track an individual transaction in the log files </li> </ol> <p>Given the above circumstances, let us create a logback - configuration so that Tata receives an email message at the end + configuration so that Carol receives an email message at the end of every transaction. We will iteratively refine this - configuration so that Tata will receive an email containing the + configuration so that Carol will receive an email containing the logs of each transaction in isolation and only for the transactions she explicitly selects. </p> @@ -68,11 +68,13 @@ href="../manual/appenders.html#SMTPAppender">appropriate section of the manual</a> to familiarize yourself with <code>SMTPAppender</code> and its properties. - </p> + </p> - <p>The logback-demo project ships with a Struts action, namely - PrimeAction, which can factorize integers. Here is the pertinent - structure of the code:</p> + <p>The <a href="demo.html">logback-demo</a> project contains a + Struts action called <a + href="http://logback-demo.qos.ch/xref/ch/qos/logback/demo/prime/PrimeAction.html"><code>PrimeAction</code></a>. It + can factorize integers. Here is the pertinent structure of + <code>PrimeAction</code>'s code:</p> <pre class="prettyprint source">package ch.qos.logback.demo.prime; @@ -109,19 +111,19 @@ public class PrimeAction extends Action { <p>In a real world application, a transaction would involve systems external to the application, e.g. a database or a - messaging queue. For the sake of simplicity, let us consider + messaging queue. For the sake of this example, let us consider each factorization request as a <em>transaciton</em>. At the end of each factorization request, i.e. each transaction, the logger of the <code>PrimeAction</code> instance is invoked with the SMTP_TRIGGER marker and the message "Prime computation - ended". Thus, we can capitalize on this logging request to - clarly identify the end of every transaction in order to trigger - an outgoing message. + ended". We can capitalize on this logging request to clearly + identify the end of every transaction in order to trigger an + outgoing message. </p> - <p>Here is a configuration file which uses JaninoEventEvaluator - to trigger an outgoing email for logging event marked with - SMTP_TRIGGER. + <p>Here is a configuration file which uses + <code>JaninoEventEvaluator</code> to trigger an outgoing email + for logging event marked with SMTP_TRIGGER. </p> <pre class="prettyprint @@ -150,6 +152,8 @@ public class PrimeAction extends Action { </root> </configuration></pre> + + <h3>Transaction isolation</h3> ----------------------------------------------------------------------- Summary of changes: .../site/pages/recipes/emailPerTransaction.html | 62 ++++++++++--------- 1 files changed, 33 insertions(+), 29 deletions(-) hooks/post-receive -- Logback: the generic, reliable, fast and flexible logging framework.