問題タブ [log4javascript]
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.
javascript - ロギングメカニズムを効率的に使用するにはどうすればよいですか?
log4javascriptを使用して、JavaScriptコードの問題をログに記録して追跡しています。私は以前に同様のロギングエイドを見たことがありますが、これらのログレベルのそれぞれをより有用で生産的にするためにどのように使用すべきかを理解するのに苦労しています。
ほとんどの場合、デバッグ、情報、またはトレースのそれぞれがどれほど生産的であるかを実際に意識することなく、それらをログに記録することになります。コードがどんどん大きくなるにつれて、それは難しくなり、ログは助けよりも厄介だと感じています。
ロギングメカニズムをうまく使用できるように、誰かが私にいくつかのガイドライン/ヘルプを教えてもらえますか?
log4javascriptでサポートされているさまざまなログレベルは次のとおりです。
log4javascript.Level.ALL
log4javascript.Level.TRACE
log4javascript.Level.DEBUG
log4javascript.Level.INFO
log4javascript.Level.WARN
log4javascript.Level.ERROR
log4javascript.Level.FATAL
javascript - Struts Web アプリケーションに log4javascript を構成する
log4j を使用して JavaScript 情報とエラー メッセージをログ ファイルに書き込む方法を教えてください。
以下のコードを見つけてください
この情報メッセージは、ログ ファイルには書き込まれません。
提案してください
javascript - log4javascriptロギングからJSON BLOBを逆シリアル化する.ASMXの奇妙さ?
json レイアウトでajaxアペンダーを使用して、 log4javascriptによって生成された JSON blob を逆シリアル化しようとすると、「無効な JSON プリミティブ」が表示されます。
log4javascript によって送信された JSON を受信する Web サービス メソッドを作成しましたが、JSON は無効であると宣言され、.NET がそれを逆シリアル化しようとすると例外がスローされ、その理由がわかりません。
JS セットアップは次のようになります。
「ログ」メソッドは次のようになります。
上記のメソッドの s の値は、例外がスローされる直前に次のようになります: :
それは、デシリアライザーにフィードするもっともらしい文字列のように見えますが、明らかにそうではありません! 私(またはlog4javascript)が間違っていることを知っている人はいますか?
OK、自分のコードが間違っていることに気付きましたが、それを修正しても実際には問題は解決しません。
JSON はオブジェクトの配列を表すため、逆シリアル化の結果を受け取るオブジェクトには辞書のリストが必要です。そこで、デシリアライゼーション コードを次のように修正しました。
したがって、これはより良いと思いますが、それでも同じ例外がスローされます。
価値があるのは、メソッド内に次のコード行があり、正常に実行されるため、何らかの方法で調整する必要がある log4javascript によって生成された JSON であるかのようにますます見えます。
どんな提案でも大歓迎です。
JSON の 'message' 属性自体が配列であることに気付いた後、(ある種の) さらに進歩しました。一時的に 'message' をスケーラーになるように変更しました。このように、JSON は次のようになります。
...そしてこれは実行できるので、JSONに配列が埋め込まれていることが問題であるように思われるため、JSONを正常に逆シリアル化するには、別のターゲットオブジェクトを指定する必要があります。
最終編集!Tim が JSON の欠陥を見つけてくれたおかげで、私は今、動作するバージョンを手に入れることができました。私は、JSON が正しいことをしているふりをして、メッセージ ペイロードをかなり洗練されていない方法でダンプしましたが、将来誰かに役立つかもしれません。
log4javascript - log4javascript - プログラムでメッセージの履歴を取得しますか?
アプリで JavaScript ロギング フレームワークを使用することを検討しています。
私は log4javascript ( http://log4javascript.org/ ) の外観がとても気に入っていますが、それが満たされているかどうかわからない要件が 1 つあります。
ログに記録されたすべてのメッセージをフレームワークに要求できるようにする必要があります。
おそらく、目に見えない InPageAppender ( http://log4javascript.org/docs/manual.html#appenders ) を使用して DOM 要素にログを記録し、その DOM 要素からメッセージをかき出すことができますが、それはかなり重いようです。
おそらく、独自の「InMemoryAppender」を作成する必要がありますか?
javascript - log4javascript web.config
ASP.NET MVCサイトでlog4netを使用しており、JavaScriptで同様のパッケージ(log4javascriptなど)を使用してログを記録したいと考えています。特に例外のログ記録。ただし、ユーザーが問題が発生したと報告したが、すぐに再現できない場合は、ログ記録をデバッグします。
log4javascriptとASP.NETMVCの統合について次の質問があります。
1)log4javascriptのAjaxAppenderを使用してサーバーにログメッセージを送信したい。ログメッセージを受信してサーバー側でログに記録するWebサービスを実装するパッケージはありますか?
2)log4netの場合と同様に、サーバー側のweb.configでクライアント側のロガーのレベルを設定できるようにしたい。このようにして、JavaScriptコードをハッキングすることなく、必要に応じてデバッグログをオンに切り替えることができます(すべてのJSは、本番環境で結合および縮小されます)。
ページの読み込みごとに、サーバーはweb.configを読み取り、クライアント側のロガーを作成するJavaScriptを少し生成できると思います。これを行うパッケージはありますか?
log4javascript - log4javascript のフォームデータの代わりにペイロードを使用するにはどうすればよいですか
私は自分の Web サービスの制限に縛られています: json-payload が必要です!
だから、次のようなことをする
data
フォーム コレクション (および)に 2 つのキーが作成されるため、機能しませんlayout
。
組み込みオプションを使用して、json-payload を取得するにはどうすればよいですか?
javascript - log4javascript にカスタム ログ レベルを追加する
「log4javascript」にカスタムレベルを追加しました。以下のコードを使用して、
たとえば、レベル「CUSTLEVEL」を追加し、その levelValue は 45000 (WARN と ERROR の間) です。ここで、デフォルトのログ レベルを DEBUG(20000) に設定しました。
「BrowserConsoleAppender」を使用すると、カスタム ログのすべてのログが取得されます。
しかし、「PopUpAppender」を使用すると、カスタム ログ レベルのログが取得されません。
javascript - log4javascript-トレースメッセージは表示されません
log4javascriptバージョン1.4.3を使用しています。私のアプリでは、トレースを除く
すべてのログレベルで正常に動作します。物事を単純化し、問題が私のアプリ内にないことを確認するために、作成者のサンプルコードを例として使用して例を作成し、setThreshold(log4javascript.TRACE)を追加してから、トレースエントリを生成する行を追加しました(彼の例から、popUpAppenderだけを残してajaxAppenderにのみ関連する行。
コードを実行すると、エラーメッセージとデバッグメッセージがlog4javascriptポップアップウィンドウに表示されますが、トレースメッセージは表示されません。
明らかに、トレースレベルの使用またはトレースメッセージの構成を正しく理解していません。誰かが私のやり方の誤りを指摘することができれば、私は私のアプリのログを修正することができます。
以下で失敗するサンプルコード。
javascript - Log4Javascript AjaxAppender リクエスト ヘッダー
log4javascript の ajaxAppender を使用して、アプリ内のサーバーにメッセージのバッチを送信しようとしています。
これは、ロギングを初期化する方法です。
サーバーでスプリングを使用し、その @RequestBody タグを使用してjsonオブジェクトを読み取ります。
これは私の他のサーバー要求では機能しますが、ajaxAppender を使用すると、常にこのエラーで失敗します。SEVERE: サーブレット スプリングの Servlet.service() が例外 java.lang.IllegalArgumentException をスローしました: 無効なトークン文字 ',' がトークン "x-www-form-urlencoded, application/json" に含まれています
唯一の違いは、リクエスト ヘッダーを調べると、ロギング用のヘッダーのコンテンツ タイプが次のようになっていることです: Content-Type: application/x-www-form-urlencoded, application/json;charset=UTF-8
私の他のjsonリクエストには、2番目の文字列 'application/json;charset=UTF-8' しかありません
最初のコンテンツ タイプなしで ajax を送信することは可能ですか? 他に何を試すべきかわからない。
ありがとう
javascript - PopUpAppenderの問題-「未定義」のようです
プロジェクト内にJSライブラリを含めようとしてlog4javascript
いるため、簡単な例に従って、を使用して単純な名前付きlogger
オブジェクトを構成しPopUpAppender
ました。同じメッセージが何度も表示されます。
PopUpAppender
これは、関数内の次の行を指します。
そこで、プレーンサイトだけを使用して単純なHTML
プロジェクトを作成し、いずれかのファイルで動作が異なるかどうかをテストするためにインクルードしました。しかし、説明した方法でオブジェクトを初期化しようとすると、同じエラーが表示されます。index.html
html
log4javascript.js
log4javascript_uncompressed.js
logger
一歩下がってlogger
、次のような最も簡単な方法でを初期化しようとすると、次のようになります。
すべてが正常に機能し、ロガー出力がポップアップして最初のログメッセージを書き出すのがわかります。
logger
オブジェクトを初期化しようとして、何か間違ったことをしていますか?log4javascript.getDefaultLogger()
基本的にメソッドと同じことをしているので、つまずきが見えません。
これに関するヒントはありますか?
編集:
logger
この方法で初期化します
編集2:
index.html
そこで、ページと、 *。zipパッケージjs
から抽出されたフォルダーであるフォルダーのみを使用して新しいプレーンHTMLプロジェクトを開始しました。log4javascript
これは私のHTMLページ全体です。
それでも同じエラーが発生し続けます...?