エラーログが記録されているログファイルを、そのレベルによって分離することは可能ですか?私はlevel = fatal
を持っている。例えばSugarCRMエラーログ
は、私はすべて事前にsugarcrm_info.log
感謝するすべての情報のログを置く、sugarcrm_fatal.log
、level = info
にすべての致命的なログを入れます!
エラーログが記録されているログファイルを、そのレベルによって分離することは可能ですか?私はlevel = fatal
を持っている。例えばSugarCRMエラーログ
は、私はすべて事前にsugarcrm_info.log
感謝するすべての情報のログを置く、sugarcrm_fatal.log
、level = info
にすべての致命的なログを入れます!
私は自分でそれをやっていませんでした。私はリンクを参照するだけです。それはあなたを助けるかもしれません。
の作成カスタムロガー
カスタムロガー
カスタムロガーは、集中アプリケーション管理ツールにログエントリを書き込むために、または開発者ツールなどFirePHP
にメッセージを書き込むために使用することができます。
これを行うには、LoggerTemplate
インターフェイスを実装する新しいインスタンスクラスを作成します。以下のコードは、FirePHP
ロガーの作成方法の例です。
まず、./custom/include/SugarLogger/
にロガークラスを作成する必要があります。この例では、作成します。 /custom/include/SugarLogger/FirePHPLogger.php
。
<
?php
// change the path below to the path to your FirePHP install
require_once('/path/to/fb.php');
class FirePHPLogger implements LoggerTemplate
{
/** Constructor */
public function __construct()
{
if (
isset($GLOBALS['sugar_config']['logger']['default'])
&& $GLOBALS['sugar_config']['logger']['default'] == 'FirePHP'
)
{
LoggerManager::setLogger('default','FirePHPLogger');
}
}
/** see LoggerTemplate::log() */
public function log($level, $message)
{
// change to a string if there is just one entry
if (is_array($message) && count($message) == 1)
{
$message = array_shift($message);
}
switch ($level)
{
case 'debug':
FB::log($message);
break;
case 'info':
FB::info($message);
break;
case 'deprecated':
case 'warn':
FB::warn($message);
break;
case 'error':
case 'fatal':
case 'security':
FB::error($message);
break;
}
}
}
デフォルトで実装される必要がある唯一の方法は、バックエンドにログメッセージを書き込みlog()
方法です。このバックエンドがコンストラクタで使用できるログレベルを指定するには、LoggerManager::setLogger()
メソッドを呼び出して、このロガーに最初のパラメータで使用するレベルを指定します。 'default'を渡すと、すべてのロギングレベルのロガーになります。
次に、config_override.php
ファイルにデフォルトのロガーを 'FirePHP
'と指定します。
$sugar_config['logger']['default'] = 'FirePHP';
ありがとう、私はこれを試してみます。 –
これを試してみましたが、これはFirePHPを使用してデバッグしている場合にのみ発生します –
私はそれが可能だと思います。 –
面白いアイデア。あなたは同時にロギングを考えていますか?その場合、情報やデバッグレベルで生成されるエラーの量に注意してください。これは、アプリケーションのパフォーマンスに影響を与える可能性のある大量のディスク書き込みである可能性があります。 – Reisclef