feat(func): Write to journald
Function to write log entries to journald. Update writeLog steering function to use this new backend.
This commit is contained in:
@@ -136,6 +136,33 @@ translateLogLevelsToJournalD() {
|
||||
esac
|
||||
}
|
||||
|
||||
# $1: message, $2: level, $3: status, [$4: operation], [$5: code]
|
||||
writeJournalDLog() {
|
||||
# not enough information to generate a meaningful log message
|
||||
if [ -z "$1" ] || [ $# -lt 3 ]; then
|
||||
return
|
||||
fi
|
||||
|
||||
J_TIMESTAMP="$(getTimeStamp)"
|
||||
J_PID="$$"
|
||||
J_PRIO="$(translateLogLevelsToJournalD "$2")"
|
||||
J_STAT="$(uppercase "$3")"
|
||||
|
||||
logger --journald <<end
|
||||
SYSLOG_TIMESTAMP=${J_TIMESTAMP}
|
||||
SYSLOG_FACILITY=3
|
||||
SYSLOG_IDENTIFIER=${LOG_PROGRAM_NAME}
|
||||
SYSLOG_PID=${J_PID}
|
||||
PRIORITY=${J_PRIO}
|
||||
STATUS=${J_STAT}
|
||||
MESSAGE=$1
|
||||
OPERATION=${4:-UNSPECIFIED}
|
||||
ERRNO=${5:-0}
|
||||
end
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
# $1: message, $2: level, $3: status, [$4: operation], [$5: code]
|
||||
writeJsonLog() {
|
||||
# not enough information to generate a meaningful log message
|
||||
@@ -180,7 +207,7 @@ writeLog() {
|
||||
PT_LOG_LEVEL="$(standardizeLogLevels "$2")"
|
||||
([ "$logDebug" -eq 0 ] && [ "$PT_LOG_LEVEL" = "DEBUG" ]) && return
|
||||
|
||||
([ "$logToJournal" -eq 1 ]) && return # TODO: replace this with function when implemented
|
||||
([ "$logToJournal" -eq 1 ]) && writeJournalDLog "$@"
|
||||
([ "$useJsonLogFmt" -eq 1 ]) && writeJsonLog "$@"
|
||||
([ "$useSyslogLogFmt" -eq 1 ]) && writePlainTextLog "$@"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user