ホームページ  >  記事  >  PHPフレームワーク  >  thinkphp ログ構成チュートリアル

thinkphp ログ構成チュートリアル

L
L転載
2020-06-01 17:15:277414ブラウズ

thinkphp ログ構成チュートリアル

#thinkphplogging

ログの処理はシステムによって自動的に実行され、ログがオンになっている場合は、すべてのログ情報が記録されます。許可されるログレベルについては。

パフォーマンス上の理由から、デバッグ モードがオンになっているときは SQL ログ レベルが有効である必要があります。有効でない場合は記録されません。システム ログは、コアの Think\Log クラスとそのドライバーによって完了され、さまざまなレベルのログ情報を記録する複数の方法が提供されます。

デフォルトでは、ログはデバッグ モードでのみ記録されます。デプロイメント モードでログを有効にするには、設定で

LOG_RECORD パラメータを有効にする必要があり、記録する必要があるログは次のとおりです。アプリケーション構成ファイルで構成されます。レベル、例:

  1. 'LOG_RECORD'<span class="str"> <span class="pln">=><span class="pun"> <span class="pln">true<span class="kwd">、 <span class="pun"> <span class="pln">// ログをオンにする<span class="com"></span></span></span></span></span></span></span></span>
  2. #'LOG_LEVEL ' <span class="str">=><span class="pln">'EMERG,ALERT,CRIT,ERR'<span class="pun">,<span class="str"> <span class="pun">//EMERG ALERT CRIT ERR エラーのみを記録します <span class="pln"><span class="com"></span> </span></span> </span></span></span></span>
  3. ログ レベル

ThinkPHP は、次のようなレベルに従ってシステム ログを分類します。

    EMERG
  • システムクラッシュと使用不能を引き起こす重大なエラー
  • ALERT
  • アラートエラー、すぐに修正する必要があるエラー
  • CRIT
  • クリティカル値エラー、クリティカル値を超えるエラー
  • ERR
  • 一般エラー#WARN
  • 警告エラー、警告が必要なエラー
  • NOTICE
  • 通知、プログラムは実行できますが、完全ではありませんエラー
  • INFO
  • 情報、プログラム出力情報
  • DEBUG
  • デバッグ、デバッグ情報に使用されます
  • SQL
  • SQL ステートメント、このレベルはデバッグ モードがオンになっている場合にのみ有効です
  • 記録方法
Log デフォルトの記録モードはファイル モードですが、ドライバーを通じてさらに多くの記録モードをサポートするように拡張できます。

記録方法は、LOG_TYPE パラメータによって構成されます。例:

    'LOG_TYPE'
  1. =><span class="str"> <span class="pln">'ファイル '<span class="pun">,<span class="pln"> <span class="str">//デフォルトのログ タイプはファイル モードです<span class="pun"><span class="pln"><span class="com"></span></span></span></span></span></span></span></span>##ファイル モード レコード。対応するドライバー ファイルは、システムの
  2. Library/Think/Log/Driver/File.class.php
にあります。

手動記録

通常、システムのログは自動で行われるため、手動記録は必要ありません。ただし、場合によっては、ログ情報を手動で記録する必要もあります。Log クラスには 3 つのメソッドがあります。ログ記録用。

#メソッド

説明ログ情報をメモリに記録する
##Log::r​​ecord()
Log::save() メモリに保存されているログ情報を書き込みます(指定された記録方法を使用)
Log::write() ログ メッセージをリアルタイムで書き込む

リクエストの完了後、システムは自動的に Log::save メソッドを呼び出すため、通常は Log::r​​ecord を呼び出してログ情報を記録するだけで済みます。

record メソッドの使用法は次のとおりです:

  1. ##\Think\Log<span class="pln">::<span class="pun">record<span class="pln">(<span class="pun">'テスト ログ情報 '<span class="str">);<span class="pun"></span></span></span></span></span></span>
デフォルトのログ レベルは ERR ですが、指定することもできます。ログ レベル :

  1. \Think\Log<span class="pln">::<span class="pun">record<span class="pln">(<span class="pun">'ログ情報をテストします。これは警告レベルです' <span class="str">、<span class="pun">'警告'<span class="str">);<span class="pun"></span></span></span></span></span></span></span></span>
  2. ## Record メソッドのみ 現在の設定で許可されているログ レベルに関する情報が記録されます。アプリケーション設定が次の場合:

  1. 'LOG_LEVEL' <span class="str">=> <span class="pln">'EMERG, ALERT,CRIT,ERR'<span class="pun">,<span class="str"> <span class="pun">//EMERG ALERT CRIT ERR エラーのみを記録します<span class="pln"><span class="com"></span></span></span></span> </span></span></span># その後、上記の記録方法で記録されたログ情報は直接フィルタリングされるか、強制的に記録することができます:

    \ Think\Log
  1. ::record<span class="pln">(<span class="pun">'ログ情報をテストします。これは警告レベルです'<span class="pln">,<span class="pun">'WARN'<span class="str">,<span class="pun">true<span class="str">);<span class="pun"><span class="kwd"><span class="pun"></span></span></span></span></span></span></span></span></span></span>## を使用して記録されたログ情報。 Record メソッドはリアルタイムでは保存されません。リアルタイムで記録する必要がある場合は、write メソッドを使用できます (例:

##\Think\Log

:) :
    write
  1. ('テスト ログ情報。これは警告レベルであり、リアルタイムで書き込まれます '<span class="pln">,<span class="pun">'WARN'<span class="pln">);<span class="pun"><span class="str"><span class="pun"><span class="str"><span class="pun"></span></span></span></span></span></span>##書き込みメソッドは、ログを書き込むときに構成された許可されたログ レベルの影響を受けず、書き込み可能です。あらゆるレベルのログ情報をリアルタイムで取得できます。 </span></span>推奨チュートリアル: "TP5
  2. "

以上がthinkphp ログ構成チュートリアルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcnblogs.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。