Arcane  v3.16.0.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::ITraceMngabstract

Interface du gestionnaire de traces. Plus de détails...

#include <arccore/trace/ITraceMng.h>

Fonctions membres publiques

virtual TraceMessage error ()=0
 Flot pour un message d'erreur.
 
virtual TraceMessage perror ()=0
 Flot pour un message d'erreur parallèle.
 
virtual TraceMessage fatal ()=0
 Flot pour un message d'erreur fatale.
 
virtual TraceMessage pfatal ()=0
 Flot pour un message d'erreur fatale parallèle.
 
virtual TraceMessage warning ()=0
 Flot pour un message d'avertissement.
 
virtual TraceMessage pwarning ()=0
 Flot pour un message d'avertissement parallèle.
 
virtual TraceMessage info ()=0
 Flot pour un message d'information.
 
virtual TraceMessage pinfo ()=0
 Flot pour un message d'information parallèle.
 
virtual TraceMessage info (char category)=0
 Flot pour un message d'information d'une catégorie donnée.
 
virtual TraceMessage info (Int32 level)=0
 Flot pour un message d'information d'un niveau donné
 
virtual TraceMessage pinfo (char category)=0
 Flot pour un message d'information parallèle d'une catégorie donnée.
 
virtual TraceMessage info (bool)=0
 Flot pour un message d'information conditionnel.
 
virtual TraceMessage log ()=0
 Flot pour un message de log.
 
virtual TraceMessage plog ()=0
 Flot pour un message de log parallèle.
 
virtual TraceMessage logdate ()=0
 Flot pour un message de log précédé de l'heure.
 
virtual TraceMessageDbg debug (Trace::eDebugLevel=Trace::Medium)=0
 Flot pour un message de debug.
 
virtual TraceMessage devNull ()=0
 Flot pour un message non utilisé
 
virtual ARCCORE_DEPRECATED_2018 bool setActivated (bool v)
 
virtual bool setInfoActivated (bool v)=0
 Modifie l'état d'activation des messages d'info.
 
virtual bool isInfoActivated () const =0
 Indique si les sorties des messages d'informations sont activées.
 
virtual void finishInitialize ()=0
 Termine l'initialisation.
 
virtual void pushTraceClass (const String &name)=0
 Ajoute la classe s à la pile des classes de messages actifs. \threadsafe.
 
virtual void popTraceClass ()=0
 Supprime la dernière classe de message de la pile. \threadsafe.
 
virtual void flush ()=0
 Flush tous les flots.
 
virtual ARCCORE_DEPRECATED_2018 void setRedirectStream (std::ostream *o)=0
 Redirige tous les messages sur le flot o.
 
virtual void setRedirectStream (ITraceStream *o)=0
 Redirige tous les messages sur le flot o.
 
virtual Trace::eDebugLevel configDbgLevel () const =0
 Retourne le niveau dbg du fichier de configuration.
 
virtual void addListener (ITraceMessageListener *v)=0
 Ajoute l'observateur v à ce gestionnaire de message.
 
virtual void removeListener (ITraceMessageListener *v)=0
 Supprime l'observateur v de ce gestionnaire de message.
 
virtual void setTraceId (const String &id)=0
 Positionne l'identifiant du gestionnnaire.
 
virtual const StringtraceId () const =0
 Identifiant du gestionnnaire.
 
virtual void setErrorFileName (const String &file_name)=0
 Positionne le nom du fichier d'erreur à file_name.
 
virtual void setLogFileName (const String &file_name)=0
 Positionne le nom du fichier de log à file_name.
 
virtual void beginTrace (const TraceMessage *message)=0
 Signale un début d'écriture du message message.
 
virtual void endTrace (const TraceMessage *message)=0
 Signale une fin d'écriture du message message.
 
virtual void putTrace (const String &message, int type)=0
 Envoie directement un message de type type.
 
virtual void setClassConfig (const String &name, const TraceClassConfig &config)=0
 Positionne la configuration pour la classe de message name.
 
