이 글에서는 주로 Yii2 프레임워크의 로그 사용을 소개하고 Yii1의 일반적인 방법과 관련 사용 기술을 비교합니다. 참고용으로 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.
Yii2와 Yii1의 차이점은
Yii::log($message, $level, $category); Yii::trace($message, $category);후자는 디버그 모드에서만 로그를 기록합니다. 여기서의 로그 방식은 YiiBase의 정적 방식입니다. Yii2에서는 객체지향 설계가 더욱 철저하게 구현되고, 로깅 기능이 Logger 클래스로 이전되며, 다중 출력 대상(Targets)이 지원됩니다.
Yii2에서 로그를 사용하는 방법
로그를 기록하려면 먼저 Logger 클래스의 단일 인스턴스를 얻은 다음 클래스의 공개 로깅 메서드를 호출해야 합니다.
Yii::getLogger()->log($msg, $level, $category)
예는 다음과 같습니다.
Yii::getLogger()->log(“your site has been hacked”, Logger::LEVEL_ERROR) //默认category为application即应用程序级别的日志
또한 Yii2는 몇 가지 단축키 방법을 제공합니다.
Yii::trace()
는 개발 및 디버깅 중에 로그를 기록하는 데 사용됩니다. true로 설정하세요.Yii::error()
복구할 수 없는 오류를 기록하는 데 사용됩니다
Yii::warning()
일부 경고 메시지Yii::info()
관리자 작업 등 일부 시스템 동작 기록 팁
Yii::trace()
用于开发调试时记录日志,需要把 YII_DEBUG 设置为 true.Yii::error()
用于记录不可恢复的错误Yii::warning()
一些警告信息Yii::info()
대상을 사용자 정의하려면, 예를 들어 복구할 수 없는 파일 기록과 이메일 전송을 동시에 원하는 경우 오류가 발생하면 다음과 같이 사용자 정의할 수 있습니다.
[ 'bootstrap' => ['log'], // ensure logger gets loaded before application starts 'components' => [ 'log' => [ 'targets' => [ 'file' => [ 'class' => 'yii\log\FileTarget', 'levels' => ['trace', 'info'], 'categories' => ['yii\*'], ], 'email' => [ 'class' => 'yii\log\EmailTarget', 'levels' => ['error', 'warning'], 'message' => [ 'to' => ['admin@techbrood.com', 'support@techbrood.com'], 'subject' => 'New example.com log message', ], ], ], ], ], ]
위 내용은 Yii2 프레임워크에서 로그를 활용하는 방법 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!