support\Log::error(‘错误信息’) 怎么触发一个事件或者一个订阅

Tinywan

问题描述

想通过 support\Log::error(‘错误信息’)记录错误日志来触发相关事件,目前没找到好的方案

243 1 0
1个回答

nitron

手动扩展?

  • Tinywan 2023-11-30

    目前没什么好的办法,求大佬指点

  • nitron 2023-11-30

    就是..继承一个然后覆写error

  • Tinywan 2023-11-30

    想复用官方的,能不覆写error不

  • nitron 2023-12-01

    把support\Log继承一个,修改__callStatic

        public static function __callStatic(string $name, array $arguments)
        {
            return static::channel()->{$name}(... $arguments);
        }
    

    把换成

        public static function __callStatic(string $name, array $arguments)
        {
            if ($name == 'error') {
                 // 触发事件..
            }
            return static::channel()->{$name}(... $arguments);
        }
    

    如何?

  • Tinywan 2023-12-01

    嗯嗯,目前就是这么处理的,感谢大佬

🔝