virtual TraceClassConfig classConfig (const String &name) const =0
 Configuration associées à la classe de message name.
 
virtual void setMaster (bool is_master)=0
 Positionne l'état 'maitre' de l'instance.
 
virtual bool isMaster () const =0
 
virtual void setVerbosityLevel (Int32 level)=0
 Positionne le niveau de verbosité des sorties.
 
virtual Int32 verbosityLevel () const =0
 Niveau de verbosité des messages.
 
virtual void setStandardOutputVerbosityLevel (Int32 level)=0
 Positionne le niveau de verbosité des sorties sur std::cout.
 
virtual Int32 standardOutputVerbosityLevel () const =0
 Niveau de verbosité des messages sur std::cout.
 
virtual void resetThreadStatus ()=0
 
virtual void writeDirect (const TraceMessage *msg, const String &str)=0
 Écrit directement un message.
 
virtual void removeAllClassConfig ()=0
 Supprime toutes les classes de configuration positionnées via setClassConfig().
 
virtual void visitClassConfigs (IFunctorWithArgumentT< std::pair< String, TraceClassConfig > > *functor)=0
 
void fatalMessage (const StandaloneTraceMessage &o)
 Effectue un fatal() sur un message déjà fabriqué.
 

Description détaillée

Interface du gestionnaire de traces.

Une instance de cette classe gère les flots de traces. Pour envoyer un message, il suffit d'appeler la méthode corrrespondante (info() pour un message d'information, error() pour une erreur, ...) pour récupérer un flot et d'utiliser l'opérateur << sur ce flot pour transmettre un message.

Par exemple:

ITraceMng* tr = ...;
tr->info() << "Ceci est une information.";
int proc_id = 0;
tr->error() << "Erreur sur le processeur " << proc_id;
Interface du gestionnaire de traces.
virtual TraceMessage error()=0
Flot pour un message d'erreur.
virtual TraceMessage info()=0
Flot pour un message d'information.

Le message est envoyé lors de la destruction du flot. Dans les exemples précédents, les flots sont temporairement créés (par la méthode info()) et détruits dès que l'opérateur << a été appliqué dessus.

Avertissement
Il faut absolument appeler la méthode finishInitialize() avant d'utiliser les appels aux méthodes pushTraceClass() et popTraceClass().

Si on souhaite envoyer un message en plusieurs fois, il faut stocker le flot retourné:

TraceMessage info = m_trace_mng->info();
info() << "Début de l'information.\n"
info() << "Fin de l'information.";

Il est possible d'utiliser des formatteurs simples sur les messages (via la classe TraceMessage) ou des formatteurs standards des iostream en appliquant l'opérateur operator() de TraceMessage.

Les instances de cette classe sont gérées par compteur de référence. Il est préférable de conserver les instances dans un ReferenceCounter.

Définition à la ligne 155 du fichier arccore/src/trace/arccore/trace/ITraceMng.h.

Documentation des fonctions membres

◆ addListener()

virtual void Arcane::ITraceMng::addListener ( ITraceMessageListener * v)
pure virtual

Ajoute l'observateur v à ce gestionnaire de message.

L'appelant reste propriétaire de v et doit l'enlever via removeListener() avant de le détruire.

Implémenté dans Arcane::TraceMng.

◆ beginTrace()

virtual void Arcane::ITraceMng::beginTrace ( const TraceMessage * message)
pure virtual

Signale un début d'écriture du message message.

Implémenté dans Arcane::TraceMng.

◆ classConfig()

virtual TraceClassConfig Arcane::ITraceMng::classConfig ( const String & name) const
pure virtual

Configuration associées à la classe de message name.

Implémenté dans Arcane::TraceMng.

◆ configDbgLevel()

virtual Trace::eDebugLevel Arcane::ITraceMng::configDbgLevel ( ) const
pure virtual

Retourne le niveau dbg du fichier de configuration.

