Archiv verlassen und diese Seite im Standarddesign anzeigen : Logging innerhalb eines Bashscripts
TheDodger
02-11-2004, 07:12
Moin!
Vielleicht hat ja jemand schon etwas ähnliches gemacht ...
Ich suche eine Möglichkeit, innerhalb eines Bashscriptes ein logging der einzelnen Funktionen zu implementieren.
Die sollen allerding - parameterabhängig - in unterschiedliche Dateien wandern.
Ich möchte dazu aber nicht für jede Datei eine extra Funktion haben, sondern das alles möglichst in einer regeln.
Hat das schon mal jemand gemacht?
Hans-Georg Normann
03-11-2004, 18:38
Ich verstehe das nicht so ganz. Meinst du mit logging etwa die Ausgabe, wie sie mit
bash -xv deinscript ensteht?
Hans
RapidMax
03-11-2004, 20:33
Einzelne Logmeldungen können so ausgegeben werden:
LOG='script.log'
echo "Ich mach was"
echo "$0: was gemacht" >>$LOG
Für grössere Scripte verwende ich folgendes:
exec 3>script.log
echo "Ich mach was"
echo "$0: was gemacht" >&3
Soll in die Syslog geloggt werden: man logger
Gruss, Andy
TheDodger
04-11-2004, 15:33
Alles nicht richtig ...
Ich möchte pro Loglevel ( all | small | verysmall ) eine extra Logdatei anlegen, aber für das Loggen nur eine Funktion einsetzen.
RapidMax
28-11-2004, 17:46
#!/bin/bash
function log() {
level="$1"
shift
case "${level}" in
verysmall)
echo "`date -R`:" "$*" >>verysmall.log
;;
small)
echo "`date -R`:" "$*" >>small.log
;;
*)
echo "`date -R`:" "$*" >>all.log
;;
esac
}
log all Bla blabla
log all "Bla blabla"
log small "blub bli"
log verysmall "bli bla blub"
TheDodger
13-12-2004, 12:50
Genau, was ich suchte!
Ich hatte sowas in der Art auch schon probiert, aber das mit dem 'shift' fehlte bei mir ....
Powered by vBulletin® Version 4.2.5 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.