[PIPython] ottenere file e numero di linea per logging

Simone Piunno pioppo
Ven 19 Nov 2004 15:16:46 CET


Alle 12:11, domenica 20 giugno 2004, Lucriz ha scritto:

> cia a tutti
>
> devo scrivere una classe per alcune funzionalitą di logging
> particolari di cui ho bisogno.
> mi trovo nella necessitą di sapere il file č il numero di linea
> in cui i metodi che effettuano il log vengono chiamati,
> come posso fare?

Invece di reinventare la ruota potresti usare il modulo logging.
Da "pydoc logging":

class Formatter
 |  Formatter instances are used to convert a LogRecord to text.
 |
 |  Formatters need to know how a LogRecord is constructed. They are
 |  responsible for converting a LogRecord to (usually) a string which can
 |  be interpreted by either a human or an external system. The base Formatter
 |  allows a formatting string to be specified. If none is supplied, the
 |  default value of "%s(message)\n" is used.
 |
 |  The Formatter can be initialized with a format string which makes use of
 |  knowledge of the LogRecord attributes - e.g. the default value mentioned
 |  above makes use of the fact that the user's message and arguments are pre-
 |  formatted into a LogRecord's message attribute. Currently, the useful
 |  attributes in a LogRecord are described by:
 |
 |  %(name)s            Name of the logger (logging channel)
 |  %(levelno)s         Numeric logging level for the message (DEBUG, INFO,
 |                      WARNING, ERROR, CRITICAL)
 |  %(levelname)s       Text logging level for the message ("DEBUG", "INFO",
 |                      "WARNING", "ERROR", "CRITICAL")
 |  %(pathname)s        Full pathname of the source file where the logging
 |                      call was issued (if available)
 |  %(filename)s        Filename portion of pathname
 |  %(module)s          Module (name portion of filename)
 |  %(lineno)d          Source line number where the logging call was issued
 |                      (if available)
 |  %(created)f         Time when the LogRecord was created (time.time()
 |                      return value)
 |  %(asctime)s         Textual time when the LogRecord was created
 |  %(msecs)d           Millisecond portion of the creation time
 |  %(relativeCreated)d Time in milliseconds when the LogRecord was created,
 |                      relative to the time the logging module was loaded
 |                      (typically at application startup time)
 |  %(thread)d          Thread ID (if available)
 |  %(process)d         Process ID (if available)
 |  %(message)s         The result of record.getMessage(), computed just as
 |                      the record is emitted


-- 
This signature intentionally left blank



More information about the Python mailing list