Implémenté dans Arcane::TraceMng.

◆ debug()

◆ devNull()

virtual TraceMessage Arcane::ITraceMng::devNull ( )
pure virtual

Flot pour un message non utilisé

Implémenté dans Arcane::TraceMng.

◆ endTrace()

virtual void Arcane::ITraceMng::endTrace ( const TraceMessage * message)
pure virtual

Signale une fin d'écriture du message message.

Implémenté dans Arcane::TraceMng.

◆ error()

virtual TraceMessage Arcane::ITraceMng::error ( )
pure virtual

◆ fatal()

◆ fatalMessage()

void Arcane::ITraceMng::fatalMessage ( const StandaloneTraceMessage & o)

Effectue un fatal() sur un message déjà fabriqué.

Cette méthode permet d'écrire un code équivalent à:

fatal() << "MyMessage";
virtual TraceMessage fatal()=0
Flot pour un message d'erreur fatale.

comme ceci:

void fatalMessage(const StandaloneTraceMessage &o)
Effectue un fatal() sur un message déjà fabriqué.
Gestion d'un message autonome.

Cette deuxième solution permet de signaler au compilateur que la méthode ne retournera pas et ainsi d'éviter certains avertissements de compilation.

Définition à la ligne 1314 du fichier arccore/src/trace/arccore/trace/TraceMng.cc.

Référencé par visitClassConfigs().

◆ finishInitialize()

virtual void Arcane::ITraceMng::finishInitialize ( )
pure virtual

Termine l'initialisation.

Implémenté dans Arcane::TraceMng.

◆ flush()

virtual void Arcane::ITraceMng::flush ( )
pure virtual

Flush tous les flots.

Implémenté dans Arcane::TraceMng.

◆ info() [1/4]

◆ info() [2/4]

virtual TraceMessage Arcane::ITraceMng::info ( bool )
pure virtual

Flot pour un message d'information conditionnel.

Implémenté dans Arcane::TraceMng.

◆ info() [3/4]

virtual TraceMessage Arcane::ITraceMng::info ( char category)
pure virtual

Flot pour un message d'information d'une catégorie donnée.

Implémenté dans Arcane::TraceMng.

◆ info() [4/4]

virtual TraceMessage Arcane::ITraceMng::info ( Int32 level)
pure virtual

Flot pour un message d'information d'un niveau donné

Implémenté dans Arcane::TraceMng.

◆ isInfoActivated()

virtual bool Arcane::ITraceMng::isInfoActivated ( ) const
pure virtual

Indique si les sorties des messages d'informations sont activées.

Implémenté dans Arcane::TraceMng.

◆ log()

virtual TraceMessage Arcane::ITraceMng::log ( )
pure virtual

Flot pour un message de log.

Implémenté dans Arcane::TraceMng.

◆ logdate()

virtual TraceMessage Arcane::ITraceMng::logdate ( )
pure virtual

Flot pour un message de log précédé de l'heure.

Implémenté dans Arcane::TraceMng.

◆ perror()

virtual TraceMessage Arcane::ITraceMng::perror ( )
pure virtual

Flot pour un message d'erreur parallèle.

Implémenté dans Arcane::TraceMng.

◆ pfatal()

virtual TraceMessage Arcane::ITraceMng::pfatal ( )
pure virtual

Flot pour un message d'erreur fatale parallèle.

Implémenté dans Arcane::TraceMng.

◆ pinfo() [1/2]

virtual TraceMessage Arcane::ITraceMng::pinfo ( )
pure virtual

Flot pour un message d'information parallèle.

Implémenté dans Arcane::TraceMng.

Référencé par Arcane::Array2VariableT< DataType >::setIsSynchronized().

◆ pinfo() [2/2]

virtual TraceMessage Arcane::ITraceMng::pinfo ( char category)
pure virtual

Flot pour un message d'information parallèle d'une catégorie donnée.

Implémenté dans Arcane::TraceMng.

◆ plog()

