Logger.php 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <?php
  2. namespace App\Services;
  3. use App\Models\Log;
  4. use Monolog\Handler\StreamHandler;
  5. use Monolog\Logger as MonoLogger;
  6. class Logger
  7. {
  8. /**
  9. * @return MonoLogger
  10. */
  11. public static function logger()
  12. {
  13. $logger = new MonoLogger('ss-panel v3');
  14. $fileHandler = new StreamHandler(BASE_PATH . '/storage/logs/app.log');
  15. $logger->pushHandler($fileHandler);
  16. return $logger;
  17. }
  18. public static function newDbLog($type, $msg)
  19. {
  20. $log = new Log();
  21. $log->type = $type;
  22. $log->msg = $msg;
  23. $log->created_time = time();
  24. return $log->save();
  25. }
  26. /**
  27. * @param $msg
  28. * @return bool
  29. */
  30. public static function info($msg)
  31. {
  32. return self::logger()->info($msg);
  33. }
  34. /**
  35. * @param $msg
  36. * @return bool
  37. */
  38. public static function error($msg)
  39. {
  40. return self::logger()->err($msg);
  41. }
  42. /**
  43. * @param $msg
  44. * @return bool
  45. */
  46. public static function debug($msg)
  47. {
  48. return self::logger()->debug($msg);
  49. }
  50. /**
  51. * @param $msg
  52. * @return bool
  53. */
  54. public static function warning($msg)
  55. {
  56. return self::logger()->warning($msg);
  57. }
  58. }