From 4dc9d1a481417bb78606996fa75c791bb646f44f Mon Sep 17 00:00:00 2001 From: winter Date: Sat, 14 Dec 2024 16:26:30 +0000 Subject: job queue and workers and loggers! --- Digitigrade/Logger.php | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 Digitigrade/Logger.php (limited to 'Digitigrade/Logger.php') diff --git a/Digitigrade/Logger.php b/Digitigrade/Logger.php new file mode 100644 index 0000000..2a87c21 --- /dev/null +++ b/Digitigrade/Logger.php @@ -0,0 +1,52 @@ +minLevel = $level; + } + + private function log(string $message, int $level) { + if ($level < $this->minLevel) + return; + $timestamp = (new \DateTimeImmutable())->format(self::TIME_FORMAT);# + $levelName = match ($level) { + self::LEVEL_DEBUG => 'DBG', + self::LEVEL_INFO => 'INF', + self::LEVEL_WARNING => 'WRN', + self::LEVEL_ERROR => 'ERR', + default => '???' + }; + + // TODO: don't hardcode this method + error_log("[$timestamp] $levelName: $message"); + } + + public function debug(string $message) { + $this->log($message, self::LEVEL_DEBUG); + } + + public function info(string $message) { + $this->log($message, self::LEVEL_INFO); + } + + public function warning(string $message) { + $this->log($message, self::LEVEL_WARNING); + } + + public function error(string $message) { + $this->log($message, self::LEVEL_ERROR); + } +} \ No newline at end of file -- cgit v1.3