virtual TraceMessage Arcane::ITraceMng::plog ( )
pure virtual

Flot pour un message de log parallèle.

Implémenté dans Arcane::TraceMng.

◆ popTraceClass()

virtual void Arcane::ITraceMng::popTraceClass ( )
pure virtual

Supprime la dernière classe de message de la pile. \threadsafe.

Implémenté dans Arcane::TraceMng.

◆ pushTraceClass()

virtual void Arcane::ITraceMng::pushTraceClass ( const String & name)
pure virtual

Ajoute la classe s à la pile des classes de messages actifs. \threadsafe.

Implémenté dans Arcane::TraceMng.

◆ putTrace()

virtual void Arcane::ITraceMng::putTrace ( const String & message,
int type )
pure virtual

Envoie directement un message de type type.

type doit correspondre à Trace::eMessageType. Cette méthode ne doit être utilisée que par le wrapping .NET.

Implémenté dans Arcane::TraceMng.

◆ pwarning()

virtual TraceMessage Arcane::ITraceMng::pwarning ( )
pure virtual

Flot pour un message d'avertissement parallèle.

Implémenté dans Arcane::TraceMng.

Référencé par Arcane::Hdf5VariableInfoBase::writeGroup().

◆ removeAllClassConfig()

virtual void Arcane::ITraceMng::removeAllClassConfig ( )
pure virtual

Supprime toutes les classes de configuration positionnées via setClassConfig().

Implémenté dans Arcane::TraceMng.

◆ removeListener()

virtual void Arcane::ITraceMng::removeListener ( ITraceMessageListener * v)
pure virtual

Supprime l'observateur v de ce gestionnaire de message.

Implémenté dans Arcane::TraceMng.

◆ setActivated()

virtual ARCCORE_DEPRECATED_2018 bool Arcane::ITraceMng::setActivated ( bool v)
inlinevirtual
Obsolète
Utiliser setInfoActivated() à la place

Définition à la ligne 197 du fichier arccore/src/trace/arccore/trace/ITraceMng.h.

Références setInfoActivated().

◆ setClassConfig()

virtual void Arcane::ITraceMng::setClassConfig ( const String & name,
const TraceClassConfig & config )
pure virtual

Positionne la configuration pour la classe de message name.

Implémenté dans Arcane::TraceMng.

◆ setErrorFileName()

virtual void Arcane::ITraceMng::setErrorFileName ( const String & file_name)
pure virtual

Positionne le nom du fichier d'erreur à file_name.

Si un fichier d'erreur est déjà ouvert, il est refermé et un nouveau avec ce nouveau nom de fichier sera créé lors de la prochaine erreur.

Si file_name est la chaîne nulle, aucun fichier d'erreur n'est utilisé.

Implémenté dans Arcane::TraceMng.

◆ setInfoActivated()

virtual bool Arcane::ITraceMng::setInfoActivated ( bool v)
pure virtual

Modifie l'état d'activation des messages d'info.

Renvoie
l'ancien état d'activation.

Implémenté dans Arcane::TraceMng.

Référencé par setActivated().

◆ setLogFileName()

virtual void Arcane::ITraceMng::setLogFileName ( const String & file_name)
pure virtual

Positionne le nom du fichier de log à file_name.

Si un fichier de log est déjà ouvert, il est refermé et un nouveau avec ce nouveau nom de fichier sera créé lors du prochaine log.

Si file_name est la chaîne nulle, aucun fichier de log n'est utilisé.

Implémenté dans Arcane::TraceMng.

◆ setMaster()

virtual void Arcane::ITraceMng::setMaster ( bool is_master)
pure virtual

Positionne l'état 'maitre' de l'instance.

Les instances qui ont cet attribut à true affichent les messages sur les std::cout ainsi que les messages perror() et pwarning(). Il est donc préférable qu'il n'y ait qu'une seule instance de ITraceMng maître.

Implémenté dans Arcane::TraceMng.

◆ setRedirectStream() [1/2]

