🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.os.linux.programacion
Article #6765

Re: Creación ràpida i sencilla de logs (orientación e ideas)

#6765
From: Pascal Bourguignon
Date: Sat, 10 May 2003 14:48
51 lines
2701 bytes
"CountZero" <mark@l3jane.net> writes:

> Estoy haciendo un programa en el que necesitar� crear logs, seguramente en
> diferentes ficheros  pero eso ya se ver�.
> 
> La idea que ten�a era hacer llamadas a write( fd, mensaje ), y configurar
> distintos fds seg�n algun par�metro o as�. El programa principal se
> encargar�a de redirigir los descriptores a un fichero.
> 
> Por ejemplo: Todas la llamadas escriben el mensaje de error en el fd 2
> (STDERR), el programa principal, a petici�n del usuario puede redirigir
> todo lo que se mande al STDERR a un fichero.
> 
> Mi(s) pregunta(s):
> 
> - Que llamada/funci�n deber�a de usar per redirigir los descriptores ?
> - Alguien se le ocurre alguna otra forma m�s sencilla i flexible ?
> 
> Gracias
> Salut
> Count.

�Has pensado usar syslog(3)?

Si  en  toda parte  del  programa usas  stderr  por  esos mensajes,  y
suponiendo que no tienes nada mas  que enviar al fd 2, puedes cerrarlo
y reabrirlo debajo de stdio.

O sino, puedes usar otro puntero:

    FILE* myerr=stderr;
    if(user_wants_err_in_a_file){
        myerr=fopen("errors.log","w+");
    }
    fprintf(myerr/*en lugar de stderr*/,...);
    fprintf(stderr,"eso no va al archivo, pero al stderr verdadero");

Pero no s�, me parece que por el usuario da igual hacer:

    pgm 2> error.log
que:
    pgm -e error.log





-- 
__Pascal_Bourguignon__                   http://www.informatimago.com/
----------------------------------------------------------------------
Do not adjust your mind, there is a fault in reality.
Technical Details
Message-ID: <87znluamd9.fsf@thalassa.informatimago.com>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!newsfeed.freenet.de!fu-berlin.de!uni-berlin.de!thalassa.informatimago.COM!not-for-mail
References: <pan.2003.05.10.09.57.08.27496@l3jane.net>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: f86c8,7601551dd0bddf69
X-Google-Attributes: gidf86c8,public
X-Google-ArrivalTime: 2003-05-10 07:48:37 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!newsfeed.freenet.de!fu-berlin.de!uni-berlin.de!thalassa.informatimago.COM!not-for-mail
From: Pascal Bourguignon <spam@thalassa.informatimago.com>
Newsgroups: es.comp.os.linux.programacion
Subject: Re: Creación ràpida i sencilla de logs
  (orientación e ideas)
Date: 10 May 2003 16:48:34 +0200
Organization: informatimago.com
Lines: 51
Message-ID: <87znluamd9.fsf@thalassa.informatimago.com>
References: <pan.2003.05.10.09.57.08.27496@l3jane.net>
NNTP-Posting-Host: thalassa.informatimago.com (195.114.85.198)
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: fu-berlin.de 1052578115 20965746 195.114.85.198 (16 [41911])
User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3.50