<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comentarios en: Clase de Logs para PHP</title>
	<atom:link href="http://luauf.com/2009/06/16/clase-de-logs-para-php/feed/" rel="self" type="application/rss+xml" />
	<link>http://luauf.com/2009/06/16/clase-de-logs-para-php/</link>
	<description></description>
	<lastBuildDate>Sun, 14 Mar 2010 22:06:04 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Por: cce</title>
		<link>http://luauf.com/2009/06/16/clase-de-logs-para-php/comment-page-1/#comment-7200</link>
		<dc:creator>cce</dc:creator>
		<pubDate>Tue, 02 Mar 2010 14:27:02 +0000</pubDate>
		<guid isPermaLink="false">http://luauf.com/?p=1048#comment-7200</guid>
		<description>En caso de implementar este tipo de logging, y si se presenta que varios usuarios se conectan en forma simultanea, como se realiza el logging?...tendra problemas en grabar el archivo de texto?...como hacer que todos puedan acceder sin que se pierda informacion?.....

convendria utilizar la misma base de datos para hacer una registro de logeo?

Saludos.-</description>
		<content:encoded><![CDATA[<p>En caso de implementar este tipo de logging, y si se presenta que varios usuarios se conectan en forma simultanea, como se realiza el logging?&#8230;tendra problemas en grabar el archivo de texto?&#8230;como hacer que todos puedan acceder sin que se pierda informacion?&#8230;..</p>
<p>convendria utilizar la misma base de datos para hacer una registro de logeo?</p>
<p>Saludos.-</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Rubén</title>
		<link>http://luauf.com/2009/06/16/clase-de-logs-para-php/comment-page-1/#comment-3361</link>
		<dc:creator>Rubén</dc:creator>
		<pubDate>Wed, 17 Jun 2009 12:59:39 +0000</pubDate>
		<guid isPermaLink="false">http://luauf.com/?p=1048#comment-3361</guid>
		<description>Hombre, la clase está bien para el propósito que tiene, un logger sencillito, pero lo más adecuado sería poder tener distintos niveles de prioridad para reducir o ampliar el nivel de logging según sea necesario, incluso poder desactivarlo completamente sin tener que tocar el código.

Yo tengo mi propia versión haciendo uso de Zend_Log que es muchisimo más flexible:
http://framework.zend.com/manual/en/zend.log.html 

Recomendado 100%</description>
		<content:encoded><![CDATA[<p>Hombre, la clase está bien para el propósito que tiene, un logger sencillito, pero lo más adecuado sería poder tener distintos niveles de prioridad para reducir o ampliar el nivel de logging según sea necesario, incluso poder desactivarlo completamente sin tener que tocar el código.</p>
<p>Yo tengo mi propia versión haciendo uso de Zend_Log que es muchisimo más flexible:<br />
<a href="http://framework.zend.com/manual/en/zend.log.html" rel="nofollow">http://framework.zend.com/manual/en/zend.log.html</a> </p>
<p>Recomendado 100%</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Bline</title>
		<link>http://luauf.com/2009/06/16/clase-de-logs-para-php/comment-page-1/#comment-3318</link>
		<dc:creator>Bline</dc:creator>
		<pubDate>Tue, 16 Jun 2009 11:14:47 +0000</pubDate>
		<guid isPermaLink="false">http://luauf.com/?p=1048#comment-3318</guid>
		<description>Bastante curioso, yo en un cms que estoy elaborando tengo algo parecido, quizas no tan completo pero si con mas informacion:

Es una mera funcion contenida por una clase que se encarga de realizar una traza hasta el lugar donde ha fallado el script aportando quizas un exceso de informacion pero que puede ayudar a debugear.

      //----------------------------------------------------------------
      // Funcion: lanzar_error
      // Ambito: Privado
      // Simplemente lanza un error con el mensaje indicado
      
         private function lanzar_error( $mensaje ){
            if ( true ){
               throw new Exception( $mensaje , $errorn );
            }
         }
 
      //----------------------------------------------------------------
      // Funcion: error
      // Ambito: Publico
      // Realiza una traza inversa desde donde se produjo el error hasta
      // el fichero fuente de inclusión para realizar un mejor depurado.
      
      public function error( $m ){

         global $error;

         try {
            $this-&gt;lanzar_error($m,$n);

         } catch ( Exception $e ) {
            
            $traza = $e-&gt;getTrace();
            foreach( $traza as $num =&gt; $t ){
            echo &#039;
            [+/-] Traza #&#039;,$num,&#039;&#039;;
               echo &#039;&lt;b&gt;Mensaje : &lt;/b&gt;&#039;,$m,&#039;&#039;;
               foreach( $t as $etiqueta =&gt; $mensaje ){
                  if (!is_array($mensaje)){
                     if ( $mensaje != &#039;-&gt;&#039; ){
                        echo &#039;&lt;b&gt;&#039;,$etiqueta,&#039;&lt;/b&gt; : &#039;,$mensaje,&#039;&#039;;
                     }
                  }else{
                     if ( $mensaje != &#039;-&gt;&#039; ){
                        echo &#039;&lt;b&gt;&#039;,$etiqueta,&#039;&lt;/b&gt; : &#039;;
                        print_r($mensaje);
                        echo &#039;&#039;;
                     }
                  }
               }
               echo &#039;&#039;;
            }
            
            exit();
    
         }
      
      } // Fin funcion error</description>
		<content:encoded><![CDATA[<p>Bastante curioso, yo en un cms que estoy elaborando tengo algo parecido, quizas no tan completo pero si con mas informacion:</p>
<p>Es una mera funcion contenida por una clase que se encarga de realizar una traza hasta el lugar donde ha fallado el script aportando quizas un exceso de informacion pero que puede ayudar a debugear.</p>
<p>      //&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
      // Funcion: lanzar_error<br />
      // Ambito: Privado<br />
      // Simplemente lanza un error con el mensaje indicado</p>
<p>         private function lanzar_error( $mensaje ){<br />
            if ( true ){<br />
               throw new Exception( $mensaje , $errorn );<br />
            }<br />
         }</p>
<p>      //&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
      // Funcion: error<br />
      // Ambito: Publico<br />
      // Realiza una traza inversa desde donde se produjo el error hasta<br />
      // el fichero fuente de inclusión para realizar un mejor depurado.</p>
<p>      public function error( $m ){</p>
<p>         global $error;</p>
<p>         try {<br />
            $this-&gt;lanzar_error($m,$n);</p>
<p>         } catch ( Exception $e ) {</p>
<p>            $traza = $e-&gt;getTrace();<br />
            foreach( $traza as $num =&gt; $t ){<br />
            echo &#8216;<br />
            [+/-] Traza #&#8217;,$num,&#8221;;<br />
               echo &#8216;<b>Mensaje : </b>&#8216;,$m,&#8221;;<br />
               foreach( $t as $etiqueta =&gt; $mensaje ){<br />
                  if (!is_array($mensaje)){<br />
                     if ( $mensaje != &#8216;-&gt;&#8217; ){<br />
                        echo &#8216;<b>&#8216;,$etiqueta,&#8217;</b> : &#8216;,$mensaje,&#8221;;<br />
                     }<br />
                  }else{<br />
                     if ( $mensaje != &#8216;-&gt;&#8217; ){<br />
                        echo &#8216;<b>&#8216;,$etiqueta,&#8217;</b> : &#8216;;<br />
                        print_r($mensaje);<br />
                        echo &#8221;;<br />
                     }<br />
                  }<br />
               }<br />
               echo &#8221;;<br />
            }</p>
<p>            exit();</p>
<p>         }</p>
<p>      } // Fin funcion error</p>
]]></content:encoded>
	</item>
</channel>
</rss>
