ThinkPHP6.0 버전의 로그 변경 사항
6.0의 로그 비유는 이전 버전에 비해 훨씬 개선되었습니다. 주요 새로운 기능은 다음과 같습니다.
·로그 정보 형식 지정
·다채널 쓰기 지원
· 지연/실시간 쓰기
·로그 정보 처리 이벤트
·로그 수준 지정 채널 쓰기
·로그/채널 닫기 지원
새 버전 변경 사항은 다중 채널 쓰기를 지원한다는 것입니다. 즉, 동시에 추가 로그 채널 쓰기를 추가할 수 있거나 일부 로그 유형에 대해 오류를 이메일 알림으로 보내도록 선택할 수 있습니다. 일부 비정상적인 로그.
기타 변경 사항은 주로 다음과 같습니다.
·WEB 로그와 CLI 로그가 병합되어 단일 형식으로 통합됩니다.
·액세스 정보는 더 이상 기본적으로 기록되지 않으며 직접 기록할 수 있습니다. 필요한 경우
· 독립적인 로그도 JSON 형식 기록을 지원합니다.
로그의 관련 구성은 config/log.php 파일에서 설정할 수 있습니다. 이 문서에서는 주로 새 버전의 변경 사항을 설명합니다. 통나무.
로그 채널
로그 채널의 개념은 로그 정보를 위한 로그 공간을 생성하는 것과 동일합니다. 각 로그 채널의 로그 정보는 독립적인 쓰기 메커니즘 또는 구성 매개변수를 사용합니다. 로그 정보를 사용하면 채널 쓰기를 동적으로 전환하고 동시에 여러 로그 채널에 기록되는 동일한 로그 정보를 지원할 수도 있습니다.
로그 구성 파일의 채널 구성에서 채널을 정의할 수 있습니다. 기본적으로 파일 채널은 하나만 정의됩니다.
// 日志通道列表 'channels' => [ 'file' => [ // 日志记录方式 'type' => 'File', // 日志保存目录 'path' => '', // 单文件日志写入 'single' => false, // 独立日志级别 'apart_level' => [], // 最大日志文件数量 'max_files' => 0, // 使用JSON格式记录 'json' => false, // 日志输出格式化 'format' => '[%s][%s] %s', // 是否实时写入 'realtime_write' => false, ], // 其它日志通道配置 ],
각 로그 채널은 로그 쓰기 방법을 결정하는 유형 매개변수를 지정해야 합니다. 파일은 파일 로그 쓰기를 의미합니다. 다른 쓰기 방법을 지정해야 하는 경우 추가 확장 프로그램을 설치해야 합니다. 그러나 다른 로그 채널에 대해 동일한 유형을 지정할 수도 있지만 다른 쓰기 경로와 같이 다른 구성 매개변수는 다릅니다.
어떤 로그 쓰기 유형을 사용하든 각 로그 채널이 지원할 수 있는 공통 구성은 다음과 같습니다.
레벨 매개변수의 사용법은 명령줄 모드를 제외하고 전역 로그 구성과 일치합니다. 기본 로그는 요청 후 한번만 기록되므로 실시간으로 로그 정보를 작성해야 하는 경우 설정해야 합니다.
'realtime_write'=>true,
명령줄 아래에 있으면 설정 여부에 관계없이 실시간으로 자동으로 로그가 기록됩니다.
기본 채널
기본 매개변수를 설정하여 로그의 기본 채널을 정의합니다. 예:
'default'=>'file',
레벨 채널
다른 로그 수준을 설정하고 다른 로그 채널을 사용할 수 있습니다.
'type_channel'=>[ // 对于error日志级别 同时写入file和email两个日志通道 'error'=>['file','email'], ]
레벨 채널을 설정한 후에는 해당 레벨의 로그가 기본 채널에 기록되지 않으니 주의하세요.
로그 채널은 로그 드라이버의 협조가 필요하며, 로그 드라이버를 맞춤 설정할 수도 있습니다.
채널 전환
현재 로그의 기본 쓰기 채널을 수동으로 전환할 수도 있습니다. 예:
Log::channel('email')->info('这是日志信息');
다중 채널 기록을 사용하도록 전환 지원. 예:
Log::channel(['email', 'file'])->info('这是日志信息');
로그 처리
로그 쓰기 예를 들어 이벤트 모니터링을 지원합니다.
Event::listen('think\event\LogWrite', function($event) { if('file' == $event->channel) { $event->log['info'][] = 'test info'; } });
클로저의 매개변수는 LogWrite 이벤트 클래스 객체 인스턴스입니다. 두 가지 속성을 얻을 수 있습니다.
로그 정보는 현재 로그 채널( 녹음이 허용됨) 모든 수준의 로깅 정보.
로그 정보 형식화
시스템은 로그 정보 형식화를 위한 두 가지 매개변수를 제공합니다. 첫 번째는 시간 표시 형식을 사용자 정의하기 위한 time_format이고 두 번째는 로그 출력 형식을 조정하기 위한 형식 매개변수입니다.
'channels' => [ 'file' => [ 'type' => 'file', 'json' =>true 'file_size' => 1024*1024*10, 'time_format' => 'Y-m-d H:i:s', 'format' => '[%s][%s]:%s', ], ],
format 매개변수의 첫 번째 %s는 로그 기록 시간입니다. (로그 시간의 형식은 time_format 매개변수에 의해 정의됩니다.) 두 번째 %s는 로그 수준 세 번째 %s는 로그 정보로, 순서는 지정할 수 없습니다. 조정될.
JSON 형식 로그
는 JSON 형식 기록 파일 로그를 지원하므로 일부 타사 로그 분석 도구에서 로그 분석을 더 편리하게 수행할 수 있습니다.
로그 구성 파일에
return [ 'default' => 'file', 'channels' => [ 'file' => [ 'type' => 'file', 'json' =>true 'file_size' => 1024*1024*10, ], ], ];
를 추가하면 JSON 형식 로깅이 활성화됩니다. CLI 명령줄 로깅도 유효합니다.
和之前版本的区别在于,新版的每个日志信息都是一条JSON数据(旧版本是每个请求一条JSON数据)。
关闭日志
你可以通过调用close方法动态关闭日志写入。
// 关闭全局日志写入 Log::close(); // 关闭某个通道日志写入 Log::close('file');
如果调用close方法动态关闭日志,会自动调用clear方法清空日志。
清空日志
一旦执行save方法后,内存中的日志信息就会被自动清空,如果需要提前清空日志可以使用:
// 清空所有日志 Log::clear(); //清空通道日志可以使用 Log::clear('file');
在清空日志方法之前,你可以使用getLog方法获取内存中的日志。
// 获取(默认通道)日志 $logs = Log::getLog(); // 获取指定通道日志 $logs = Log::getLog('file');
日志清空仅仅是清空内存中的日志。
自定义驱动
日志通道需要自定义日志驱动,该日志驱动需要实现think\contract\LogHandlerInterface接口。
interface LogHandlerInterface { /** * 日志写入接口 * @access public * @param array $log 日志信息 * @return bool */ public function save(array $log): bool; }
众多ThinkPHP教程,尽在PHP中文网,欢迎在线学习!
本文转自:https://blog.thinkphp.cn/1186947
위 내용은 ThinkPHP6.0 버전의 로그 변경 사항의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











win10의 로그는 사용자가 시스템 사용을 자세히 이해하는 데 도움이 됩니다. 많은 사용자가 자신의 관리 로그를 찾을 때 로그 6013을 접했을 것입니다. 그렇다면 이 코드는 무엇을 의미합니까? win10 로그 6013이란 무엇입니까? 1. 이것은 일반 로그입니다. 이 로그의 정보는 컴퓨터가 다시 시작되었음을 의미하지는 않지만 마지막 시작 이후 시스템이 실행된 시간을 나타냅니다. 이 로그는 매일 12시 정각에 한 번씩 나타납니다. 시스템이 얼마나 오랫동안 실행되었는지 확인하는 방법은 cmd에 systeminfo를 입력할 수 있습니다. 그 안에 한 줄이 있습니다.

문제 분석을 용이하게 하기 위해 엔지니어에게 피드백 사용 정보 및 기록을 제공하는 기능입니다(개발 중에 사용). 사용자 자신은 업로드 로그를 자주 생성하지 않으므로 사용자에게는 쓸모가 없습니다. 로깅 버퍼는 디스크에 기록될 리두 로그에 대한 변경 벡터의 단기 저장에 사용되는 작은 임시 영역입니다. 디스크에 대한 로그 버퍼 쓰기는 여러 트랜잭션의 변경 벡터 배치입니다. 그럼에도 불구하고 로그 버퍼의 변경 벡터는 거의 실시간으로 디스크에 기록되며, 세션에서 COMMIT 문을 발행하면 로그 버퍼 쓰기 작업이 실시간으로 수행됩니다.

win10의 로그는 사용자가 시스템 사용을 자세히 이해하는 데 도움이 됩니다. 많은 사용자가 자신의 관리 로그를 찾을 때 많은 오류 로그를 보았을 것입니다. 그렇다면 이를 해결하는 방법은 무엇입니까? win10 로그 이벤트 7034를 해결하는 방법: 1. "시작"을 클릭하여 "제어판"을 엽니다. 2. "관리 도구"를 찾습니다. 3. "서비스"를 클릭합니다. 4. HDZBCommServiceForV2.0을 찾아 "서비스 중지"를 마우스 오른쪽 버튼으로 클릭하고 변경합니다. "수동 시작"으로

인터넷과 웹 애플리케이션의 급속한 발전으로 인해 로그 관리는 점점 더 중요해지고 있습니다. 웹 애플리케이션을 개발할 때 문제를 어떻게 찾아내는지는 매우 중요한 문제입니다. 로깅 시스템은 이러한 작업을 달성하는 데 도움이 되는 매우 효과적인 도구입니다. ThinkPHP6은 애플리케이션 개발자가 애플리케이션에서 발생하는 이벤트를 더 잘 관리하고 추적하는 데 도움이 되는 강력한 로깅 시스템을 제공합니다. 이번 글에서는 ThinkPHP6에서 로깅 시스템을 사용하는 방법과 로깅 시스템을 활용하는 방법을 소개하겠습니다.

iPhone을 사용하면 건강 앱에 약을 추가하여 매일 복용하는 약, 비타민, 보충제를 추적하고 관리할 수 있습니다. 그러면 장치에서 알림을 받을 때 복용했거나 건너뛴 약을 기록할 수 있습니다. 약을 기록한 후에는 건강을 추적하는 데 도움이 되도록 약을 복용하거나 건너뛴 빈도를 확인할 수 있습니다. 이번 포스팅에서는 iPhone의 건강 앱에서 선택한 약물의 로그 기록을 보는 방법을 안내하겠습니다. 건강 앱에서 약물 기록 기록을 보는 방법에 대한 간단한 가이드: 건강 앱> 찾아보기> 약품> 약품> 약품 선택> 옵션&a로 이동하세요.

Linux 시스템에서는 다음 명령을 사용하여 로그 파일의 내용을 볼 수 있습니다. tail 명령: tail 명령은 로그 파일 끝에 내용을 표시하는 데 사용됩니다. 최신 로그 정보를 보기 위한 일반적인 명령어입니다. tail [옵션] [파일 이름] 일반적으로 사용되는 옵션은 다음과 같습니다. -n: 표시할 줄 수를 지정합니다. 기본값은 10줄입니다. -f: 파일 내용을 실시간으로 모니터링하고, 파일이 업데이트되면 자동으로 새 내용을 표시합니다. 예: tail-n20logfile.txt#logfile.txt 파일의 마지막 20줄 표시 tail-flogfile.txt#logfile.txt 파일의 업데이트된 내용을 실시간으로 모니터링 head 명령: head 명령은 시작 부분을 표시하는 데 사용됩니다. 로그 파일의

win10의 로그에는 풍부한 콘텐츠가 많이 있습니다. 많은 사용자가 자신의 관리 로그를 찾을 때 이벤트 ID455 표시 오류를 본 적이 있을 것입니다. win10 로그의 이벤트 ID455는 무엇입니까? 1. ID455는 정보 저장소가 로그 파일을 열 때 <file>에서 발생한 오류 <error>입니다.

Linux에서 로그를 보는 세 가지 명령은 다음과 같습니다. 1. 실시간으로 파일 내용 및 로그 파일의 변경 사항을 볼 수 있는 tail 명령 2. 동시에 여러 로그 파일을 모니터링할 수 있는 multitail 명령 화면을 어지럽히지 않고 로그 변경 사항을 빠르게 확인할 수 있습니다.