virtual void Arcane::ITraceMng::setRedirectStream ( ITraceStream * o)
pure virtual

Redirige tous les messages sur le flot o.

Implémenté dans Arcane::TraceMng.

◆ setRedirectStream() [2/2]

virtual ARCCORE_DEPRECATED_2018 void Arcane::ITraceMng::setRedirectStream ( std::ostream * o)
pure virtual

Redirige tous les messages sur le flot o.

Obsolète
Utiliser la surcharge setRedirectStream(ITraceStream*).

Implémenté dans Arcane::TraceMng.

◆ setStandardOutputVerbosityLevel()

virtual void Arcane::ITraceMng::setStandardOutputVerbosityLevel ( Int32 level)
pure virtual

Positionne le niveau de verbosité des sorties sur std::cout.

Cette propriété n'est utilisée que si isMaster() est vrai et qu'on a redirigé les sorties listings. Sinon, c'est la propriété verbosityLevel() qui est utilisée.

Implémenté dans Arcane::TraceMng.

◆ setTraceId()

virtual void Arcane::ITraceMng::setTraceId ( const String & id)
pure virtual

Positionne l'identifiant du gestionnnaire.

Si non nul, l'identifiant est affiché en cas d'erreur pour identifier l'instance qui affiche le message. L'identifiant peut être quelconque. Par défaut, il s'agit du rang du processus et du nom de la machine.

Implémenté dans Arcane::TraceMng.

◆ setVerbosityLevel()

virtual void Arcane::ITraceMng::setVerbosityLevel ( Int32 level)
pure virtual

Positionne le niveau de verbosité des sorties.

Les messages de niveau supérieur à ce niveau ne sont pas sortis. Le niveau utilisé est celui donné en argument de info(Int32). Le niveau par défaut est celui donné par TraceMessage::DEFAULT_LEVEL.

Implémenté dans Arcane::TraceMng.

◆ standardOutputVerbosityLevel()

virtual Int32 Arcane::ITraceMng::standardOutputVerbosityLevel ( ) const
pure virtual

Niveau de verbosité des messages sur std::cout.

Implémenté dans Arcane::TraceMng.

◆ traceId()

virtual const String & Arcane::ITraceMng::traceId ( ) const
pure virtual

Identifiant du gestionnnaire.

Implémenté dans Arcane::TraceMng.

◆ verbosityLevel()

virtual Int32 Arcane::ITraceMng::verbosityLevel ( ) const
pure virtual

Niveau de verbosité des messages.

Implémenté dans Arcane::TraceMng.

◆ visitClassConfigs()

virtual void Arcane::ITraceMng::visitClassConfigs ( IFunctorWithArgumentT< std::pair< String, TraceClassConfig > > * functor)
pure virtual

\biref Applique le fonctor functor sur l'ensemble des TraceClassConfig enregistrés.

Le premier argument de la paire est le nom de classe de configuration et le deuxième sa valeur telle que retournée par classConfig().

Il est permis de modifier le TraceClassConfig en cours de visite via un appel à setClassConfig().

Implémenté dans Arcane::TraceMng.

Références fatalMessage().

◆ warning()

virtual TraceMessage Arcane::ITraceMng::warning ( )
pure virtual

Flot pour un message d'avertissement.

Implémenté dans Arcane::TraceMng.

Référencé par Arcane::LimaMeshWriter::writeMeshToFile().

◆ writeDirect()

virtual void Arcane::ITraceMng::writeDirect ( const TraceMessage * msg,
const String & str )
pure virtual

Écrit directement un message.

Ecrit directement le message msg contenant la chaîne buf_array. Le message n'est pas analysé par l'instance et est toujours écrit sans aucun formattage spécifique. Cette opération ne doit en principe être utilisée que par un ITraceMessageListener. Pour les autres cas, il faut utiliser les traces standards.

Implémenté dans Arcane::TraceMng.


La documentation de cette classe a été générée à partir des fichiers suivants :