TFCweb  1.0.4 $Rev: 483 $
TFC Primavera 2012: Nucli d'un servidor web
Mètodes públics | Mètodes Públics Estàtics | Mètodes Protegits | Mètodes Protegits Estàtics | Mètodes Privats | Atributs Privats | Llista de tots els membres
Referència de la Classe Log

Interfície de control de Logging. Més...

#include <Log.h>

Mètodes públics

void associa (std::ostream &os, NivellLog n=NIVELL_PER_DEFECTE_LOG)
 Afegeix os com a destí de logging.
void associa (const boost::filesystem::path &f, NivellLog n=NIVELL_PER_DEFECTE_LOG) throw (ErrorLogNoValid)
 Afegeix el fitxer f com a destí de logging.
void desassocia (std::ostream &os)
 Elimina os de la llista de destins.
void imprimeix (const MissatgeLog &ml)
 Impressió d'un missatge.
NivellLog nivell_sortida (const std::ostream &d) const throw (ErrorDestiNoAssociat)
 Obté el nivell actual de sortida de logging associat a d.
NivellLog nivell_sortida (const boost::filesystem::path &d) const throw (ErrorDestiNoAssociat)
 Obté el nivell actual de sortida de logging associat a d.
void nivell_sortida (const std::ostream &d, NivellLog nn) throw (ErrorDestiNoAssociat)
 Canvia el nivell actual de sortida de logging del destí d.
void nivell_sortida (const boost::filesystem::path &d, NivellLog nn) throw (ErrorDestiNoAssociat)
 
void nivell_sortida (NivellLog nn)
 Canvia el nivell actual de sortida de logging de tots els destins.

Mètodes Públics Estàtics

static Logsingleton ()
 Interfície cap a la única instància.

Mètodes Protegits

 Log ()

Mètodes Protegits Estàtics

static std::string marca_de_temps ()
 Marca de text formatada.

Mètodes Privats

 Log (const Log &l)
 Constructor de còpia, esborrat.
Logoperator= (const Log &)
 Operador d'assignació, esborrat.

Atributs Privats

std::vector< std::shared_ptr
< DestiLogging > > 
destins_
 Destins associats al Log.

Descripció Detallada

Interfície de control de Logging.

Remarca
Aquesta classe no es pot instanciar directament, fa servir el patró "Singleton"
Log pot tenir associats diferents destins, per defecte no en tè cap.

Exemple:

l.associa(std::cerr);
log() << "Linia de logging #" << 1 << commit; // Envia a Log::singleton()

Produirà:

"[MARCA DE TEMPS] Linia de logging #1"
Per fer:
TODO: Implementar categories

Definició a la línia 279 del fitxer Log.h.

Documentació del Constructor i el Destructor

Log ( )
inlineprotected

Definició a la línia 343 del fitxer Log.h.

Log ( const Log l)
inlineprivate

Constructor de còpia, esborrat.

Definició a la línia 353 del fitxer Log.h.

Referències FITXER_I_LINIA_.

Documentació de les Funcions Membre

void associa ( std::ostream &  os,
NivellLog  n = NIVELL_PER_DEFECTE_LOG 
)

Afegeix os com a destí de logging.

Nota
Es poden definir múltiples destins de logging

Definició a la línia 177 del fitxer Log.cc.

Referenciat a BOOST_AUTO_TEST_CASE() i main().

void associa ( const boost::filesystem::path &  f,
NivellLog  n = NIVELL_PER_DEFECTE_LOG 
) throw (ErrorLogNoValid)

Afegeix el fitxer f com a destí de logging.

Remarca
El fitxer s'obrirà en mode d'annexió (append)
Precondició
!boost::filesystem::exists(p) || boost::filesystem::is_regular_file(p)
Excepcions
ErrorLogNoValidSi no es pot obrir f o no és un fitxer vàlid
void desassocia ( std::ostream &  os)

Elimina os de la llista de destins.

Remarca
Desassociar un destí que no s'ha associat no supossa un error
Per fer:
TODO: No implementat!

Definició a la línia 186 del fitxer Log.cc.

Referències FITXER_I_LINIA_.

void imprimeix ( const MissatgeLog ml)

Impressió d'un missatge.

Remarca
Cada missatge inclourà una marca de temps

Functor utilitzat per imprimir el buffer

Definició a la línia 246 del fitxer Log.cc.

Referències MissatgeLog::nivell(), tfc::nivell() i MissatgeLog::str().

string marca_de_temps ( )
staticprotected

Marca de text formatada.

Definició a la línia 235 del fitxer Log.cc.

Referències tfc::utils::formata_data().

NivellLog nivell_sortida ( const std::ostream &  d) const throw (ErrorDestiNoAssociat)

Obté el nivell actual de sortida de logging associat a d.

Els missatges marcats amb un nivell inferior s'ignoraran

Excepcions
ErrorDestiNoAssociatsi d no és un destí associat a aquest objecte

Definició a la línia 222 del fitxer Log.cc.

Referències tfc::nivell_sortida_i().

Referenciat a BOOST_AUTO_TEST_CASE().

NivellLog nivell_sortida ( const boost::filesystem::path &  d) const throw (ErrorDestiNoAssociat)

Obté el nivell actual de sortida de logging associat a d.

Els missatges marcats amb un nivell inferior s'ignoraran

Excepcions
ErrorDestiNoAssociatsi d no és un destí associat a aquest objecte

void nivell_sortida ( const std::ostream &  d,
NivellLog  nn 
) throw (ErrorDestiNoAssociat)

Canvia el nivell actual de sortida de logging del destí d.

Els missatges marcats amb un nivell inferior s'ignoraran

Excepcions
ErrorDestiNoAssociatsi d no és un destí associat a aquest objecte

Definició a la línia 214 del fitxer Log.cc.

Referències tfc::nivell_sortida_i().

void nivell_sortida ( const boost::filesystem::path &  d,
NivellLog  nn 
) throw (ErrorDestiNoAssociat)

void nivell_sortida ( NivellLog  nn)

Canvia el nivell actual de sortida de logging de tots els destins.

Definició a la línia 230 del fitxer Log.cc.

Log& operator= ( const Log )
inlineprivate

Operador d'assignació, esborrat.

Definició a la línia 356 del fitxer Log.h.

Referències FITXER_I_LINIA_.

Log & singleton ( )
static

Interfície cap a la única instància.

Definició a la línia 240 del fitxer Log.cc.

Referenciat a BOOST_AUTO_TEST_CASE() i main().

Documentació de les Dades Membre

std::vector< std::shared_ptr<DestiLogging> > destins_
private

Destins associats al Log.

Definició a la línia 361 del fitxer Log.h.


La documentació d'aquesta classe es va generar a partir dels següents fitxers: