問題タブ [zend-log]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
391 参照

model-view-controller - Zend_Session と Zend_Log _Db は両方とも、ページの読み込みごとに 2 回データベースに書き込みます

Web には同様の問題の例がたくさん散らばっていますが、この特定のバリエーションを修正する解決策はないようです。任意の提案をいただければ幸いです。

通常、この問題は、不正なリンクによってファビコンや css ファイルなどのリソースのリクエストがディスパッチャーに複数回ヒットし、複数のディスパッチ プロセスが発生し、データベースに複数の行が発生するために発生します。

この非常に単純なサンプル ページのすべてのリンクが、実際にリンク先のリソースに解決されることを確認しました。

セッション ハンドラは次のように設定されます。

db ロギングは次のように設定されます。

両方のオブジェクトが正しく設定されており、データベースの読み取りと書き込みが可能です。すべてが2回しか起こりません。テスト ログ メッセージをアプリケーションの任意の場所に配置すると、データベースに 2 回書き込まれます。index アクションを呼び出すたびに 3 つの変数をインクリメントすると (1 つはセッションに格納され、1 つは Zend_Registry オブジェクトを介して渡され、もう 1 つは indexAction にローカルに渡されます)、セッション変数のみが 2 ずつインクリメントされます。Apache アクセス ログは正しい量を示します。ページの読み込みから発生するリクエストの数であり、すべてのレスポンス コードが 200 または 304 (変更なし) の良好なレスポンス コードを持っています。

すべてのヘッドリンクを無効にしようとしました。レイアウトを完全に無効にしようとしました。すべてをディスパッチャにローカライズし、ディスパッチが実行される前に終了しました。

いずれの場合も、余分な書き込み/インクリメントが発生します。何かご意見は?助けてくれてありがとう。

0 投票する
1 に答える
348 参照

php - カスタム クラスで Zend_Log を使用する

MVC フレームワークなしで、Zend_Log およびその他の必要なクラスを使用しています。カスタム クラスに Zend のロギング機能 (および将来的には他のモジュール) を追加したいと考えています。

現在、Zend ロガーのラッパーを持っているので、おそらくグローバルにアクセスできます。

ログに記録したいクラスの各メソッドにこのコードを追加する必要がありますか? クラス内でログを作成すべきではありませんか? よりスマートな方法はありますか?

助けてくれてありがとう、DC

0 投票する
2 に答える
305 参照

php - エラー処理サイクルへのフック

PHPエラー、キャッチされない例外、およびユーザーがデータベーステーブルに記録したいその他のものを記録するための監視ソリューションを構築しています。商用の Zend Server の監視ソリューションに代わるものです。

Zend_Log を拡張し、前述のすべてのケースを処理できる Monitor クラスを作成しました。私の目的は、構成を 1 つの場所 (ブートストラップ) に減らすことです。現時点では、次のようにモニターを初期化しています。

registerErrorHandler() メソッドは、DB への PHP エラー ロギングを有効にします。logExceptions() メソッドは拡張機能であり、保護されたフラグを設定するだけです。

ErrorController errorAction に、次の行を追加します。

ただし、ErrorController にコードを追加することは避けたいと思いますが、プラグインを動的に登録したいと思います。これにより、ユーザーにとって既存のプロジェクトへの統合が容易になります。

質問: postDispatch フックを使用するコントローラー プラグインを登録して、同じ効果を得ることはできますか? errorAction をトリガーするイベントがわかりません。回路の複数の段階で複数のイベントがある場合、いくつかのフックを使用する必要がありますか?

0 投票する
1 に答える
889 参照

zend-framework - Zend_RegistryとZend_Cacheへのデータの保存

これまでBootstrap.php、application.ini構成をZend_Registryとロガーのインスタンスにロードするために使用してきました。これらをZend_Cache内に保存する方が、アプリケーションの存続期間を通じて変更されないままであり、アプリケーションを再デプロイするたびに、とにかく最初の実行時にキャッシュがクリアされるため、より良いソリューションになるかどうか疑問に思いました。これについてのあなたの評決は何ですか?

また、保護された変数にロガーと構成が格納されているコントローラーを作成することを提案した人もいます。そうすれば、すべてのアプリケーションコントローラーがそれを継承します。私はそれが現在のZend_Registryの解決策よりも優れた解決策であるとは思いませんが、私が正当化されるかどうかはわかりません。

0 投票する
1 に答える
628 参照

