問題タブ [log4jdbc]
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.
java - Log4j java sqlロガーを印刷する方法
javaとsqlにlog4jを使いたいです。クラスで"logger.debug("log4j logger")"を使用せずに Java および SQL ログを出力したい。
以下は、使用されるクラスと log4j プロパティです。
以下はlog4jのプロパティです
お知らせ下さい。
どんな助けでも大歓迎です
ありがとう
hibernate - 休止状態のパラメータをログに記録する方法
JPAのプロジェクトがあります。私のログは次のようになります。
log4j 構成にorg.hibernate.typeの痕跡があります。それはいいことですが、このタイプの出力を書く方法はありますか?
私はグーグルでそれを検索していましたが、このタイプの解決策を見つけることができません。この出力は読みやすく、ログ ファイルも読みやすいように見えます。なぜこれにはhibenrateがないのですか?
私の構成はそのようなものです:
spring - spring依存性が注入されたデータソースを持つlog4jカスタムjdbcアペンダー
JDBC アペンダーを拡張してログ データをデータベースに保存することにより、カスタム アペンダーを追加しようとしています。しかし、春に注入されたデータソースからデータベース接続をオーバーライドする必要があります。log4j コンテキストが最初に読み込まれ、Spring コンテキストがまだ初期化されていないため、機能しません。Spring が注入された DataSource に対して Null Pointer Exception が発生しています。
春は全くの初心者です。可能であれば、例を教えてください。
私のlog4j構成
これは私のカスタムアペンダーがどのように見えるかです:
public class CustomJDBCAppender extends org.apache.log4j.jdbc.JDBCAppender {
protected java.sql.Connection getConnection() throws java.sql.SQLException
{
/* I need to get Connection From Spring configuration */
}
protected void closeConnection() throws java.sql.SQLException {
if (connection != null && !connection.isClosed())
connection.close();
}
}
`
java - 維持されている log4jdbc-log4j2 の代替手段はありますか?
log4jdbc -log4j2ライブラリはサポートされていないようです。最後のリリースは 2013 年でした。ただし、ライブラリにバグがあり、代替 (またはバグ修正) が必要です。
いくつかの代替案をグーグルで検索しましたが、見つかりませんでした。そのライブラリの代替手段を知っていますか?
java - Liberty Profile を使用した log4jdbc-log4j2 の構成
Liberty Profile サーバーにローカルにデプロイされた Web アプリケーションがあり、既に log4j2 で動作しています。私の最終的な目標は、DB2 データベースに対して実行される直前に、すべての PreparedStatements をクエリ文字列に含まれるパラメーター値とともにログに記録することです。
https://code.google.com/p/log4jdbc-log4j2の指示に従って、log4jdbc-log4j2 をセットアップしました。Maven で依存関係ファイルをプルダウンできました。
しかし、私はしばらくの間、ステップ 3.1 と 3.2 で立ち往生しており、これまでのところ、stackoverflow や教育ブログで前進するのに役立ったものは何もないので、自分自身の質問をする時が来たと思いました.
手順 3.1 (「JDBC URL を変更する」) および 3.2 (「使用するドライバーを変更する」) に記載されている変更をどのファイルでどのように行うべきか、誰か教えてください。質問への回答を得るために、さらに明確にすることができることがあればお知らせください。ご提供いただけるご支援やご指導をよろしくお願いいたします。
アップデート
aguibert が提案した server.xml に変更を加え、db2 ドライバー ディレクトリの依存関係からすべての log4j*.jar ファイルを含めた後、私の server.xml エントリは次のようになります。
ここで、最初のクエリが作成されると、net.sf.log4jdbc.sql.jdbcapi.DataSourceSpy で InstantiationException が発生します。
見逃しているものがあるように思われる場合は、お知らせください。スタック トレースでエラーを検索しても、解決策は見つかりませんでした。
最終ステータス
aguibert が指摘したように、ここでは別の方向性が最善のようです。Logging PreparedStatements in Javaのコメントに基づいて、ここで説明されているように LoggableStatement ラッパーを実装することにしました: ibm.com/developerworks/java/library/j-loggable
java - 出力をファイルにリダイレクトするように p6spy を構成する方法
JDBC 呼び出しをインターセプトして Eclipse のコンソールに出力するようにP6Spyを正常に構成することができました。ただし、ファイルにキャプチャされたバインディング パラメーターを含むこれらのログが必要です。誰かがその方法を教えてください。これが私の現在の構成です:
log4j.properties
スパイのプロパティ
Spring は以下を使用してデータソースを構築しています。
P6Spy バージョン 1.3 を使用しています。
私のユースケースでは log4jdbc が SQL インターセプトを行うための推奨される方法であると読みましたが、もう少し設定が必要なようです。つまり、docに従って jdbc URL を変更する必要があります。いずれかのフレームワークでパラメータ キャプチャを実行し、ファイルにリダイレクトする方法についての経験があれば、歓迎します。
前もって感謝します。
log4j - log4jでは、子ロガーのレベルをルートロガーの優先度値より高くすることはできますか?
子ロガーのレベルをルート ロガーの優先度値より高くすることはできますか?
私の構成は以下のようなものです。現在、パッケージnet.sf.log4jdbc
はまだinfo
レベル ログを出力します。net.sf.log4jdbc
ただし、重要でないログの行を表示するつもりはありませんでした。
より高いログ レベルが設定された一部のパッケージを除いて、デバッグまたはより高いレベルのすべてのログを出力するにはどうすればよいですか?