zend-framework - カスタム ヘルパーあり/なしで Zend_Log のインスタンスを Zend_Cache/Zend_Registry に格納する

Zend_Log (Zend_Log_Writer_Stream を使用) のインスタンスを Zend_Cache (できれば) または Zend_Registry (フォールバック) に格納しようとしていますが、カスタム ヘルパーを直接アクセスではなく抽象化レイヤーとして使用しています。

問題

  • Zend_Registry を直接使用する場合を除き、Zend_Log_Writer_Stream の _stream プロパティは毎回消えます。

以下のコードを、それが生成する出力とともに添付しました。

アプリケーションとは別のデータベースに書き込む別のライター Zend_Log_Writer_Database があるため、これらの リンクをたどっていないので、それを初期化する必要があります。とりあえずコメントアウトしました。

Bootstrap.php - クリップ

Helper_SCacheOrRegistry.php

出力:

ロガー、ローカル変数

カスタム ヘルパーを使用したレジストリからのロガー

カスタム ヘルパーを使用した apc キャッシュからのロガー

ロガー、Zend_Registry から直接。

ロガー、apc キャッシュ、ダイレクトから。

0 投票する
1 に答える
741 参照

php - Zend_Log_Writer_Firebug と一緒に使用すると、FirePHP でエクストラが表示されない

私は何年にもわたって (0.9 から) Zend Framework を使用して開発してきましたが、それ以来、この問題は私の神経を悩ませています。

FirePHP の助けを借りて、Zend Framework 1.11 アプリケーションから FireBug コンソールにメッセージを出力したいと考えています。デフォルトの application.ini ファイルを使用して Firebug を構成しました。

無効なアクションを呼び出すか、次のような例外を明示的にスローすることにより、IndexController などの FireBug でメッセージを表示できるようになりました。

これにより、デフォルトの ErrorController が例外を処理し、スタック トレースとリクエスト パラメータを表示します。

リクエストパラメータ

デフォルトの ErrorController は、すべてのメッセージを自動的に FireBug に記録します。

ファイアーバグの成功

ただし、ご覧のように、スタック トレースや要求パラメーターなどの追加情報は表示されませんが、メインページにアクセスしたときの FireBug のスクリーンショットに見られるように、FireBug は表示することができます。

詳細な Firebug ウィンドウ

ドキュメントに記載されているように、Zend_Log_Writer_Firebug は、defaultPriorityStyle がTRACE などに設定されているすべてのwriterParamsを無視します。

ここで私の質問: firePHPcoreを使用せずに Zend Framework 自体に付属のツールを使用して、(最後の図に示すように) 余分なデータも送信するように Zend Framework を構成する方法はありますか?

よろしくお願いいたします。

0 投票する
1 に答える
3380 参照

php - Zend Framework のエラーなどをファイルに記録する

プラグインを作成するかapplication.iniに追加して、エラー、アクセス試行などをファイルに記録する必要があります。エラーはデフォルトのままで最終ユーザーに表示されません

前もって感謝します。

0 投票する
2 に答える
4900 参照

zend-framework - application.iniに複数のライターがあるZend_Log

私の設定には次のようなロガーがあります:

しかし、私はそれをエラーログにのみ使用したいと思います。別のログについては、別のログファイルを使用したい。そのため、これらの行をapp.iniに追加しました

しかし、これは機能していません。異なる優先順位に異なるファイルを使用したいと思います。ただし、ロガーは最初のロガーをオーバーライドします。どのように ?

0 投票する
1 に答える
4525 参照

debugging - Zend Log - ログの優先度が悪い

ブートストラップのログ構成に registerErrorHandler() を追加しようとすると、次のエラーが発生します。

Bootstrap.php

出力 Zend_Debug::dump($log):

助けてくれてありがとう。

0 投票する
1 に答える
293 参照

zend-framework - Zend_DebugHTMLタグをZend_Logから除外する方法

Zend_Debug :: dumpを使用して、変数をZend_Logファイルにダンプします。出力をHTMLタグでラップするのをやめるにはどうすればよいですか?

ドキュメントには、「出力ストリームがWebプレゼンテーションとして検出された場合、var_dump()の出力は»htmlspecialchars()を使用してエスケープされ、(X)HTMLタグでラップされます」と記載されています。ログファイルがWebプレゼンテーションであると見なされるのはなぜですか?

dump関数のメソッドには、ブール値の$echoフラグがあります。これがFALSEの場合でも、ログファイルにHTMLマークアップが記録されます。

助けてくれてありがとう!